Outline - JaCaMo Project

Transcription

Outline - JaCaMo Project
Introduction MAOP JaCaMo Experiences Conclusion
In collaboration with
Multi-Agent Oriented Programming
– Introduction –
The JaCaMo Platform
O. Boissier, R.H. Bordini, J.F. Hübner, A. Ricci
May 2014
J.S. Sichman, Universidade de São Paulo - LTI-PCS, São Paulo, Brazil
(jaime.sichman@poli.usp.br)
G. Picard, ENS Mines St-Etienne, France (gauthier.picard@emse.fr)
M. Hannoun, B. Gâteau, G. Danoy, R. Kitio, C. Persson, R. Yaich,
ENS Mines St-Etienne, France, L. Coutinho Brazil
M. Piunti, A. Santi, Università degli studi di Bologna - DEIS, Bologna,
Italy (a.ricci@unibo.it)
A. Ciortea, A. Sorici, Politehnica University of Bucharest, Romania
May 2014
MAOP
2 / 64
Introduction MAOP JaCaMo Experiences Conclusion
MAS Concepts
Outline
AGENTS
BELIEFS
1
GOALS
PLANS
Introduction
PERCEPTIONS
INTERNAL
EVENTS
ORGANISATIONS
GROUPS
MISSIONS
ACTIONS
ROLES
SANCTIONS
REWARDS
DEONTIC RELATIONS
NORMS
2
3
Multi-Agent Oriented Programming (MAOP)
SPEECH
ACTS
TOOLS
COMMUNICATION
LANGUAGES
RESOURCES
TOPOLOGY
INTERACTION
PROCOLS
MAOP Perspective: the JaCaMo Platform
SERVICES
4
MAOP Experiences
5
Conclusions and Perspectives
OBJECTS
ENVIRONMENTS
INTERACTIONS
Challenges
Numerous concepts, models and technologies!!!
May 2014
MAOP
4 / 64
Introduction MAOP JaCaMo Experiences Conclusion
Introduction MAOP JaCaMo Experiences Conclusion
MAS Dynamics & Coordinations
AGENTS
BELIEFS
GOALS
PLANS
PERCEPTIONS
INTERNAL
EVENTS
MISSIONS
ACTIONS
Coordination may be
programmed into one or several
of these dimensions
[Boissier, 2003]
ORGANISATIONS
GROUPS
ROLES
SANCTIONS
REWARDS
DEONTIC RELATIONS
NORMS
SPEECH
ACTS
COMMUNICATION
LANGUAGES
TOOLS
RESOURCES
SERVICES
INTERACTIONS
AGENTS
BELIEFS
GOALS
PLANS
PERCEPTIONS
OBJECTS
ENVIRONMENTS
INTERNAL
EVENTS
GROUPS
MISSIONS
ACTIONS
Coordination may be
programmed into one or several
of these dimensions
[Boissier, 2003]
ORGANISATIONS
ROLES
SANCTIONS
REWARDS
DEONTIC RELATIONS
NORMS
Agent / Environment / Interaction
/ Organisation Centred
coordination depends of the
purpose of the domain/problem
TOPOLOGY
INTERACTION
PROCOLS
MAS Dynamics & Coordinations
SPEECH
ACTS
COMMUNICATION
LANGUAGES
Agent / Environment / Interaction
/ Organisation Centred
coordination depends of the
purpose of the domain/problem
TOOLS
RESOURCES
TOPOLOGY
INTERACTION
PROCOLS
SERVICES
INTERACTIONS
OBJECTS
ENVIRONMENTS
Challenges
Numerous concepts, models and technologies!!!
Rich scope of possible dynamics and coordinations!!!
May 2014
MAOP
5 / 64
May 2014
Introduction MAOP JaCaMo Experiences Conclusion
MAS Programming
OOP
AGENTS
BELIEFS
GOALS
PLANS
PERCEPTIONS
INTERNAL
EVENTS
ACTIONS
ORGANISATIONS
COMMUNICATION
LANGUAGES
INTERACTION
PROCOLS
GROUPS
ROLES
SANCTIONS
MISSIONS
REWARDS
DEONTIC RELATIONS
INTERACTIONS
TOOLS
TOPOLOGY
OBJECTS
ENVIRONMENTS
EOP
IOP
OOP
AOP
AGENTS
BELIEFS
GOALS
INTERNAL
EVENTS
PLANS
PERCEPTIONS
ORGANISATIONS
GROUPS
MISSIONS
ACTIONS
SPEECH
ACTS
Organisation Oriented
Programming
[Pynadath et al., 1999]
COMMUNICATION
LANGUAGES
INTERACTION
PROCOLS
DEONTIC RELATIONS
Interaction Oriented
Programming [Huhns, 2001]
INTERACTIONS
TOOLS
RESOURCES
TOPOLOGY
SERVICES
OBJECTS
ENVIRONMENTS
EOP
IOP
Agent Oriented Programming
[Shoham, 1993]
Environment Oriented
Programming [Ricci et al., 2011]
ROLES
SANCTIONS
REWARDS
NORMS
Interaction Oriented
Programming [Huhns, 2001]
RESOURCES
SERVICES
Agent Oriented Programming
[Shoham, 1993]
Environment Oriented
Programming [Ricci et al., 2011]
NORMS
SPEECH
ACTS
5 / 64
Introduction MAOP JaCaMo Experiences Conclusion
MAS Programming
AOP
MAOP
Organisation Oriented
Programming
[Pynadath et al., 1999]
Challenges
Numerous concepts, models and technologies!!!
Multi-Agent Oriented Programming Platform have been/are proposed:
Rich set of possible dynamics and coordinations!!!
Volcano platform [Ricordel and Demazeau, 2002], MASK
platform [Occello et al., 2004], MASQ [Stratulat et al., 2009], extending
AGRE and AGREEN, Situated E-Institutions [Campos et al., 2009], ...
May 2014
MAOP
Different programming approaches!!!
; From an AI/Agent Centred to a Multi-Agent/A,E,I,O Centred approach
6 / 64
May 2014
MAOP
6 / 64
Introduction MAOP JaCaMo Experiences Conclusion
Seamless Integration of A & E & I & O
Outline
Environment
Dimension
Introduction
Workspace
Multi-Agent Oriented Programming (MAOP)
MAOP Meta-Model
Focus on Agent meta-model
Focus on Environment meta-model
Focus on Organisation meta-model
Observable Property
create
join
quit
Observable Event
Organisation
create
delete
adopt
leave
commit
leave
MAOP Experiences
Goal
create
delete
achieve
Norm
Role
Interaction
Dimension
send
receive
Social Scheme
Link
MAOP Perspective: the JaCaMo Platform
Belief
focus,
unfocus
focus,
unfocus
Goal
Content
Message
SpeechAct
Mission
Cardinalities are not represented
primitive operations
concept mapping
composition
association
5
Plan
Trigger event
Organisation
Dimension
4
Agent
generate
Group
3
Internal Action
Action
use
Operation
update
External Action
create
dispose
link, unlink
Artifact
Environment
2
Agent
Dimension
consult
Manual
has
1
MAOP Meta-Model A E O
Conclusions and Perspectives
dimension border
dependency
JaCaMo Meta-model [Boissier et al., 2011], based on Cartago [Ricci et al., 2009b],
Jason [Bordini et al., 2007], M OISE [Hübner et al., 2009a] meta-models
May 2014
Introduction MAOP JaCaMo Experiences Conclusion
MAOP Meta-Model A E O
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
Agent meta-model
8 / 64
MAOP Meta-Model A E O
Agent example I
External Action
Example (Giacomo Agent Code)
Internal Action
!have_a_house. // Initial Goal
/* Plan */
+!have_a_house <- !contract;
!execute.
Action
Agent
Plan
Agent
Dimension
Example (companyX Agent Code)
my_price(300). // initial belief
/* plans for contracting phase */
// there is a new value for current bid
+currentBid(V)
:
not i_am_winning(Art) & // I am not the current winner
my_price(P) & P < V // I can offer a better bid
<- .bid( P ). // place my bid offering a cheaper service
Trigger event
Belief
Goal
agent's actions
concept mapping
composition
association
dependency
dimension border
Cardinalities are not represented
Based on Jason meta-models [Bordini et al., 2007]
May 2014
MAOP
9 / 64
May 2014
MAOP
10 / 64
Introduction MAOP JaCaMo Experiences Conclusion
MAOP Meta-Model A E O
Introduction MAOP JaCaMo Experiences Conclusion
Agent & Agent Interaction meta-model
Agent
Dimension
External Action
Agent’s dynamics
Beliefs
Interaction
Dimension
Internal Action
1
Percepts
perceive
Percepts
Events
2
BUF
SpeechAct
External
Events
4
Beliefs to
Add and
Delete
SocAcc
Plan
Trigger event
Messages
3
checkMail
SE
BRF
External
Events
Action
Agent
Agent
Belief
Base
5
Message
Content
MAOP Meta-Model A E O
Beliefs
Events
7
Internal
Events
Check
Context
Plan
Library
Selected
Event
Relevant
Plans
6
Unify
Event
Plans
Applicable
Plans
Messages
Beliefs
8
SM
SO
Belief
Selected
Intention
9
Intended
Means
SI
10
Execute
Intention
Action
Suspended Intentions
Push
New Plan
Intentions
(Actions and Msgs)
...
May 2014
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
11 / 64
MAOP Meta-Model A E O
May 2014
Introduction MAOP JaCaMo Experiences Conclusion
Environment meta-model
New
Intention
New
New
...
Actions
.send
Intentions
Goal
act
sendMsg
Messages
Updated
Intention
MAOP
12 / 64
MAOP Meta-Model A E O
Auction Artifact
Example
public class AuctionArt extends Artifact {
@OPERATION void init(String taskDs, int maxValue) {
defineObsProperty("task”,taskDs); // task description
defineObsProperty("maxValue”, maxValue); // max. value
// current best bid (lower service price)
defineObsProperty("currentBid”, maxValue);
// current winning agent ID
defineObsProperty("currentWinner”, "no_winner");
}
Manual
has
Workspace
Environment
Artifact
Operation
update
Observable Property
// places a new bid for doing the service for price p
// (used by company agents to bid in a given auction)
@OPERATION void bid(double bidValue) {
ObsProperty opCurrentValue = getObsProperty("currentBid");
ObsProperty opCurrentWinner = getObsProperty("currentWinner");
if (bidValue < opCurrentValue.intValue()) {
opCurrentValue.updateValue(bidValue);
opCurrentWinner.updateValue(getOpUserName());
}
} }
generate
Observable Event
Based on A&A meta-model [Omicini et al., 2008]
May 2014
MAOP
13 / 64
May 2014
MAOP
14 / 64
Introduction MAOP JaCaMo Experiences Conclusion
MAOP Meta-Model A E O
Introduction MAOP JaCaMo Experiences Conclusion
A & E Interaction meta-model
MAOP Meta-Model A E O
Giacomo Agent Code I
Example
Environment
Dimension
Manual
has
Workspace
Artifact
External Action
create
dispose
link, unlink
Agent
update
generate
Observable Property
create
join
quit
focus,
unfocus
Internal Action
Action
use
Operation
Environment
Agent
Dimension
consult
!have_a_house. // Initial Goal
/* Plans */
+!have_a_house <- !contract; !execute.
+!contract <- !create_auction_artifacts; !wait_for_bids.
+!create_auction_artifacts
<- !create_auction_artifact("SitePreparation", 2000);
!create_auction_artifact("Floors", 1000);
!create_auction_artifact("Walls", 1000);
!create_auction_artifact("Roof", 2000);
!create_auction_artifact("WindowsDoors", 2500);
!create_auction_artifact("Plumbing", 500);
!create_auction_artifact("ElectricalSystem", 500);
!create_auction_artifact("Painting", 1200).
Plan
Trigger event
Observable Event
Belief
focus,
unfocus
May 2014
Introduction MAOP JaCaMo Experiences Conclusion
Goal
MAOP
15 / 64
MAOP Meta-Model A E O
Introduction MAOP JaCaMo Experiences Conclusion
Giacomo Agent Code II
MAOP
16 / 64
MAOP Meta-Model A E O
companyA Agent Code I
Example
+!create_auction_artifact(Task,MaxPrice)
<- .concat("auction_for_",Task,ArtName);
makeArtifact(ArtName, "tools.AuctionArt", [Task, MaxPrice],
ArtId);
focus(ArtId).
-!create_auction_artifact(Task,MaxPrice)[error_code(Code)]
<- .print("Error creating artifact ", Code).
+!wait_for_bids
<- println("Waiting the bids for 5 seconds...");
.wait(5000); // use intern deadline of 5 sec to close auctions
!show_winners.
+!show_winners
<- for ( currentWinner(Ag)[artifact_id(ArtId)] ) {
?currentBid(Price)[artifact_id(ArtId)]; // check current bid
?task(Task)[artifact_id(ArtId)]; // and task it is for
println("Winner of task ", Task," is ", Ag, " for ", Price)
}.
May 2014
May 2014
MAOP
17 / 64
Example
my_price(1500). // initial belief
!discover_art("auction_for_Plumbing"). // initial goal
i_am_winning(Art) :- .my_name(Me) &
currentWinner(Me)[artifact_id(Art)].
/* plans for contracting phase */
+!discover_art(ToolName)
<- joinWorkspace("HouseBuildingWsp");
lookupArtifact(ToolName,ToolId);
focus(ToolId).
// there is a new value for current bid
+currentBid(V)[artifact_id(Art)]
:
not i_am_winning(Art) & // I am not the current winner
my_price(P) & P < V // I can offer a better bid
<- bid(math.max(V-150, P))[artifact_id(Art)].
/* plans for execution phase */
...
May 2014
MAOP
18 / 64
Introduction MAOP JaCaMo Experiences Conclusion
MAOP Meta-Model A E O
Introduction MAOP JaCaMo Experiences Conclusion
Environment’s dynamics
MAOP Meta-Model A E O
Outcomes of A & E Integration
Artifact life-cycle
Creation/Deletion
Agents with dynamic action repertoire, extended/reshaped by
agents themselves
Uniform implementation of any mechanisms (e.g. coordination
mechanism) in terms of actions/percepts
Activation/Execution/Fail or Success/Deactivation of an
Operation
Linking / Unlinking
No need to extend agents with special purpose primitives
Workspace life-cycle
Exploiting a new type of agent modularity, based on
externalization [Ricci et al., 2009a]
Creation/Deletion of a workspace
Creation/Deletion of Artifacts
Creation/Deletion & Entry/Exit of Agents
May 2014
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
19 / 64
MAOP Meta-Model A E O
May 2014
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
Organisation meta-model
20 / 64
MAOP Meta-Model A E O
Example: Organisation Structural Specification
Organisation
Group
Social Scheme
Norm
Link
Role
Goal
Mission
Simplified M OISE meta-model [Hübner et al., 2009a]
Graphical representation of M OISE Struct. Spec.
May 2014
MAOP
21 / 64
May 2014
MAOP
22 / 64
Introduction MAOP JaCaMo Experiences Conclusion
MAOP Meta-Model A E O
Introduction MAOP JaCaMo Experiences Conclusion
Example: Organisation Functional Specification
MAOP Meta-Model A E O
Example: Organisation Normative Specification
norm
modality
n1
n2
n3
n4
n5
n6
n7
n8
n9
Obl
Obl
Obl
Obl
Obl
Obl
Obl
Obl
Obl
role
mission / goals
house_owner
site_prep_contractor
bricklayer
roofer
window_fitter
door_fitter
plumber
electrician
painter
house built
site prepared
floors laid, walls built
roof built
windows fitted
doors fitted
plumbing installed
electrical system installed
interior painted, exterior painted
Simplified representation of M OISE Norm. Spec.
Graphical representation of M OISE Func. Spec.
May 2014
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
23 / 64
MAOP Meta-Model A E O
Artifact
update
External Action
Mapping of the organisational state onto artifacts computational
state
Encapsulation of organisational functionalities by suitably designed
artifacts providing organisational operations
Agent
Plan
; Reification of organisation management actions/perceptions by
actions/percepts on the artifacts
generate
Trigger event
Observable Property
create
join
quit
Observable Event
Organisation
create
delete
adopt
leave
commit
leave
Group
Goal
create
delete
achieve
Norm
Role
Goal
Extensible set of organisational artifacts:
Interaction
Dimension
send
receive
Social Scheme
Link
Organisation
Dimension
Belief
focus,
unfocus
focus,
unfocus
MAOP Meta-Model A E O
Instrumenting Organisation Management by dedicated
Organisational Artifacts
Internal Action
Action
use
Operation
Environment
24 / 64
A & O Integration
create
dispose
link, unlink
has
Workspace
Agent
Dimension
consult
Manual
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
A & E & O Interaction meta-model
Environment
Dimension
May 2014
Content
Openness Management Artifact [Kitio, 2011]
Reorganisation Artifact [Sorici, 2011]
Evaluation Artifact (kind-of reputation
artifact) [Hübner et al., 2009b]
Communication management Artifact [Ciortea, 2011]
Message
SpeechAct
Mission
Cardinalities are not represented
May 2014
composition
association
MAOP
primitive operations
concept mapping
dimension border
dependency
Based on Cartago [Ricci et al., 2009b], Jason [Bordini et al., 2007],
25 / 64
May 2014
MAOP
26 / 64
Introduction MAOP JaCaMo Experiences Conclusion
MAOP Meta-Model A E O
Introduction MAOP JaCaMo Experiences Conclusion
A & O Integration (2)
MAOP Meta-Model A E O
Example
Example (Adoption of Role)
group
scheme
mission
role
Plan
Library
Belief
Base
+!discover_art(ToolName)
<- joinWorkspace("HouseBuildingWsp");
lookupArtifact(ToolName,ToolId);
focus(ToolId).
organisational events
organisational actions
Intentions
Org.
Reasoning
Mechanisms
; Agents can reason on the
organisation:
Org.
Artifacts
op1
op2
...
Exploit the uniform access to
artifacts
; Agents may be aware of the
Organisation by the way of:
op1
op2
to achieve organisational goals
by developing organisational
plans
op1
Env.
op2
Artifacts
May 2014
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
+!contract("SitePreparation",GroupBoardId)
<- adoptRole(site_prep_contractor)
focus(GroupBoardId).
+!site_prepared
<- ... // actions to prepare the site..
27 / 64
MAOP Meta-Model A E O
Introduction MAOP JaCaMo Experiences Conclusion
E & O Integration
scheme
count-as
op1
op2
Org. Artifacts
op1
op2
enact
*auctionStatus(closed)[source(Art)]
count-as
play(Winner,Role,hsh_group)[source(hsh_group)]
in
currentWinner(Winner)[source(Art)] &
not(Winner==no_winner) &
auction_role(Art,Role).
Env.
Artifacts
; Org-agnostic agents may
indirectly act on the organisation
/* The occurrence of the event "prepareSite" means the
achievement of organisational goal "site_prepared" */
; Environment can act on the
organisation
+ prepareSite[agent_name(Ag),artifact_name(housegui)]
count-as
goalState(bhsch,site_prepared,Ag,Ag,satisfied)[source(bhsch)].
; Organisation is embodied,
situated in the environment
May 2014
MAOP Meta-Model A E O
/* If an auction "Art" is finished, its winner ("Winner")
plays a role "Role", if it doesn’t adopted it yet */
Both artifacts bound by count-as,
enact constitutive
rules [Piunti et al., 2009,
de Brito et al., 2012]
count-as
op1
op2
28 / 64
Example
Org. Artifacts provide
organisational operations
mission
role
MAOP
Count-as rules [de Brito et al., 2012]
Env. Artifacts provide operations
on shared resources
group
May 2014
MAOP
29 / 64
May 2014
MAOP
30 / 64
Introduction MAOP JaCaMo Experiences Conclusion
MAOP Meta-Model A E O
Introduction MAOP JaCaMo Experiences Conclusion
Organisation’s dynamics (triggered by Agents, Environment)
MAOP Meta-Model A E O
Outcomes of A & E & O Integration
Organisation life-cycle
Entrance/Exit of an agent
Normative deliberative agents
Creation/Deletion of an Organisation entity
possibility to define mechanisms for agents to evolve within an
organisation/several organisations
possibility to define proper mechanisms for deliberating on the
internalisation/adoption/violation of norms
Change of Organisation specification
Structural Organisation life-cycle
Reorganisation, adaptation of the organisation
Creation/Deletion of a group
possibility to define proper mechanisms for
diagnosing/evaluating/refining/defining organisations
Adoption/Release of a role
“Deliberative” Organisations
Functional Organisation life-cycle
possibility to define dedicated organisational strategies for the
regulation/adaptation of the organisation behaviour (organisational
agents)
Creation/End of a schema
Commitment/Release of a mission
Change of a global goal state
“Embodied” Organisation / Organisation Aware Environment
possibility to connect organisation to environment
Normative Organisation life-cycle
Activation/De-activation of obligation
Fulfilment/Violation/Sanction
May 2014
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
31 / 64
MAOP Meta-Model A E O
Workspace
Artifact
update
External Action
Internal Action
Agent dimension
...
Action
use
Operation
Environment
Agent
Dimension
create
dispose
link, unlink
has
Agent
create
join
quit
create
delete
...
Goal
Agent
Artifact
Mission
commit
leave
create
delete
achieve
Conceptual
level
Norm
Goal
SchemeBoard
Specification
Groups
Players
Goals
Obbligations
adoptRole
leaveRole
addScheme
removeScheme
commintMission
leaveMission
setGoalAchieved
NodeArtifact
Interaction
Dimension
send
receive
GroupBoard
Specification
Schemes
Goals
linkArtifacts
lookupArtifact
(make/dispose)Artifact
quitWorkspace
Goal
Social Scheme
Role
...
Operations
artifact(SB,SchemeBoard,ID1)
artifact(CONS,Console,ID2)
...
Belief
focus,
unfocus
Group
Organisation
Dimension
Organisation dimension
...
Plan
WorkspaceArtifact
Observable Event
adopt
leave
Link
...
generate
focus,
unfocus
Organisation
Environment dimension
...
Plan
Trigger event
Observable Property
32 / 64
JaCaMo Platform http://jacamo.sourceforge.net
consult
Manual
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
A MAOP meta-model
Environment
Dimension
May 2014
workspace(WspName,ID)
...
Console
Message
createWorkspace
joinWorkspace
joinRemoteWorkspace
shutdownNode
print
println
JaCaMo workspace
Content
Execution
level
SpeechAct
CArtAgO, Jason, NOPL engine
Mission
Java Platform
Platform
level
Operating System
Cardinalities are not represented
composition
association
primitive operations
concept mapping
dimension border
dependency
MAOPbased on Cartago [Ricci et al., 2009b],
JaCaMo Meta-model [Boissier et al., 2011],
May 2014
Jason [Bordini et al., 2007], M OISE [Hübner et al., 2009a] meta-models
33 / 64
May 2014
MAOP
34 / 64
Introduction MAOP JaCaMo Experiences Conclusion
Introduction MAOP JaCaMo Experiences Conclusion
Integration of Multi-Agent technologies
Integration with other technologies
Web 2.0
Agent: Jason agents [Bordini et al., 2007]
implementing Web 2.0 applications
http://jaca-web.sourceforge.net
Environment: CArtAgO platform [Ricci et al., 2009b]
Organisation: M OISE framework with the extended/refactored
version of the M OISE OMI: ORA4MAS [Hübner et al., 2009a]
Android Platforms
implementing mobile computing applications on top of the Android
platform
http://jaca-android.sourceforge.net
Interaction: based on tight integration between Jason and KQML
or ACL/FIPA
Web Services
building SOA/Web Services applications
http://cartagows.sourceforge.net
Dimensions are integrated with dedicated bridges:
A–E (c4Jason, c4Jadex [Ricci et al., 2009b])
Arduino Platforms
E–O (count-as/enact rules [Piunti et al., 2009])
building “Web of Things” Applications
http://jacamo.sourceforge.net
A–O is for free (thanks to ORA4MAS). Strategies and reasoning
capabilities from J -M OISE+ [Hübner et al., 2007] can be
reused.
Semantic Technologies
JaSA: Semantically Aware Agents
http://cartago.sourceforge.net
Open to integrate other Multi-Agent Technologies
May 2014
MAOP
35 / 64
May 2014
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
36 / 64
Case K-Sharing Trust & Privacy
M2M Infrastructure for Smart Cities (ETSI view)
Outline
1
Introduction
2
Multi-Agent Oriented Programming (MAOP)
3
MAOP Perspective: the JaCaMo Platform
4
MAOP Experiences
MAOP Case: Agile Governance of M2M Infrastructure
Sharing data, Knowledge
Privacy & Trust
5
Conclusions and Perspectives
European Telecommunications Standards Institute (ETSI) view on M2M infrastructure
Device Domain: smart devices (sensors and actuators) for collecting
data and controling the environment
Network Domain: shared communication infrastructure (platforms and
gateways) to connect applications to devices
Application Domain: applications providing ubiquitous & added value
services to citizens
May 2014
MAOP
38 / 64
Introduction MAOP JaCaMo Experiences Conclusion
Case K-Sharing Trust & Privacy
Introduction MAOP JaCaMo Experiences Conclusion
SensCity: Urban M2M Infrastructure
Case K-Sharing Trust & Privacy
Agile Governance Requirements
To get a urban M2M infrastructure for smart city:
where costs and resources can be shared between several
applications (e.g. Parking Management, Garbage Collection,
Smart Metering, etc)
; Shifting from “vertical” to “horizontal” M2M infrastructures
where new Stakeholders (i.e. application/sensors/actuators) can
be added/suppressed during the lifetime of the system
http://www.senscity-grenoble.com
; Openness
and reacting to the changes of environmental conditions (e.g.
increase in the number of collected data, number of messages)
; Adaptation
In the context of this industrial project, our objective is to define
an agile governance of the Urban M2M Infrastructure
; Definition of an agile and decentralized governance layer on top of
the M2M Infrastructure [Persson et al., 2012]
This is an ongoing research project in collaboration with
OrangeLabs, France
May 2014
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
39 / 64
May 2014
Case K-Sharing Trust & Privacy
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
Legacy System
Agile gouvernance organization
Normative
Normative
Functional
Functional
Structural
Structural
SLA
SLA
Application
M2M System
Normative
Functional
plugged-in
Structural
Application
Transaction
Mngr
Gateway
Application
Enabler
Communication
Enabler
M2M Area
App Security
Mngr
Net Security
Mngr
History Mngr
Interworking
Proxy
Compensation
Broker
Subgoal 1 Subgoal 2
Application
Devices
Remote Entity
Mngr
Normative
Device
Sensor
translated into
Application-specific organization
SensCity platform
Actuator
Subgoal 2.1 Subgoal 2.2
Gateway Proxy
AppCNX
op1
op2
AppConf
op1
op2
NetworkInventory
op1
op2
DeviceCNX
op1
op2
Store
op1
op2
Forward
plugged-in
Application
Transaction
Mngr
Gateway
Application
Enabler
Communication
Enabler
M2M Area
App Security
Mngr
Net Security
Mngr
History Mngr
Interworking
Proxy
Compensation
Broker
Subgoal 1 Subgoal 2
Remote Entity
Mngr
Device
Sensor
Actuator
Subgoal 2.1 Subgoal 2.2
composed of 47 types of
components
Gateway Proxy
platform agents
supporting access to physical
devices
network agents
Application Workspace
op1
op2
AppCNX
AppConf
Devices WorkSpace
Network Workspace
op1
op2
NetworkInventory
op1
op2
DeviceCNX
op1
op2
Store
op1
op2
Forward
SensCity
SensCity
and shared by several
heterogenous Applications
op1
op2
device agents
Environment
OrgBoard SchemeBoard GroupBoard
op1
op2
Devices WorkSpace
Network Workspace
Structural
Devices
Agents
op1
op1
op2
op2
op1
op1
op2
op2
Application Workspace
device agents
Environment
Organization Workspace
network agents
Agents
platform agents
Functional
App
Network
Organization
translated into
Application-specific organization
Network
Organization
Application
op1
op1
op2
op2
M2M System
SLA
SLA
App
Case K-Sharing Trust & Privacy
MA Governance Layer: Governance Artifacts
Agile gouvernance organization
SLA
SLA
Application
op1
op2
Artifact
Hidden Component
Real World
Wrapped Component
Hidden Component
Real World
Wrapped Component
controls
controls
encapsulates
interacts
interacts
Monitoring and controling tools
that
Compute direct / interpreted /
aggregated status of the
SensCity Platform’s components.
Provide a uniform access of this
status to the agents by
observable properties or signals
Offer the agents the possibility to
act on the functioning of the M2M
infrastructure by a repertoire of
operations (Threshold definition,
LoadBalancing, (De)activate, ...)
Structured according to the ETSI
domains
legend
legend
May 2014
40 / 64
MAOP
41 / 64
May 2014
MAOP
42 / 64
Introduction MAOP JaCaMo Experiences Conclusion
Case K-Sharing Trust & Privacy
Introduction MAOP JaCaMo Experiences Conclusion
MA Governance Layer: Governance Agents
Take local autonomous decisions
given the prescriptions of the
organisation and their own local
strategies
Normative
Functional
Structural
M2M System
SLA
Gateway
Application
Enabler
Communication
Enabler
M2M Area
App Security
Mngr
Normative
Functional
plugged-in
Structural
App
Subgoal 1 Subgoal 2
Devices
Transaction
Mngr
Net Security
Mngr
History Mngr
Interworking
Proxy
Compensation
Broker
Remote Entity
Mngr
Actuator
Subgoal 2.1 Subgoal 2.2
Gateway Proxy
op1
op2
op1
op2
DeviceCNX
NetworkInventory
AppConf
op1
op2
op1
op2
Store
Forward
Agent
Artifact
controls
encapsulates
Organization Workspace
op1
op1
op2
op2
legend
May 2014
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
M2M System
Normative
Functional
App
plugged-in
Structural
Subgoal 1 Subgoal 2
Transaction
Mngr
Gateway
Application
Enabler
Communication
Enabler
M2M Area
App Security
Mngr
Net Security
Mngr
History Mngr
Interworking
Proxy
Compensation
Broker
Remote Entity
Mngr
Device
Sensor
Actuator
Subgoal 2.1 Subgoal 2.2
Gateway Proxy
OrgBoard SchemeBoard GroupBoard
AppCNX
op1
op2
AppConf
Devices WorkSpace
Network Workspace
op1
op2
NetworkInventory
op1
op2
DeviceCNX
op1
op2
Store
op1
op2
Forward
op1
op2
Agent
Artifact
Wrapped Component
composition
play role
controls
encapsulates
interacts
Forward
Role
Agent
Artifact
Wrapped Component
Hidden Component
composition
play role
controls
encapsulates
interacts
legend
43 / 64
May 2014
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
44 / 64
Case K-Sharing Trust & Privacy
M2M Agile Governance Example
Expressed in terms of structure
(groups, roles), functionning
(missions, goals, plans) and
norms, and reasoned on by the
agents and monitored by the
organisation management
infrastructure
Normative
Functional
Structural
SLA
SLA
Application
MAOP
M2M System
SLA
Application
translated into
Application-specific organization
Normative
Functional
App
plugged-in
Structural
Subgoal 1 Subgoal 2
Network
Devices
Application
Transaction
Mngr
Gateway
Application
Enabler
Communication
Enabler
M2M Area
App Security
Mngr
Net Security
Mngr
History Mngr
Interworking
Proxy
Compensation
Broker
Remote Entity
Mngr
Device
Sensor
SLA Definition
Actuator
Subgoal 2.1 Subgoal 2.2
Gateway Proxy
Horizontal Organisation: defines
the nominal global functioning
based on ETSI standards
(Domains, Service Capabilities,
Capability functionalities, ...)
platform agents
Organization Workspace
op1
op1
op2
op2
op1
op1
op2
op2
op1
op1
op2
op2
OrgBoard SchemeBoard GroupBoard
Service Level Agreement
Role
Group
Vertical Organisations: based on
each application SLA deployed
on the Urban M2M Infrastructure
network agents
Application Workspace
op1
op2
AppCNX
op1
op2
AppConf
device agents
Devices WorkSpace
Network Workspace
op1
op2
NetworkInventory
op1
op2
DeviceCNX
op1
op2
Store
op1
op2
Forward
Service Level Agreement:
Translation of Application
subscription to Devices in
terms of Group, Roles,
Missions, Norms
Validation: If judged feasible,
role adopted Else Rejected or
New proposal
op1
op2
Agent
Artifact
Wrapped Component
Hidden Component
composition
play role
; agents participate to multiple
controls
encapsulates
interacts
organisations
legend
May 2014
Store
Real World
Real World
Hidden Component
op1
op2
op1
op2
DeviceCNX
NetworkInventory
AppConf
SensCity
Role
Group
op1
op2
SensCity
Service Level Agreement
Application Workspace
op1
op2
op1
op2
Environment
op1
op1
op2
op2
AppCNX
Devices WorkSpace
Network Workspace
op1
op2
Horizontal Organisation: defines
the nominal global functioning
based on ETSI standards
(Domains, Service Capabilities,
Capability functionalities, ...)
Agents
op1
op1
op2
op2
device agents
Environment
Organization Workspace
op1
op1
op2
op2
network agents
Agents
platform agents
op1
op2
device agents
Organization
Application-specific organization
Application
Organization
translated into
Devices
network agents
Agile gouvernance organization
Normative
Functional
Structural
Network
Actuator
op1
op2
Case K-Sharing Trust & Privacy
Agile gouvernance organization
Application
Device
Sensor
Service Level Agreement
Group
MA Governance Layer: Governance Organisations
SLA
SLA
Application
SLA
Interworking
Proxy
Remote Entity
Mngr
Application Workspace
op1
op1
op2
op2
op1
op1
op2
op2
OrgBoard SchemeBoard GroupBoard
Adapt the global governance
strategy (; may modify the
organisation)
interacts
History Mngr
Compensation
Broker
Real World
Real World
Hidden Component
M2M Area
Net Security
Mngr
platform agents
Interact with the other agents
Wrapped Component
Communication
Enabler
SensCity
SensCity
op1
op2
Gateway
Application
Enabler
App Security
Mngr
Environment
op1
op2
Transaction
Mngr
Gateway Proxy
Apply their governance policies
and local strategies (goals,
beliefs, plans) to control M2M
infrastructure by using their
actions (; artifacts operations)
Environment
AppCNX
Devices WorkSpace
Network Workspace
Application Workspace
op1
op2
device agents
Devices
Application
Agents
network agents
Agents
platform agents
Network
Application
Monitor the M2M infrastructure
by focusing on artifacts (e.g.
Failures, Overloads) updating
their beliefs, goals
Device
Sensor
Expressed in terms of structure
(groups, roles), functionning
(missions, goals, plans) and
norms, and reasoned on by the
agents and monitored by the
organisation management
infrastructure
Normative
Functional
Structural
M2M System
Organization
Application-specific organization
Network
Application
Organization
Application
translated into
MA Governance Layer: Governance Organisations
Agile gouvernance organization
Agile gouvernance organization
SLA
SLA
Application
Case K-Sharing Trust & Privacy
legend
44 / 64
May 2014
MAOP
45 / 64
Introduction MAOP JaCaMo Experiences Conclusion
Case K-Sharing Trust & Privacy
Introduction MAOP JaCaMo Experiences Conclusion
M2M Agile Governance Example
M2M Agile Governance Example
Agile gouvernance organization
Agile gouvernance organization
Normative
Normative
Functional
Functional
Structural
SLA
SLA
Application
Structural
SLA
SLA
Application
M2M System
SLA
Normative
Functional
plugged-in
Structural
Subgoal 1 Subgoal 2
Devices
Application
Transaction
Mngr
Gateway
Application
Enabler
Communication
Enabler
M2M Area
App Security
Mngr
Net Security
Mngr
History Mngr
Interworking
Proxy
Compensation
Broker
Remote Entity
Mngr
Application-specific organization
Contract Execution
Device
Sensor
Application
translated into
Social Scheme activation:
when request is received, new
scheme instance started
Subgoal 2.1 Subgoal 2.2
Gateway Proxy
AppCNX
op1
op2
op1
op2
op1
op2
DeviceCNX
NetworkInventory
AppConf
op1
op2
op1
op2
Store
Forward
Role
Communication
Enabler
M2M Area
Net Security
Mngr
History Mngr
Interworking
Proxy
Compensation
Broker
Remote Entity
Mngr
Device
Sensor
Problem Detection
Actuator
Subgoal 2.1 Subgoal 2.2
Gateway Proxy
platform agents
Organization Workspace
op1
op1
op2
op2
op1
op1
op2
op2
op1
op2
AppCNX
device agents
Devices WorkSpace
Network Workspace
Application Workspace
op1
op1
op2
op2
OrgBoard SchemeBoard GroupBoard
network agents
op1
op2
op1
op2
op1
op2
op1
op2
DeviceCNX
NetworkInventory
AppConf
op1
op2
Store
Forward
Service Level Agreement
Role
Group
op1
op2
Detection of possible norm
violation, i.e. failure to comply
with the SLA
Platform Monitoring: find the
source of the problem with the
help of the artifacts
SensCity
SensCity
Service Level Agreement
Group
Execution Monitoring:
validation of application
requests, monitoring of
devices’ activity
Gateway
Application
Enabler
App Security
Mngr
Environment
OrgBoard SchemeBoard GroupBoard
op1
op2
Devices WorkSpace
Network Workspace
Application Workspace
op1
op1
op2
op2
plugged-in
Structural
Devices
Transaction
Mngr
Agents
op1
op1
op2
op2
device agents
Environment
Organization Workspace
network agents
Agents
platform agents
Normative
Functional
App
Subgoal 1 Subgoal 2
Actuator
Network
Application
Organization
Application-specific organization
Network
Organization
translated into
op1
op1
op2
op2
M2M System
SLA
Application
App
Case K-Sharing Trust & Privacy
op1
op2
Agent
Artifact
Agent
Artifact
Hidden Component
composition
play role
controls
encapsulates
Real World
Wrapped Component
Hidden Component
Real World
Wrapped Component
composition
play role
controls
encapsulates
interacts
interacts
legend
legend
May 2014
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
46 / 64
May 2014
Case K-Sharing Trust & Privacy
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
M2M Agile Governance Example
Agile gouvernance organization
Normative
Normative
Functional
Functional
Structural
Structural
SLA
SLA
Application
M2M System
SLA
Normative
Functional
plugged-in
Structural
Subgoal 1 Subgoal 2
Devices
Application
Transaction
Mngr
Gateway
Application
Enabler
Communication
Enabler
M2M Area
App Security
Mngr
Net Security
Mngr
History Mngr
Interworking
Proxy
Compensation
Broker
Remote Entity
Mngr
Normative
Functional
AppConf
Devices WorkSpace
Network Workspace
op1
op2
NetworkInventory
op1
op2
DeviceCNX
op1
op2
Store
op1
op2
Forward
Gateway
Application
Enabler
Communication
Enabler
M2M Area
App Security
Mngr
Net Security
Mngr
History Mngr
Interworking
Proxy
Compensation
Broker
Remote Entity
Mngr
Governance Strategy Adaptation
Device
Sensor
Actuator
Subgoal 2.1 Subgoal 2.2
Gateway Proxy
Fix the problem by acting on
the platform via the artifacts
under their responsibility and
their governance policies
platform agents
Organization Workspace
op1
op1
op2
op2
op1
op1
op2
op2
op1
op1
op2
op2
OrgBoard SchemeBoard GroupBoard
Coordinate with each other
Service Level Agreement
Role
Group
op1
op2
network agents
Application Workspace
op1
op2
AppCNX
op1
op2
AppConf
device agents
Devices WorkSpace
Network Workspace
op1
op2
NetworkInventory
op1
op2
DeviceCNX
op1
op2
Store
op1
op2
Forward
SensCity
Role
AppCNX
op1
op2
SensCity
Service Level Agreement
Group
op1
op2
Devices
Transaction
Mngr
Environment
OrgBoard SchemeBoard GroupBoard
Application Workspace
Network
Application
Agents
op1
op1
op2
op2
Environment
op1
op1
op2
op2
device agents
plugged-in
Structural
Subgoal 1 Subgoal 2
Infrastructure Adaptation
Agents
Organization Workspace
Application-specific organization
App
Actuator
Gateway Proxy
network agents
translated into
Device
Sensor
Subgoal 2.1 Subgoal 2.2
platform agents
Application
Organization
Application-specific organization
Network
Organization
translated into
op1
op1
op2
op2
M2M System
SLA
Application
App
Case K-Sharing Trust & Privacy
M2M Agile Governance Example
Agile gouvernance organization
SLA
SLA
Application
47 / 64
Problem with the SLA: SLA
might be too greedy,
infrastructure adaptation not
sufficient
; SLA redefinition (eg.
decrease message frequency,
device subscription redefined)
op1
op2
Agent
Artifact
Agent
Artifact
Hidden Component
composition
play role
controls
encapsulates
Real World
Wrapped Component
Hidden Component
Real World
Wrapped Component
composition
play role
controls
encapsulates
interacts
interacts
legend
May 2014
legend
MAOP
48 / 64
May 2014
MAOP
49 / 64
Introduction MAOP JaCaMo Experiences Conclusion
Case K-Sharing Trust & Privacy
Introduction MAOP JaCaMo Experiences Conclusion
Synthesis
Case K-Sharing Trust & Privacy
Sharing Data and Knowledge
Monitoring and governance of the M2M infrastructure take place
at different levels embracing an increasing broader view:
Artifacts < Agents & Interactions < Organisations
; Modularity / Lisibility of the Governance Layer
Coordination mechanisms installing Top-Down - Bottom-up loops
(Synergie between Macro/Micro levels)
Agents are in charge of the governance but also of the
reorganisation process
Current experiments:
Installing complex governance processes
Refactoring the Agents layer by making explicit dedicated
coordination strategies expressed into coordination artifacts
Distributing and better managing the deployement
May 2014
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
Smart Places
Smart places where nomadic users participate to adhoc virtual
communities (in collaboration with LaHC/UJM, LT2C/UJM-TSE))
50 / 64
Case K-Sharing Trust & Privacy
May 2014
MAOP
Introduction MAOP JaCaMo Experiences Conclusion
Privacias [Ciortea et al., 2012]
51 / 64
Case K-Sharing Trust & Privacy
Decentralized Trust Management
Dave
Helen
Bob
H
D
A
G
B
George
Alice
E
C
Carl
F
f
Elise
Frank
Open Innovation Communities where groups of individuals
share common interests or objectives
interact and share resources (documents, ideas, etc)
Privacy preservation in open and decentralized communities by
the definition of Privacy Enforcing Agent:
Privacy Enforcement Norms checked by the agent Privacy
Enforcement Layer
Appropriateness laws (A-Laws) used by the agent Privacy violation
detection layer
May 2014
MAOP
Management of Individual and Collective Trust Policies on behalf of the
users [Yaich et al., 2012]
52 / 64
May 2014
MAOP
53 / 64
Introduction MAOP JaCaMo Experiences Conclusion
Case K-Sharing Trust & Privacy
Decentralized Trust Management
Outline
Organisation
Community
Role
Collective
Policies
Assistant
Agent
A
A
C
Interaction
ASC-TMA
T
G
T
T
Agents
T
Association
Introduction
2
Multi-Agent Oriented Programming (MAOP)
3
MAOP Perspective: the JaCaMo Platform
4
MAOP Experiences
5
Conclusions and Perspectives
Negotiation
T
T
1
F
B
I
Individual
Policies
Adhesion
Control
T
Environment
Private
Resource
Public
Resource
Operation
Interactions
Multi-Agent Architecture
May 2014
MAOP
54 / 64
Introduction MAOP JaCaMo Experiences Conclusion
Introduction MAOP JaCaMo Experiences Conclusion
Conclusions
MAOP Open Issues & Perspectives
MAOP proposes a seamless integration of different abstractions that
brings interesting features to Intelligent Environments:
; separation of concerns
; Coordination
Integration of Bottom-up AND Top-Down functioning within MAS ;
integration of emergence AND Normative dynamics
Management of Open Organisations, Multiple Organisations,
Organisation of Organisations
Management of Situated Organisations (Interactions between E
and O dimensions)
; Shift from MAS to MAOS (Multi-AgentOrganization Systems)
using the best abstraction level and tools to tackle the specific
dimensions, avoiding design pitfalls, such as using agents to
implement either non-autonomous entities (e.g., a blackboard
agent) or a collection of autonomous entities (group agent)
; openness and heterogeneity
; Engineering
E.g., heterogeneous agents working in the same organisation,
heterogeneous agents working in the same environment, the same
agent working in different and heterogeneous organisations, the
same agent working in different heterogeneous environments
Debugging, Performance, ...
Life cycle of MAS (from requirement to maintenance) ; software
engineering tools and methods
Shift from Agent-Oriented Sofware Engineering to Multi-Agent
Oriented Software Engineering where all the dimensions A, E, I, O
may guide each step of the process
Evaluation & Verification of MAO programmed applications,
Integrating with other technologies
Handle Scalability, Robustness
; programming features:
Each of the dimension can be addressed explicitly
Modularity, extensibility, reusability is possible
Extensible set of actions and tools provided to Agents
(Reorganization Artifact, Organization Management Artifacts, ...)
... code is cleaner and more understandable ...
May 2014
MAOP
56 / 64
May 2014
MAOP
57 / 64
Introduction MAOP JaCaMo Experiences Conclusion
Introduction MAOP JaCaMo Experiences Conclusion
Bibliography I
Boissier, O. (2003).
Contrôle et coordination orientés multi-agents.
Habilitation à diriger des recherches, ENS Mines Saint-Etienne et Université Jean
Monnet.
Multi-Agent Oriented Programming
– Introduction –
Boissier, O., Bordini, R. H., Hübner, J. F., Ricci, A., and Santi, A. (2011).
The JaCaMo Platform
Science of Computer Programming, pages –.
Multi-agent oriented programming with jacamo.
Bordini, R. H., Hübner, J. F., and Wooldrige, M. (2007).
Programming Multi-Agent Systems in AgentSpeak using Jason.
O. Boissier, R.H. Bordini, J.F. Hübner, A. Ricci
Wiley Series in Agent Technology. John Wiley & Sons.
Campos, J., López-Sánchez, M., Rodriguez-Aguilar, J. A., and Esteva, M. (2009).
Formalising situatedness and adaptation in electronic institutions.
May 2014
In Coordination, Organizations, Institutions and Norms in Agent Systems IV,
volume 5428/2009 of LNCS. Springer Berlin / Heidelberg.
Ciortea, A. (2011).
Modeling relationships for privacy preservation in virtual communities.
Master’s thesis, University Politehnica of Bucharest.
May 2014
MAOP
58 / 64
Introduction MAOP JaCaMo Experiences Conclusion
May 2014
MAOP
59 / 64
Introduction MAOP JaCaMo Experiences Conclusion
Bibliography II
Bibliography III
Hübner, J. F., Vercouter, L., and Boissier, O. (2009b).
Ciortea, A., Krupa, Y., and Vercouter, L. (2012).
Instrumenting Multi-Agent Organisations with reputation artifacts.
Designing privacy-aware social networks: a multi-agent approach.
In Hubner, J. F., Matson, E., Boissier, O., and Dignum, V., editors, Coordination,
Organizations, Institutions, and Norms in Agent Systems IV, volume 5428 of
LNAI, pages 96–110. Springer.
In Burdescu, D. D., Akerkar, R., and Badica, C., editors, WIMS, page 8. ACM.
de Brito, M., Hübner, J. F., and Bordini, R. H. (2012).
Huhns, M. N. (2001).
Programming institutional facts in multi-agent systems.
Interaction-oriented programming.
In COIN-12, Proceedings.
Hübner, J. F., Boissier, O., Kitio, R., and Ricci, A. (2009a).
In First international workshop, AOSE 2000 on Agent-oriented software
engineering, pages 29–44, Secaucus, NJ, USA. Springer-Verlag New York, Inc.
Instrumenting Multi-Agent Organisations with Organisational Artifacts and
Agents.
Kitio, R. (2011).
Journal of Autonomous Agents and Multi-Agent Systems.
Gestion de l’ouverture au sein d’organisations multi-agents. Une approche basée
sur des artefacts organisationnels.
Hübner, J. F., Sichman, J. S., and Boissier, O. (2007).
PhD thesis, ENS Mines Saint-Etienne.
Developing Organised Multi-Agent Systems Using the MOISE+ Model:
Programming Issues at the System and Agent Levels.
Occello, M., Baeijs, C., Demazeau, Y., and Koning, J.-L. (2004).
MASK: An AEIO toolbox to design and build multi-agent systems.
Agent-Oriented Software Engineering, 1(3/4):370–395.
May 2014
MAOP
In et al., C., editor, Knowledge Engineering and Agent Technology, IOS Series on
Frontiers in AI and Applications. IOS press, Amsterdam.
60 / 64
May 2014
MAOP
61 / 64
Introduction MAOP JaCaMo Experiences Conclusion
Introduction MAOP JaCaMo Experiences Conclusion
Bibliography IV
Bibliography V
Omicini, A., Ricci, A., and Viroli, M. (2008).
Ricci, A., Piunti, M., and Viroli, M. (2009a).
Artifacts in the A&A meta-model for multi-agent systems.
Autonomous Agents and Multi-Agent Systems, 17(3):432–456.
Externalisation and internalization: A new perspective on agent modularisation in
multi-agent system programming.
Persson, C., Picard, G., Ramparany, F., and Boissier, O. (2012).
In Dastani, M., Fallah-Seghrouchni, A. E., Leite, J., and Torroni, P., editors, LADS,
volume 6039 of Lecture Notes in Computer Science, pages 35–54. Springer.
A jacamo-based governance of machine-to-machine systems.
In Demazeau, Y., Müller, J. P., Rodríguez, J. M. C., and Pérez, J. B., editors,
Advances on Practical Applications of Agents and Multiagent Systems, Proc. of
the 10th International Conference on Practical Applications of Agents and
Multi-Agent Systems (PAAMS 12), volume 155 of Advances in Soft Computing
Series, pages 161–168. Springer.
Ricci, A., Piunti, M., and Viroli, M. (2011).
Piunti, M., Ricci, A., Boissier, O., and Hubner, J. (2009).
Environment programming in CArtAgO.
Environment programming in multi-agent systems: an artifact-based perspective.
Autonomous Agents and Multi-Agent Systems, 23:158–192.
Ricci, A., Piunti, M., Viroli, M., and Omicini, A. (2009b).
In Multi-Agent Programming: Languages,Platforms and Applications,Vol.2.
Springer.
Embodying organisations in multi-agent work environments.
In IEEE/WIC/ACM International Conference on Web Intelligence and Intelligent
Agent Technology (WI-IAT 2009), Milan, Italy.
Ricordel, P. and Demazeau, Y. (2002).
VOLCANO: a vowels-oriented multi-agent platform.
Pynadath, D. V., Tambe, M., Chauvat, N., and Cavedon, L. (1999).
In Dunin-Keplicz and Nawarecki, editors, Proceedings of the International
Conference of Central Eastern Europe on Multi-Agent Systems (CEEMAS’01),
volume 2296 of LNAI, pages 252–262. Springer Verlag.
Toward team-oriented programming.
In Jennings, N. R. and Lespérance, Y., editors, ATAL, volume 1757 of LNCS,
pages 233–247. Springer.
May 2014
MAOP
62 / 64
Introduction MAOP JaCaMo Experiences Conclusion
Bibliography VI
Shoham, Y. (1993).
Agent-oriented programming.
Artif. Intell., 60(1):51–92.
Sorici, A. (2011).
Agile governance in an ambient intelligence environment.
Master’s thesis, University Politehnica of Bucharest.
Stratulat, T., Ferber, J., and Tranier, J. (2009).
MASQ: towards an integral approach to interaction.
In AAMAS (2), pages 813–820.
Yaich, R., Boissier, O., Jaillon, P., and Picard, G. (2012).
An agent based trust management system for multi-agent based virtual
communities.
In Demazeau, Y., Müller, J. P., Rodríguez, J. M. C., and Pérez, J. B., editors,
Advances on Practical Applications of Agents and Multiagent Systems, Proc. of
the 10th International Conference on Practical Applications of Agents and
Multi-Agent Systems (PAAMS 12), volume 155 of Advances in Soft Computing
Series, pages 217–223. Springer.
May 2014
MAOP
64 / 64
May 2014
MAOP
63 / 64