48
Multi-Agent Oriented Programming The JaCaMo Platform O. Boissier 1 R.H. Bordini 2 J.F. Hübner 3 A. Ricci 4 1. Mines Saint-Etienne (ENSMSE), Saint Etienne, France 2 Pontificia Universidade Catolica do Rio Grande do Sul (PUCRS), Porto Alegre, Brazil 3. Federal University of Santa Catarina (UFSC), Florianópolis, Brazil 4. University of Bologna (UNIBO), Bologna, Italy September 2016

Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Multi-Agent Oriented ProgrammingThe JaCaMo Platform

O. Boissier1 R.H. Bordini2 J.F. Hübner3 A. Ricci4

1. Mines Saint-Etienne (ENSMSE), Saint Etienne, France

2 Pontificia Universidade Catolica do Rio Grande do Sul (PUCRS), Porto Alegre, Brazil

3. Federal University of Santa Catarina (UFSC), Florianópolis, Brazil

4. University of Bologna (UNIBO), Bologna, Italy

September 2016

Page 2: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

In collaboration with

I J.S. Sichman, Universidade de São Paulo - LTI-PCS, São Paulo, Brazil([email protected])

I G. Picard, ENS Mines St-Etienne, France ([email protected])

I M. Hannoun, B. Gâteau, G. Danoy, R. Kitio, C. Persson, R. Yaich,ENS Mines St-Etienne, France, L. Coutinho Brazil

I M. Piunti, A. Santi, Università degli studi di Bologna - DEIS, Bologna,Italy ([email protected])

I A. Ciortea, A. Sorici, Politehnica University of Bucharest, Romania

2

Page 3: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Tutorial Organisation

I Introduction to Multi-Agent Oriented ProgrammingI Programming Agents within JaCaMoI Programming Agents’ Environment within JaCaMoI Programming Agents’ Interaction within JaCaMoI Programming Agents’ Organisations within JaCaMoI Conclusion & Perspectives

3

Page 4: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Acknowledgements

I Dagstuhl Seminars:I #12342 (2012), #08361 (2008), #06261 (2006)

I Bilateral Projects:I USP-COFECUB 98-04I CMIRA Rhône-Alpes Region 2010

I French National Project:I FORTRUST Project ANR 06-10I ETHICAA Project ANR 14-18

4

Page 5: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Multi-Agent OrientedProgrammingIntroduction

Page 6: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Outline

IntroductionMotivationMulti-Agent Oriented Programming (MAOP)MAOP Perspective in the JaCaMo Platform

6

Page 7: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Current Landscape of Multi-Agent Programming

I Many AOSE methodology (Prometheus, Gaia, Tropos, ...) exist!

; Use at least one of these methodologies for analysing and designingyour MAS application

I Many agent languages have efficient and stable interpreters —used extensively in teaching

I All have some programming tools (IDE, tracing of agents’ mentalattitudes, tracing of messages exchanged, etc.)

I Some are integrating social aspects of MASI However, there are not yet proper tools to program multi-agent

systems!

; some reasons and motivations follow!

7

Page 8: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

MAS Conceptual framework / Dimensions

BELIEFSGOALSPLANS

INTERNALEVENTS

ACTIONSPERCEPTIONS

AGENTS

MISSIONS

ROLES

DEONTIC RELATIONS

GROUPS

NORMS

SANCTIONSREWARDS

ORGANISATIONS

RESOURCES

SERVICES OBJECTS

ENVIRONMENTS

COMMUNICATIONLANGUAGES

INTERACTIONPROCOLS

SPEECH ACTS

INTERACTIONS

TOPOLOGY

TOOLS

cf. VOWELS [Demazeau, 1995,Demazeau, 1997]

I Agents: abstractions for thedefinition of thedecision/reasoning entitiesarchitectures

I Environment: abstractions forstructuring resources, processingentities shared among the agents

I Interaction: abstractions forstructuring interactions amongentities

I Organisation: abstractions forstructuring and ruling the sets ofentities within the MAS

; A rich set of abstractions for capturing applications complexity!

8

Page 9: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

MAS Conceptual framework / Dynamics

BELIEFSGOALSPLANS

INTERNALEVENTS

ACTIONSPERCEPTIONS

AGENTS

MISSIONS

ROLES

DEONTIC RELATIONS

GROUPS

NORMS

SANCTIONSREWARDS

ORGANISATIONS

RESOURCES

SERVICES OBJECTS

ENVIRONMENTS

COMMUNICATIONLANGUAGES

INTERACTIONPROCOLS

SPEECH ACTS

INTERACTIONS

TOPOLOGY

TOOLS

I Each dimension has its owndynamics

I Dynamics may be interlaced intobottom-up / top-down globalcycles

I Coordination of these dynamicsmay be programmed into one orseveral dimensions[Boissier, 2003]

; A rich palette of possible dynamics & coordination!!

9

Page 10: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

MAS Programming

AOP

EOPIOP

OOPBELIEFS

GOALSPLANS

INTERNALEVENTS

ACTIONSPERCEPTIONS

AGENTS

MISSIONS

ROLES

DEONTIC RELATIONS

GROUPS

NORMS

SANCTIONSREWARDS

ORGANISATIONS

RESOURCES

SERVICES OBJECTS

ENVIRONMENTS

COMMUNICATIONLANGUAGES

INTERACTIONPROCOLS

SPEECH ACTS

INTERACTIONS

TOPOLOGY

TOOLS

I Agent Oriented Programming[Shoham, 1993]

I Environment OrientedProgramming [Ricci et al., 2011]

I Interaction OrientedProgramming [Huhns, 2001]

I Organisation OrientedProgramming[Pynadath et al., 1999]

I In these approaches, some dimensions lose their control & visibility!I Integrating the dimensions into one programming platform is not so

easy!I Examples of Multi-Agent Oriented Programming Platforms:Volcano platform [Ricordel and Demazeau, 2002], MASKplatform [Occello et al., 2004], MASQ [Stratulat et al., 2009],extending AGRE and AGREEN, Situated E-Institutions[Campos et al., 2009], ...

10

Page 11: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

MAS Programming

AOP

EOPIOP

OOPBELIEFS

GOALSPLANS

INTERNALEVENTS

ACTIONSPERCEPTIONS

AGENTS

MISSIONS

ROLES

DEONTIC RELATIONS

GROUPS

NORMS

SANCTIONSREWARDS

ORGANISATIONS

RESOURCES

SERVICES OBJECTS

ENVIRONMENTS

COMMUNICATIONLANGUAGES

INTERACTIONPROCOLS

SPEECH ACTS

INTERACTIONS

TOPOLOGY

TOOLS

I Agent Oriented Programming[Shoham, 1993]

I Environment OrientedProgramming [Ricci et al., 2011]

I Interaction OrientedProgramming [Huhns, 2001]

I Organisation OrientedProgramming[Pynadath et al., 1999]

Challenge

Shifting from an A/E/I/O oriented approaches to a Multi-Agent Orientedapproach

I keeping alive the concepts, dynamics and coordinations of the A, E, Iand O dimensions

10

Page 12: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Outline

IntroductionMotivationMulti-Agent Oriented Programming (MAOP)MAOP Perspective in the JaCaMo Platform

11

Page 13: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Seamless Integration of A & E & I & O

Artifact

Operation Agent

Workspace

Environment

Manual

has

use

generateupdate

createdispose

link, unlink

consult

createjoinquit

Belief

Goal

Plan

External Action Internal Action

createdelete

adoptleave

createdelete

commit leave

focus, unfocus

primitive operationscompositionassociation dependencyconcept mapping

Trigger eventObservable Property

dimension border

Action

Observable Event

achieve

Environment Dimension

Agent Dimension

Organisation Dimension

Cardinalities are not represented

Content

Message

SpeechAct

Interaction Dimension

sendreceive

focus, unfocus

MissionRole

Group Social Scheme

NormGoalLink

Organisation

JaCaMo Meta-model [Boissier et al., 2011], based on Cartago [Ricci et al., 2009b],

Jason [Bordini et al., 2007],Moise [Hübner et al., 2009a] meta-models

12

Page 14: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Agent meta-model

Agent

Belief

Goal

Plan

External Action Internal Action

agent's actionscompositionassociation

dependencyconcept mapping

Trigger event

dimension border

Action

Agent Dimension

Cardinalities are not represented

Based on Jason meta-models [Bordini et al., 2007]

13

Page 15: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Agent & Agent Interaction meta-model

Agent

Belief

Goal

Plan

External Action Internal Action

Trigger event

Action

Agent Dimension

Content

Message

SpeechAct

Interaction Dimension

15

Page 16: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Agent’s dynamics

SI

EventsExternal

EventSelected

SE

Beliefs toAdd and

Delete

RelevantPlans

New PlanPush

IntentionUpdated

OS

Applicable

Plans

Means

Intended

EventsExternal

PlanLibrary

Events

InternalEvents

3

checkMail

Intentions

ExecuteIntention

...NewNew

9

BeliefBase

NewIntention

Percepts

act

SelectedIntention

Intentions

Action

Percepts1 2

BUF

10

Events

Context

Check

Event

Unify

BRF

Beliefs

Agent

sendMsg

Beliefs

8

Messages

Plans

perceive

7

5

6

Actions

Beliefs

Suspended Intentions(Actions and Msgs)

...

.send

SocAcc

4

Messages MessagesSM

16

Page 17: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Environment meta-model

Artifact

Operation

Workspace

Environment

Manual

has

generateupdate

Observable Property Observable Event

Based on A&A meta-model [Omicini et al., 2008]

17

Page 18: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

A & E Interaction meta-model

Artifact

Operation Agent

Workspace

Environment

Manual

has

use

generateupdate

createdispose

link, unlink

consult

createjoinquit

Belief

Goal

Plan

External Action Internal Action

focus, unfocus

Trigger eventObservable Property

Action

Observable Event

Environment Dimension

Agent Dimension

focus, unfocus

19

Page 19: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Environment’s dynamics

Artifact life-cycle

I Creation/DeletionI Activation/Execution/Fail or Success/Deactivation of an OperationI Linking / Unlinking

Workspace life-cycle

I Creation/Deletion of a workspaceI Creation/Deletion of ArtifactsI Creation/Deletion & Entry/Exit of Agents

22

Page 20: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Outcomes of A & E Integration

I Agents with dynamic action repertoire, extended/reshaped byagents themselves

I Uniform implementation of any mechanisms (e.g. coordinationmechanism) in terms of actions/percepts

I No need to extend agents with special purpose primitives

I Exploiting a new type of agent modularity, based onexternalization [Ricci et al., 2009a]

23

Page 21: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Organisation meta-model

MissionRole

Group

NormGoalLink

Organisation

Social Scheme

SimplifiedMoise meta-model [Hübner et al., 2009a]

24

Page 22: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

A & E & O Interaction meta-model

Artifact

Operation Agent

Workspace

Environment

Manual

has

use

generateupdate

createdispose

link, unlink

consult

createjoinquit

Belief

Goal

Plan

External Action Internal Action

createdelete

adoptleave

createdelete

commit leave

focus, unfocus

primitive operationscompositionassociation dependencyconcept mapping

Trigger eventObservable Property

dimension border

Action

Observable Event

achieve

Environment Dimension

Agent Dimension

Organisation Dimension

Cardinalities are not represented

Content

Message

SpeechAct

Interaction Dimension

sendreceive

focus, unfocus

MissionRole

Group Social Scheme

NormGoalLink

Organisation

Based on Cartago [Ricci et al., 2009b], Jason [Bordini et al., 2007],Moise [Hübner et al., 2009a] meta-models

28

Page 23: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

A & O IntegrationI Definition of organisational beliefs, organisational actions mediating

the perception and actions on the organisation entityI Done by instrumenting the organisation management by dedicated

Organisational ArtifactsI Mapping of the organisational state onto artifacts computationalstate

I Encapsulation of organisational functionalities by suitably designedartifacts providing organisational operations

; Reification of organisation management actions/perceptions byactions/percepts on the artifacts

I Extensible set of organisational artifacts:I Openness Management Artifact [Kitio, 2011]I Reorganisation Artifact [Sorici, 2011]I Evaluation Artifact (kind-of reputationartifact) [Hübner et al., 2009b]

I Communication management Artifact [Ciortea, 2011]

29

Page 24: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

A & O Integration (2)

role missionschemegroup

BeliefBase Intentions

Org. Reasoning

Mechanisms

Plan Library

op2op1

op2op1

op2op1

Org. Artifacts Env.

Artifacts

I Exploit the uniform access toartifacts

; Agents may be aware of theOrganisation by the way of:

I organisational eventsI organisational actions

; Agents can reason on theorganisation:

I to achieve organisational goalsI by developing organisationalplans

30

Page 25: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

E & O Integration

role missionschemegroup

op2op1

Org. Artifacts Env.Artifacts

count-as

count-as

op2op1

op2op1

enact

I Env. Artifacts provide operationson shared resources

I Org. Artifacts provideorganisational operations

I Both artifacts bound by count-as,enact constitutiverules [Piunti et al., 2009,de Brito et al., 2012]

; Org-agnostic agents may indirectlyact on the organisation

; Environment can act on theorganisation

; Organisation is embodied, situatedin the environment

32

Page 26: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Organisation’s dynamics (triggered by Agents, Environment)

Organisation life-cycle

I Entrance/Exit of an agentI Creation/Deletion of an Organisation entityI Change of Organisation specification

Structural Organisation life-cycle

I Creation/Deletion of a groupI Adoption/Release of a role

Functional Organisation life-cycle

I Creation/End of a schemaI Commitment/Release of a

missionI Change of a global goal state

Normative Organisation life-cycle

I Activation/De-activation of obligationI Fulfilment/Violation/Sanction

34

Page 27: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Outcomes of A & E & O Integration

I Normative deliberative agentsI possibility to define mechanisms for agents to evolve within anorganisation/several organisations

I possibility to define proper mechanisms for deliberating on theinternalisation/adoption/violation of norms

I Reorganisation, adaptation of the organisationI possibility to define proper mechanisms fordiagnosing/evaluating/refining/defining organisations

I “Deliberative” OrganisationsI possibility to define dedicated organisational strategies for theregulation/adaptation of the organisation behaviour (organisationalagents)

I “Embodied” Organisation / Organisation Aware EnvironmentI possibility to connect organisation to environment

35

Page 28: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Synthesis: MAOP meta-model

Artifact

Operation Agent

Workspace

Environment

Manual

has

use

generateupdate

createdispose

link, unlink

consult

createjoinquit

Belief

Goal

Plan

External Action Internal Action

createdelete

adoptleave

createdelete

commit leave

focus, unfocus

primitive operationscompositionassociation dependencyconcept mapping

Trigger eventObservable Property

dimension border

Action

Observable Event

achieve

Environment Dimension

Agent Dimension

Organisation Dimension

Cardinalities are not represented

Content

Message

SpeechAct

Interaction Dimension

sendreceive

focus, unfocus

MissionRole

Group Social Scheme

NormGoalLink

Organisation

JaCaMo Meta-model [Boissier et al., 2011], based on Cartago [Ricci et al., 2009b],

Jason [Bordini et al., 2007],Moise [Hübner et al., 2009a] meta-models

36

Page 29: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Outline

IntroductionMotivationMulti-Agent Oriented Programming (MAOP)MAOP Perspective in the JaCaMo Platform

37

Page 30: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

JaCaMo Platformhttp://jacamo.sourceforge.net

Java Platform

CArtAgO, Jason, NOPL engine

Operating System

artifact(SB,SchemeBoard,ID1)artifact(CONS,Console,ID2)...

WorkspaceArtifact

linkArtifactslookupArtifact(make/dispose)ArtifactquitWorkspace

workspace(WspName,ID)...

NodeArtifact

createWorkspacejoinWorkspacejoinRemoteWorkspaceshutdownNode

SpecificationGroupsPlayersGoalsObbligations

SchemeBoard

commintMissionleaveMissionsetGoalAchieved

Console

printprintln

SpecificationSchemesGoals

GroupBoard

leaveRoleaddSchemeremoveScheme

adoptRole

Agent

Plan

......

Agent dimension

Artifact

Operations

......

Environment dimension Organisation dimension

Mission

Goal

......

JaCaMo workspace

Platform level

Execution level

Conceptuallevel

38

Page 31: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Execution Platform

Agent execution and communication management infrastructures canbe:

Centralised: all agents in the same machine,one thread by agent, very fast

Centralised (pool): all agents in the same machine,fixed number of threads,allows thousands of agents

Distributed (jade): distributed agents, FIPA-ACL communication usingJade

.... others defined by the user (e.g. AgentScape)

Environment execution can be:

Centralised: one centralised environment shared by the agents, isautomatically included in case of no other specification

Distributed: multiple environments shared by the agents – specified bycartago("infrastructure")

39

Page 32: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

MAS Configuration & Deployment LanguageI Simple way of defining a multi-agent system within the JaCaMo

Platform

Example (Building House Definition)

mas house_building {agent giacomo // the agent that wants to build a houseagent companyA // builder agents (see their code for details)agent companyBagent companyC {

instances: 5}agent companyD {

instances: 13}agent companyE

asl-path: src/agt, src/agt/inc}

40

Page 33: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Eclipse JaCaMo plugin

41

Page 34: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Agent’s Mind inspector

42

Page 35: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Organization Structure inspector

43

Page 36: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Organization Structure inspector

44

Page 37: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Organization Functioning inspector

45

Page 38: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Organization Functioning inspector

46

Page 39: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Integration of Multi-Agent technologies

I Agent: Jason agents [Bordini et al., 2007]I Environment: CArtAgO platform [Ricci et al., 2009b]I Organisation: Moise framework with the extended/refactored

version of theMoise OMI: ORA4MAS [Hübner et al., 2009a]I Interaction: based on tight integration between Jason and KQML

or ACL/FIPA

Dimensions are integrated with dedicated bridges:I A–E (c4Jason, c4Jadex [Ricci et al., 2009b])I E–O (count-as/enact

rules [Piunti et al., 2009, de Brito et al., 2015])I A–O is for free (thanks to ORA4MAS). Strategies and reasoning

capabilities from J -Moise+ [Hübner et al., 2007] can be reused.

Open to integrate other Multi-Agent Technologies

47

Page 40: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Integration with other technologies

I Web 2.0I implementing Web 2.0 applicationsI http://jaca-web.sourceforge.net

I Android PlatformsI implementing mobile computing applications on top of the Androidplatform

I http://jaca-android.sourceforge.netI Web Services

I building SOA/Web Services applicationsI http://cartagows.sourceforge.net

I Arduino PlatformsI building “Web of Things” ApplicationsI http://jacamo.sourceforge.net

I Semantic TechnologiesI JaSA: Semantically Aware AgentsI http://cartago.sourceforge.net

48

Page 41: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Multi-Agent Oriented ProgrammingThe JaCaMo Platform

O. Boissier1 R.H. Bordini2 J.F. Hübner3 A. Ricci4

1. Mines Saint-Etienne (ENSMSE), Saint Etienne, France

2 Pontificia Universidade Catolica do Rio Grande do Sul (PUCRS), Porto Alegre, Brazil

3. Federal University of Santa Catarina (UFSC), Florianópolis, Brazil

4. University of Bologna (UNIBO), Bologna, Italy

September 2016

49

Page 42: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

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.

Boissier, O., Bordini, R. H., Hübner, J. F., Ricci, A., and Santi, A. (2011).Multi-agent oriented programming with jacamo.Science of Computer Programming, pages –.

Bordini, R. H., Hübner, J. F., and Wooldrige, M. (2007).Programming Multi-Agent Systems in AgentSpeak using Jason.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.In Coordination, Organizations, Institutions and Norms in Agent Systems IV,volume 5428/2009 of LNCS. Springer Berlin / Heidelberg.

50

Page 43: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Bibliography II

Ciortea, A. (2011).Modeling relationships for privacy preservation in virtual communities.Master’s thesis, University Politehnica of Bucharest.

de Brito, M., Hübner, J. F., and Boissier, O. (2015).Bringing constitutive dynamics to situated artificial institutions.In Proc. of 17th Portuguese Conference on Artificial Intelligence (EPIA 2015),volume 9273 of LNCS, pages 624–637. Springer.

de Brito, M., Hübner, J. F., and Bordini, R. H. (2012).Programming institutional facts in multi-agent systems.In COIN-12, Proceedings.

Demazeau, Y. (1995).From interactions to collective behaviour in agent-based systems.In Proc. of the 1st European Conf. on Cognitive Science. Saint-Malo, pages117–132.

51

Page 44: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Bibliography III

Demazeau, Y. (1997).Steps towards multi-agent oriented programming.(slides Workshop) 1st International Workshop on Multi-Agent Systems,IWMAS’97, Boston.

Hübner, J. F., Boissier, O., Kitio, R., and Ricci, A. (2009a).Instrumenting Multi-Agent Organisations with Organisational Artifacts andAgents.Journal of Autonomous Agents and Multi-Agent Systems.

Hübner, J. F., Sichman, J. S., and Boissier, O. (2007).Developing Organised Multi-Agent Systems Using the MOISE+ Model:Programming Issues at the System and Agent Levels.Agent-Oriented Software Engineering, 1(3/4):370–395.

Hübner, J. F., Vercouter, L., and Boissier, O. (2009b).Instrumenting Multi-Agent Organisations with reputation artifacts.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.

52

Page 45: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Bibliography IV

Huhns, M. N. (2001).Interaction-oriented programming.In First international workshop, AOSE 2000 on Agent-oriented softwareengineering, pages 29–44, Secaucus, NJ, USA. Springer-Verlag New York, Inc.

Kitio, R. (2011).Gestion de l’ouverture au sein d’organisations multi-agents. Une approche baséesur des artefacts organisationnels.PhD thesis, ENS Mines Saint-Etienne.

Occello, M., Baeijs, C., Demazeau, Y., and Koning, J.-L. (2004).MASK: An AEIO toolbox to design and build multi-agent systems.In et al., C., editor, Knowledge Engineering and Agent Technology, IOS Serieson Frontiers in AI and Applications. IOS press, Amsterdam.

Omicini, A., Ricci, A., and Viroli, M. (2008).Artifacts in the A&A meta-model for multi-agent systems.Autonomous Agents and Multi-Agent Systems, 17(3):432–456.

53

Page 46: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Bibliography VPiunti, M., Ricci, A., Boissier, O., and Hubner, J. (2009).Embodying organisations in multi-agent work environments.In IEEE/WIC/ACM International Conference on Web Intelligence andIntelligent Agent Technology (WI-IAT 2009), Milan, Italy.

Pynadath, D. V., Tambe, M., Chauvat, N., and Cavedon, L. (1999).Toward team-oriented programming.In Jennings, N. R. and Lespérance, Y., editors, ATAL, volume 1757 of LNCS,pages 233–247. Springer.

Ricci, A., Piunti, M., and Viroli, M. (2009a).Externalisation and internalization: A new perspective on agent modularisationin multi-agent system programming.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.

Ricci, A., Piunti, M., and Viroli, M. (2011).Environment programming in multi-agent systems: an artifact-basedperspective.Autonomous Agents and Multi-Agent Systems, 23:158–192.

54

Page 47: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Bibliography VI

Ricci, A., Piunti, M., Viroli, M., and Omicini, A. (2009b).Environment programming in CArtAgO.In Multi-Agent Programming: Languages,Platforms and Applications,Vol.2.Springer.

Ricordel, P. and Demazeau, Y. (2002).VOLCANO: a vowels-oriented multi-agent platform.In Dunin-Keplicz and Nawarecki, editors, Proceedings of the InternationalConference of Central Eastern Europe on Multi-Agent Systems (CEEMAS’01),volume 2296 of LNAI, pages 252–262. Springer Verlag.

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.

55

Page 48: Multi-Agent Oriented Programmingboissier/enseignement/maop16/pdf/maop.pdfMulti-Agent Oriented Programming TheJaCaMoPlatform O.Boissier1 R.H.Bordini2 J.F.Hübner3 A.Ricci4 1. MinesSaint-Etienne(ENSMSE),SaintEtienne,France

Bibliography VII

Stratulat, T., Ferber, J., and Tranier, J. (2009).

MASQ: towards an integral approach to interaction.

In AAMAS (2), pages 813–820.

56