Organisation and Environment Oriented Programming Olivier Boissier 1 , Rafael H. Bordini 2 , Jomi F. H¨ ubner 3 , Alessandro Ricci 4 1 EMSE, France [email protected]2 PUC-RS, Brazil [email protected]3 DAS-UFSC, Brazil [email protected]4 University of Bologna, Italy [email protected]European Agent Systems Summer School May, 2012 — Valencia, Spain Outline of the course Introduction EOP About Environment Oriented Programming A&A and CArtAgO OOP About Organisation Oriented Programming Moise Conclusions Practical Exercise: a hands-on lab session! Introduction Introduction EOP OOP Conclusion Abstractions in Multi-Agent Systems role org mission schema ORGAMISATION LEVEL AGENT LEVEL ENDOGENOUS ENVIRONMENT LEVEL wsp artifact network node EXOGENOUS ENVIRONMENT agent 4 / 165 Introduction EOP OOP Conclusion Abstractions in Multi-Agent Systems Individual Agent Level: autonomy, situatedness Cognitive Concepts: beliefs, desires, goals, intentions, plans Reasoning Cycle: sense/reason/act, reactive/pro-active behaviour Environment Level: resources and services that agents can access and control; sensing and acting in an environment Social and Organisation Level: cooperation, coordination, regulation patterns Roles: rights, responsibilities, ... Organisational Rules: constraints on roles and their interactions, norms, deadlines, ... Organisational Structures: topology of interaction patterns and relations over activity control 5 / 165 Introduction EOP OOP Conclusion Agent Oriented Programming Proposed by Shoham [Shoham, 1993] Use of mentalistic notions and a societal view of computation (anthropomorphism) Levels of abstraction: Agents – Organisations – Environment Programming languages for agents have developed a lot since then, but still not a mature paradigm Programming languages/platforms for organisation and environment are also being developed Some agent development platforms have a formal basis Many influenced by the BDI agent architecture 6 / 165
28
Embed
T2. Organization and Environment oriented programming
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Organisation and Environment
Oriented Programming
Olivier Boissier1, Rafael H. Bordini2,Jomi F. Hubner3, Alessandro Ricci4
Environment Level: resources and services that agents canaccess and control; sensing and acting in an environment
Social and Organisation Level: cooperation, coordination,regulation patterns
Roles: rights, responsibilities, ...Organisational Rules: constraints on roles and theirinteractions, norms, deadlines, ...Organisational Structures: topology of interaction patternsand relations over activity control
5 / 165
Introduction EOP OOP Conclusion
Agent Oriented Programming
Proposed by Shoham [Shoham, 1993]
Use of mentalistic notions and a societal view ofcomputation (anthropomorphism)
Levels of abstraction: Agents – Organisations – Environment
Programming languages for agents have developed a lotsince then, but still not a mature paradigm
Programming languages/platforms for organisation andenvironment are also being developed
Some agent development platforms have a formal basis
Many influenced by the BDI agent architecture
6 / 165
Introduction EOP OOP Conclusion
BDI Architecture
Intentional Stance (Dennett)
Practical Reasoning (Bratman)
IRMA (Bratman, Isreal, Pollack)
PRS (George↵, Lansky)
dMARS (Kinny)
BDI Logics and Agent Architecture (Rao, George↵)
Wooldridge, Singh, ...
7 / 165
Introduction EOP OOP Conclusion
Programming Languages for Cognitive Agents
Programming Languages for Multi-Agent SystemsE.g., Jason, Jadex, JACK, 2APL, GOAL, Brahms, JIAC, Agent
Factory, MetateM, Golog variants, ...
Architecture to represent an agent mental state:
Beliefs: information available to agent (e.g., about theenvironment or other agents)Goals: states of a↵airs that the agent wants to achieveEvents: changes in agents beliefs or goalsCapabilities: reusable modules of activities that the agentcan performPlans: reasoning about courses of action to achieve goalsRules: reasoning about beliefs
8 / 165
Introduction EOP OOP Conclusion
Programming Languages for Cognitive Agents
Some steps of a Reasoning Cycle:
Determining Relevant Plans for Handling EventsSelect a Plan for ExecutionExecute Part of an Intended PlansHandle Plan Failures
Agent Interpreter is an infinite loop of such reasoning cycles.The architecture and reasoning cycle together with the agentprogram (specially plans) determine the behaviour of the agent.
9 / 165
Introduction EOP OOP Conclusion
Programming Languages/Platforms for Organisations
Concepts used to specify the state of an organisation:
process inside agent inside of attaining awareness orunderstanding sensory information, creating perceptsperceived form of external stimuli or their absence
Actions
the means to a↵ect, change or inspect the environment
+!check(slots) : not garbage(r1) <- next(slot); !!check(slots).+!check(slots).
+garbage(r1) : not .desire(carry_to(r2)) <- !carry_to(r2). +!carry_to(R) <- // remember where to go back ?pos(r1,X,Y); -+pos(last,X,Y); // carry garbage to r2 !take(garb,R); // goes back and continue to check !at(last); !!check(slots)....
PC-rules: goto( X, Y ) <- true | { @blockworld( sensePosition(), POS ); B(POS = [A,B]); if B(A > X) then { @blockworld( west(), L ); goto( X, Y ) } else if B(A < X) then { @blockworld( east(), L ); goto( X, Y ) } else if B(B > Y) then { @blockworld( north(), L ); goto( X, Y ) } else if B(B < Y) then { @blockworld( south(), L ); goto( X, Y ) } }
attaching, detaching, and notifying observers (software designpattern);registering and unregistering agents;adding and removing entities;managing the agents-entities-relation;performing actions and retrieving percepts;managing the environment
Interface Intermediate language
to facilitate data-exchangeencoding percepts, actions, events
Vision: environment as a first-class abstraction inMAS [Weyns et al., 2007, Ricci et al., 2010b]
application or endogenous environments, i.e. thatenvironment which is an explicit part of the MASproviding an exploitable design & programming abstractionto build MAS applications
Outcomedistinguishing clearly between the responsibilities of agent andenvironment
Environment definition revised [Weyns et al., 2007]
The environment is a first-class abstraction that provides thesurrounding conditions for agents to exist and that mediates boththe interaction among agents and the access to resources
Programming Models for the Environment: Desiderata
Abstraction
keeping the agent abstraction level e.g. no agents sharing andcalling OO objectse↵ective programming models for controllable and observablecomputational entities
Modularity
away from the monolithic and centralised view
Orthogonality
wrt agent models, architectures, platformssupport for heterogeneous systems
AGRE / AGREEN / MASQ [Stratulat et al., 2009]AGRE – integrating the AGR (Agent-Group-Role)organisation model with a notion of environment
Environment used to represent both the physical and socialpart of interaction
AGREEN / MASQ – extending AGRE towards a unifiedrepresentation for physical, social and institutionalenvironmentsBased on MadKit platform [Gutknecht and Ferber, 2000a]
GOLEM [Bromuri and Stathis, 2008]Logic-based framework to represent environments for situatedcognitive agentscomposite structure containing the interaction betweencognitive agents and objects
A&A and CArtAgO [Ricci et al., 2010b]introducing a computational notion of artifact to design andimplement agent environments
Individual or personal artifactsdesigned to provide functionalities for a single agent use
e.g. an agenda for managing deadlines, a library...
Social artifacts
designed to provide functionalities for structuring andmanaging the interaction in a MAScoordination artifacts [Omicini et al., 2004], organisationartifacts, ...
Actions and Percepts in Artifact-Based Environments
Explicit semantics defined by the (endogenous)environment [Ricci et al., 2010c]
success/failure semantics, execution semanticsdefining the contract (in the SE acceptation) provided by theenvironment
actions ! artifacts’ operationthe action repertoire is given by the dynamic set of operationsprovided by the overall set of artifacts available in the workspacecan be changed by creating/disposing artifacts
action success/failure semantics is defined by operationsemantics
percepts ! artifacts’ observable properties + signalsproperties represent percepts about the state of the environmentsignals represent percepts concerning events signalled by theenvironment
Artifact base class@OPERATION annotation to mark artifact?s operationsset of primitives to work define/update/.. observablepropertiessignal primitive to generate signals
Basic operation featuresoutput parameters to represent action feedbackslong-term operations, with a high-level support forsynchronization (await primitive, guards)
Given the action/operation map, by executing an action theintention/activity is suspended until the correspondingoperation has completed or failed
action completion events generated by the environment andautomatically processed by the agent/environment platformbridgeno need of explicit observation and reasoning by agents toknow if an action succeeded
However the agent execution cycle is not blocked!
the agent can continue to process percepts and possiblyexecute actions of other intentions
Other CArtAgO features not discussed in this lecturelinkability
executing chains of operations across multiple artifacts
multiple workspaces
agents can join and work in multiple workspaces, concurrentlyincluding remote workspaces
RBAC security model
workspace artifact provides operations to set/change theaccess control policies of the workspace, depending on theagent roleruling agents’ access and use of artifacts of the workspace
...
See CArtAgO papers and manuals for more information
Organisations are structured, patterned systems of activity,knowledge, culture, memory, history, and capabilities that aredistinct from any single agent [Gasser, 2001] Organisations are supra-individual phenomenaA decision and communication schema which is applied to a set ofactors that together fulfill a set of tasks in order to satisfy goalswhile guarantying a global coherent state [Malone, 1999] definition by the designer, or by actors, to achieve a purposeAn organisation is characterised by: a division of tasks, adistribution of roles, authority systems, communication systems,contribution-retribution systems [Bernoux, 1985] pattern of predefined cooperationAn arrangement of relationships between components, whichresults into an entity, a system, that has unknown skills at the levelof the individuals [Morin, 1977] pattern of emergent cooperation
Components of OOP:Organisation Modelling Language (OML)
Declarative specification of the organisation(s)
Specific constraints, norms and cooperation patternsimposed on the agents
Based on an organisational model
e.g. AGR [Ferber and Gutknecht, 1998],TeamCore [Tambe, 1997],Islander [Esteva et al., 2001],Moise+ [Hubner et al., 2002],Opera [Dignum and Aldewereld, 2010],2OPL [Dastani et al., 2009a],...
Number of agentsDuration and repetitiveness of agent activitiesHeterogeneity of the agentsNumber of designers of agentsAgent ability to act and decideOpenness, scalability, dynamism
More and more applications require the integration of humancommunities and technological communities (ubiquitous andpervasive computing), building connected communities(ICities) in which agents act on behalf of users
While the autonomy of the agents is essential, it may causeloss in the global coherence of the system and achievement ofthe global purpose
Embedding norms within the organisation of an MAS is away to constrain the agents’ behaviour towards the globalpurposes of the organisation, while explicitly addressing theautonomy of the agents within the organisation
Normative organisatione.g. when an agent adopts a role, it adopts a set of behavioural
constraints that support the global purpose of theorganisation.It may decide to obey or disobey these constraints
An organisational specification is required to enable theorganisation to “reason” about itself and about the agents inorder to ensure the achievement of its global purpose:
to decide to let agents enter into/leave from theorganisation during execution
Organisation is no more closed
to decide to let agents change/adapt the currentorganisation
Organisation is no more static and blind
to govern agents behaviour in the organisation (i.e. monitor,enforce, regiment)
Agent: Active entity that plays roles within groups. An agentmay have several roles and may belong to several groupsGroup: set of agents sharing common characteristics, i.e.context for a set of activities. Two agents cant communicatewith each other if they dont belong to the same groupRole: Abstract representation of the status, position,function of an agent within a group
B: agents’ possible behaviors P: agents’ behaviors that lead to global purpose E: agents’ possible behaviors constrained by the environment OS: agents’ possible behaviors structurally constrained by the organization
Shell for TEAMwork is a general framework to enable agentsto participate in teamwork
Di↵erent applications: Attack, Transport, Robocup soccerBased on an enhanced SOAR architecture and 300 domainindependent SOAR rules
Principles:
Team synchronisation: Establish joint intentions, Monitorteam progress and repair, Individual may fail or succeed inown roleReorganise if there is a critical role failureReassign critical roles based on joint intentionsDecision theoretic communication
B: agents’ possible behaviors P: agents’ behaviors that lead to global purpose E: agents’ possible behaviors constrained by the environment OS: agents’ possible behaviors structurally constrained by the organization OF: agents’ possible behaviors functionally constrained by the organization
B: agents’ possible behaviors P: agents’ behaviors that lead to global purpose E: agents’ possible behaviors constrained by the environment OS: agents’ possible/permitted/obliged behaviors structurally constrained by the organisation OI: agents’ possible/permitted/obliged behaviors interactionally constrained by the organisation
Tag-based language(issued fromMoise [Hannoun et al., 2000],Moise+ [Hubner et al., 2002],MoiseInst [Gateau et al., 2005])
OMI (infrastructure)
developed as an artifact-based working environment(ORA4MAS [Hubner et al., 2009b] based on CArtAgOnodes, refactoring of S-Moise+ [Hubner et al., 2006] andSynai [Gateau et al., 2005])
Integrations
Agents and Environment (c4Jason, c4Jadex[Ricci et al., 2009c])Environment and Organisation ([Piunti et al., 2009a])Agents and Organisation (J -Moise+ [Hubner et al., 2007])
Specifies the structure of an MAS along three levels:
Individual with RoleSocial with LinkCollective with Group
Components:
Role: label used to assign rights and constraints on thebehavior of agents playing itLink: relation between roles that directly constrains theagents in their interaction with the other agents playing thecorresponding rolesGroup: set of links, roles, compatibility relations used todefine a shared context for agents playing roles in it
Specifies the expected behaviour of an MAS in terms ofgoals along two levels:
Collective with SchemeIndividual with Mission
Components:Goals:
Achievement goal (default type). Goals of this type shouldbe declared as satisfied by the agents committed to them,when achievedMaintenance goal. Goals of this type are not satisfied at aprecise moment but are pursued while the scheme is running.The agents committed to them do not need to declare thatthey are satisfied
Scheme: global goal decomposition tree assigned to a group
Any scheme has a root goal that is decomposed into subgoals
Missions: set of coherent goals assigned to roles withinnorms
back obliged m1 get the ball, go ... 1 minuteleft obliged m2 be placed at ..., kick ... 3 minuteright obliged m2 1 dayattacker obliged m3 kick to the goal, ... 30 seconds
An event occurring on an artifact, in a particular context, maycount-as an institutional event
transforms the events created in the working environmentinto activation of an organisational operation
indirect automatic updating of the organisation
Enact rule
An event produced on an organisational artifact, in a specificinstitutional context, may “enact” change and updating of theworking environment (i.e., to promote equilibrium, avoidundesiderable states)
Installing automated control on the working environment
Even without the intervention of organisational/sta↵ agents(regimenting actions on physical artifacts, enforcingsanctions, ...) 127 / 165
Whenever something changes in the organisation, the agentarchitecture updates the agent belief base accordingly producingevents (belief update from perception)
Ensures that the agents follow some of the constraintsspecified for the organisation
Helps the agents to work together
The organisation is interpreted at runtime, it is nothardwired in the agents code
The agents ‘handle’ the organisation (i.e. their artifacts)
It is suitable for open systems as no specific agentarchitecture is required
All available as open source at
http://moise.souceforge.net
137 / 165
Conclusions
Introduction EOP OOP Conclusion
Putting the Pieces Together
BELIEFSGOALSPLANS
INTERNALEVENTS
ACTIONSPERCEPTIONS
AGENTS
MISSIONS
ROLES
DEONTIC RELATIONS
GROUPS
NORMS
SANCTIONSREWARDS
ORGANISATIONS
RESOURCES
LEGACY
SERVICES OBJECTS
ENVIRONMENTS
COMMUNICATIONLANGUAGES
INTERACTIONPROCOLS
SPEECH ACTS
INTERACTIONS
MOISE Framework
JASON Agent Prog. Language
JADE Platform
CarTaGO Platform?
139 / 165
Introduction EOP OOP Conclusion
Exploiting Orthogonality
Treating AOP & EOP & OOP as orthogonal dimensionsimproving separation of concerns
using the best abstraction level and tools to tackle thespecific dimensions, avoiding design pitfalls, such as usingagents to implement either non-autonomous entities (e.g., ablackboard agent) or a collection of autonomous entities(group agent)
promoting openness and heterogeneity
E.g., heterogeneous agents working in the same organisation,heterogeneous agents working in the same environment, thesame agent working in di↵erent and heterogeneousorganisations, the same agent working in di↵erentheterogeneous environments
Outcome from a programming point of view
code more clean and understandableimproving modularity, extensibility, reusability
140 / 165
Introduction EOP OOP Conclusion
Beyond Orthogonality: Synergetic Integration
Exploiting one dimension to e↵ectively design and programalso aspects related to the other dimensions
for instance, using the environment to design, implement andrepresent at runtime the organisation infrastructure
Designing and implementing MAS behaviours that are basedon explicit bindings between the di↵erent dimensions
for instance, exploiting events occurring in the environment torepresent events that have an e↵ect at the institutional orsocial level
141 / 165
Introduction EOP OOP Conclusion
Exploiting Synergy between the A/E Dimensions
Mapping
agent actions into environment operations (e.g. CArtAgO)environment observable state/events into agent beliefs
Outcome
agents with dynamic action repertoireuniformly implementing any mechanisms (e.g. coordinationmechanism) in terms of actions/percepts
no need to extend agents with special purpose primitives
exploiting a new type of agent modularity, based onexternalization [Ricci et al., 2009a]
142 / 165
Introduction EOP OOP Conclusion
Exploiting Synergy on A/O Integration
Normative deliberative agents
possibility to define mechanisms for agents to evolve withinan organisation/several organisationspossibility to define proper mechanisms for deliberating on theinternalisation/adoption/violation of norms
Reorganisation, adaptation of the organisation
possibility to define proper mechanisms fordiagnosing/evaluating/refining/defining organisations
“Deliberative” Organisations
possibility to define dedicated organisational strategies for theregulation/adaptation of the organisation behaviour(organisational agents)
143 / 165
Introduction EOP OOP Conclusion
Exploiting Synergy between the E/O Dimensions
Grounding the organisation infrastructure
implemented using environment abstractions... that agents perceive then as first-class entities of theirworld
Mapping
organisational state reified by the environment computationalstateorganisational actions/perceptions reified by actions/perceptson the environment stateorganisational functionalities encapsulated by suitablydesigned environment abstractions
Outcome
“the power is back to agents” [Hubner et al., 2009c]by perceiving and acting upon that environment, agents canreason and dynamically adapt the organisation infrastructure
144 / 165
Introduction EOP OOP Conclusion
E/O Synergy Example: Implementing Regimentation
Exploiting the environment role of enabler and mediator ofagent interaction
by providing actions and generating percepts
�! natural place where to embed and enforceorganisational rules and norms
a↵ecting action execution behaviour and percepts generation
Examplessimple: a game-board artifact in an artifact-basedenvironment
providing agents actions to make movesencapsulating and enforcing the rules of the game
Exploiting the environment to create, represent, and managedependencies and rules that are meaningful at theorganisational level
A main example: implementing constitutiverules [Searle, 1997]
events occurring in concrete environments conveyed as socialand institutional eventstypically represented in the form X counts as Y in Can example: reaching the environment state S counts asachieving the organisational goal G
The integration E/O allows for naturally design andimplementation of these kinds of rules
without adding any further concepts wrt the ones belongingto the E/O dimensions
Unifying agents, environments and organisation perspectives
Volcano platform [Ricordel and Demazeau, 2002]MASK platform [Occello et al., 2004]MASQ [Stratulat et al., 2009], extending AGRE andAGREENEmbodied organisations [Piunti, 2010]Situated E-Institutions [Campos et al., 2009]
Normative programming andinfrastructures [Hubner et al., 2009a,Tinnemeier et al., 2009, Dastani et al., 2009b]
148 / 165
References[Behrens et al., 2010] Behrens, T., Bordini, R., Braubach, L., Dastani, M.,
Dix, J., Hindriks, K., Hbner, J., and Pokahr, A. (2010). An interface
for agent-environment interaction. In In Proceedings of InternationalWorkshop on Programming Multi-Agent Systems (ProMAS-8).
[Bernoux, 1985] Bernoux, P. (1985). La sociologie des organisations.Seuil, 3eme edition.
[Bordini et al., 2007] Bordini, R., Hubner, J., and Wooldridge, M. (2007).
Programming Multi-Agent Systems in AgentSpeak Using Jason. Wiley-
Interscience.
[Bromuri and Stathis, 2008] Bromuri, S. and Stathis, K. (2008). Situating
Cognitive Agents in GOLEM. In Weyns, D., Brueckner, S., and De-
mazeau, Y., editors, Engineering Environment-Mediated Multi-AgentSystems, volume 5049 of LNCS, pages 115–134. Springer Berlin / Hei-
delberg.
[Campos et al., 2009] Campos, J., Lopez-Sanchez, M., Rodriguez-Aguilar,
J. A., and Esteva, M. (2009). Formalising situatedness and adaptation
in electronic institutions. In Coordination, Organizations, Institutionsand Norms in Agent Systems IV, volume 5428/2009 of LNCS. SpringerBerlin / Heidelberg.
[Carabelea, 2007] Carabelea, C. (2007). Reasoning about autonomy inopen multi-agent systems - an approach based on the social power the-ory. in french, ENS Mines Saint-Etienne.
[Dastani, 2008] Dastani, M. (2008). 2APL: a practical agent programming
language. Autonomous Agent and Multi-Agent Systems, 16(3):214–248.
[Dastani et al., 2009] Dastani, M., Tinnemeier, N., and Meyer, J.-J. C.
(2009). A programming language for normative multi-agent systems.
In Multi-Agent Systems: Semantics and Dynamics of OrganizationalModels. IGI-Global.
[Dignum and Aldewereld, 2010] Dignum, V. and Aldewereld, H. (2010).
Operetta: Organization-oriented development environment. In Proceed-ings of LADS @ MALLOW 2010, pages 14–20.
[Esteva et al., 2001] Esteva, M., Rodriguez-Aguiar, J. A., Sierra, C., Gar-
cia, P., and Arcos, J. L. (2001). On the formal specification of elec-
tronic institutions. In Dignum, F. and Sierra, C., editors, Proceedingsof the Agent-mediated Electronic Commerce, LNAI 1191, pages 126–
147, Berlin. Springer.
[Esteva et al., 2004] Esteva, M., Rodrıguez-Aguilar, J. A., Rosell, B., and
L., J. (2004). AMELI: An agent-based middleware for electronic insti-
tutions. In Jennings, N. R., Sierra, C., Sonenberg, L., and Tambe, M.,
editors, Proc. of the 3rd Int. Joint Conf. on Autonomous Agents andMulti-Agent Systems (AAMAS’04), pages 236–243, New York, USA.
ACM.
[Ferber and Gutknecht, 1998] Ferber, J. and Gutknecht, O. (1998). A
meta-model for the analysis and design of organizations in multi-agents
systems. In Demazeau, Y., editor, Proceedings of the 3rd Interna-tional Conference on Multi-Agent Systems (ICMAS’98), pages 128–
135. IEEE Press.
[Gasser, 2001] Gasser, L. (2001). Organizations in multi-agent systems.
In Pre-Proceeding of the 10th European Worshop on Modeling Au-tonomous Agents in a Multi-Agent World (MAAMAW’2001), Annecy.
[Gateau et al., 2005] Gateau, B., Boissier, O., Khadraoui, D., and Dubois,
E. (2005). Moiseinst: An organizational model for specifying rights and
duties of autonomous agents. In Third European Workshop on Multi-Agent Systems (EUMAS 2005), pages 484–485, Brussels Belgium.
[Gutknecht and Ferber, 2000a] Gutknecht, O. and Ferber, J. (2000a). The
MADKIT agent platform architecture. In Agents Workshop on Infras-tructure for Multi-Agent Systems, pages 48–55.
[Gutknecht and Ferber, 2000b] Gutknecht, O. and Ferber, J. (2000b). The
MadKit agent platform architecture. In Agents Workshop on Infras-tructure for Multi-Agent Systems, pages 48–55.
[Hannoun et al., 2000] Hannoun, M., Boissier, O., Sichman, J. S., and
Sayettat, C. (2000). Moise: An organizational model for multi-agent
systems. In Monard, M. C. and Sichman, J. S., editors, Proceedings ofthe International Joint Conference, 7th Ibero-American Conference onAI, 15th Brazilian Symposium on AI (IBERAMIA/SBIA’2000), At-ibaia, SP, Brazil, November 2000, LNAI 1952, pages 152–161, Berlin.
Springer.
[Hubner et al., 2009a] Hubner, J. F., Boissier, O., and Bordini, R. H.
(2009a). Normative programming for organisation management infras-
tructures. In MALLOW Workshop on Coordination, Organization,Institutions and Norms in Agent Systems in Online Communities(COIN-MALLOW 2009).
[Hubner et al., 2009b] Hubner, J. F., Boissier, O., Kitio, R., and Ricci, A.
(2009b). Instrumenting multi-agent organisations with organisational
artifacts and agents: “Giving the organisational power back to the
agents”. Autonomous Agents and Multi-Agent Systems. DOI-URL:
http://dx.doi.org/10.1007/s10458-009-9084-y.
[Hubner et al., 2009c] Hubner, J. F., Boissier, O., Kitio, R., and Ricci, A.
(2009c). Instrumenting Multi-Agent Organisations with Organisational
Artifacts and Agents. Journal of Autonomous Agents and Multi-AgentSystems.
[Hubner et al., 2002] Hubner, J. F., Sichman, J. S., and Boissier, O.
(2002). A model for the structural, functional, and deontic specifica-
tion of organizations in multiagent systems. In Bittencourt, G. and Ra-
malho, G. L., editors, Proceedings of the 16th Brazilian Symposium onArtificial Intelligence (SBIA’02), volume 2507 of LNAI, pages 118–128,
Berlin. Springer.
[Hubner et al., 2006] Hubner, J. F., Sichman, J. S., and Boissier, O.
(2006). S-MOISE+: A middleware for developing organised multi-agent
systems. In Boissier, O., Dignum, V., Matson, E., and Sichman, J. S., ed-
itors, Coordination, Organizations, Institutions, and Norms in Multi-Agent Systems, volume 3913 of LNCS, pages 64–78. Springer.
[Hubner et al., 2007] Hubner, 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.
[Malone, 1999] Malone, T. W. (1999). Tools for inventing organizations:
Toward a handbook of organizational process. Management Science,45(3):425–443.
[Molesini et al., 2005] Molesini, A., Omicini, A., Denti, E., and Ricci, A.
(2005). SODA: A roadmap to artefacts. In Dikenelli, O., Gleizes, M.-
P., and Ricci, A., editors, 6th International Workshop “EngineeringSocieties in the Agents World” (ESAW’05), pages 239–252, Kusadası,
Aydın, Turkey. Ege University.
[Morin, 1977] Morin, E. (1977). La methode (1) : la nature de la nature.Points Seuil.
[Occello et al., 2004] 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 Tech-nology, IOS Series on Frontiers in AI and Applications. IOS press, Am-
sterdam.
[Okuyama et al., 2008] Okuyama, F. Y., Bordini, R. H., and
da Rocha Costa, A. C. (2008). A distributed normative infras-
tructure for situated multi-agent organisations. In Baldoni, M., Son,
T. C., van Riemsdijk, M. B., and Winiko�, M., editors, DALT, volume
5397 of Lecture Notes in Computer Science, pages 29–46. Springer.
[Oliva et al., 2010] Oliva, E., McBurney, P., Omicini, A., and Viroli, M.
(2010). Argumentation and artifacts for negotiation support. Interna-tional Journal of Artificial Intelligence, 4(S10):90–117. Special Issue
on Negotiation and Argumentation in Artificial Intelligence.
[Omicini et al., 2008] Omicini, A., Ricci, A., and Viroli, M. (2008). Ar-
tifacts in the A&A meta-model for multi-agent systems. AutonomousAgents and Multi-Agent Systems, 17(3):432–456.
[Omicini et al., 2004] Omicini, A., Ricci, A., Viroli, M., Castelfranchi, C.,
and Tummolini, L. (2004). Coordination artifacts: Environment-based
coordination for intelligent agents. In Proc. of the 3rd Int. Joint Conf.on Autonomous Agents and Multi-Agent Systems (AAMAS’04), vol-
ume 1, pages 286–293, New York, USA. ACM.
[Ossowski, 1999] Ossowski, S. (1999). Co-ordination in Artificial AgentSocieties: Social Structures and Its Implications for AutonomousProblem-Solving Agents, volume 1535 of LNAI. Springer.
[Piunti, 2010] Piunti, M. (2010). Embodied organizations: a unifying per-
spective in programming agents, organizations and environments. PhD
thesis.
[Piunti and Ricci, 2009] Piunti, M. and Ricci, A. (2009). Cognitive ar-
tifacts for intelligent agents in mas: Exploiting relevant information
residing in environments. In Knowledge Representation for Agentsand Multi-Agent Systems (KRAMAS 2008), volume 5605 of LNAI.Springer.
1
[Piunti et al., 2009a] Piunti, M., Ricci, A., Boissier, O., and Hubner, J.(2009a). Embodying organisations in multi-agent work environments. InIEEE/WIC/ACM International Conference on Web Intelligence andIntelligent Agent Technology (WI-IAT 2009), Milan, Italy.
[Piunti et al., 2009b] Piunti, M., Ricci, A., Boissier, O., and Hubner, J. F.(2009b). Embodied organisations in mas environments. In Braubach,L., van der Hoek, W., Petta, P., and Pokahr, A., editors, Proceedings of7th German conference on Multi-Agent System Technologies (MATES09), Hamburg, Germany, September 9-11, volume 5774 of LNCS, pages115–127. Springer.
[Piunti et al., 2008] Piunti, M., Ricci, A., Braubach, L., and Pokahr,A. (2008). Goal-directed interactions in artifact-based mas: Jadexagents playing in CARTAGO environments. In Proc. of the 2008IEEE/WIC/ACM Int. Conf. on Web Intelligence and IntelligentAgent Technology (IAT’08), volume 2. IEEE Computer Society.
[Platon et al., 2007] Platon, E., Mamei, M., Sabouret, N., Honiden, S.,and Parunak, H. V. (2007). Mechanisms for environments in multi-agentsystems: Survey and opportunities. Autonomous Agents and Multi-Agent Systems, 14(1):31–47.
[Pynadath and Tambe, 2003] Pynadath, D. V. and Tambe, M. (2003). Anautomated teamwork infrastructure for heterogeneous software agentsand humans. Autonomous Agents and Multi-Agent Systems, 7(1-2):71–100.
[Ricci et al., 2010a] Ricci, A., Denti, E., and Piunti, M. (2010a). A plat-form for developing SOA/WS applications as open and heterogeneousmulti-agent systems. Multiagent and Grid Systems International Jour-nal (MAGS), Special Issue about “Agents, Web Services and Ontolo-gies: Integrated Methodologies”. To Appear.
[Ricci et al., 2007a] Ricci, A., Omicini, A., Viroli, M., Gardelli, L., andOliva, E. (2007a). Cognitive stigmergy: Towards a framework basedon agents and artifacts. In Weyns, D., Parunak, H. V. D., and Michel,F., editors, Environments for MultiAgent Systems III, volume 4389 ofLNAI, pages 124–140. Springer.
[Ricci et al., 2008] Ricci, A., Piunti, M., Acay, L. D., Bordini, R., Hubner,J., and Dastani, M. (2008). Integrating artifact-based environmentswith heterogeneous agent-programming platforms. In Proceedings of7th International Conference on Agents and Multi Agents Systems(AAMAS08).
[Ricci et al., 2009a] Ricci, A., Piunti, M., and Viroli, M. (2009a). Ex-ternalisation and internalization: A new perspective on agent modu-larisation in multi-agent system programming. In Dastani, M., Fallah-Seghrouchni, A. E., Leite, J., and Torroni, P., editors, LADS, volume6039 of Lecture Notes in Computer Science, pages 35–54. Springer.
[Ricci et al., 2010b] Ricci, A., Piunti, M., and Viroli, M. (2010b). Environ-ment programming in multi-agent systems – an artifact-based perspec-tive. Autonomous Agents and Multi-Agent Systems. Published Onlinewith ISSN 1573-7454 (will appear with ISSN 1387-2532).
[Ricci et al., 2009b] Ricci, A., Piunti, M., Viroli, M., and Omicini, A.(2009b). Environment programming in CArtAgO. In Bordini, R. H., Das-tani, M., Dix, J., and El Fallah-Seghrouchni, A., editors, Multi-AgentProgramming: Languages, Platforms and Applications, Vol. 2, pages259–288. Springer Berlin / Heidelberg.
[Ricci et al., 2009c] Ricci, A., Piunti, M., Viroli, M., and Omicini, A.(2009c). Environment programming in CArtAgO. In Multi-Agent Pro-gramming: Languages,Platforms and Applications,Vol.2. Springer.
[Ricci et al., 2010c] Ricci, A., Santi, A., and Piunti, M. (2010c). Actionand perception in multi-agent programming languages: From exogenousto endogenous environments. In In Proceedings of International Work-shop on Programming Multi-Agent Systems (ProMAS-8).
[Ricci et al., 2007b] Ricci, A., Viroli, M., and Omicini, A. (2007b). TheA&A programming model & technology for developing agent environ-ments in MAS. In Dastani, M., El Fallah Seghrouchni, A., Ricci, A.,and Winiko�, M., editors, Programming Multi-Agent Systems, volume4908 of LNAI, pages 91–109. Springer Berlin / Heidelberg.
[Ricci et al., 2007c] Ricci, A., Viroli, M., and Omicini, A. (2007c).CArtAgO: A framework for prototyping artifact-based environments inMAS. In Weyns, D., Parunak, H. V. D., and Michel, F., editors, En-vironments for MultiAgent Systems III, volume 4389 of LNAI, pages67–86. Springer. 3rd International Workshop (E4MAS 2006), Hakodate,Japan, 8 May 2006. Selected Revised and Invited Papers.
[Ricordel and Demazeau, 2002] Ricordel, P. and Demazeau, Y. (2002).VOLCANO: a vowels-oriented multi-agent platform. In Dunin-Kepliczand Nawarecki, editors, Proceedings of the International Conferenceof Central Eastern Europe on Multi-Agent Systems (CEEMAS’01),volume 2296 of LNAI, pages 252–262. Springer Verlag.
[Rocha Costa and Dimuro, 2009] Rocha Costa, A. C. d. and Dimuro, G.(2009). A minimal dynamical organization model. In Dignum, V., edi-tor, Multi-Agent Systems: Semantics and Dynamics of OrganizationalModels, chapter XVII, pages 419–445. IGI Global.
[Russell and Norvig, 2003] Russell, S. and Norvig, P. (2003). ArtificialIntelligence, A Modern Approach (2nd ed.). Prentice Hall.
[Santi et al., 2011] Santi, A., Guidi, M., and Ricci, A. (2011). Jaca-android: An agent-based platform for building smart mobile applica-tions. In Languages, Methodologies and Development Tools for Multi-agent systems, volume 6822 of LNAI. Springer Verlag.
[Searle, 1997] Searle, J. R. (1997). The Construction of Social Reality.Free Press.
[Shoham, 1993] Shoham, Y. (1993). Agent-oriented programming. Artif.Intell., 60(1):51–92.
[Stratulat et al., 2009] Stratulat, T., Ferber, J., and Tranier, J. (2009).MASQ: towards an integral approach to interaction. In AAMAS (2),pages 813–820.
[Tambe, 1997] Tambe, M. (1997). Towards flexible teamwork. Journal ofArtificial Intelligence Reseearch, 7:83–124.
[Tinnemeier et al., 2009] Tinnemeier, N., Dastani, M., Meyer, J.-J., andvan der Torre, L. (2009). Programming normative artifacts with declar-ative obligations and prohibitions. In IEEE/WIC/ACM InternationalJoint Conference on Web Intelligence and Intelligent Agent Technol-ogy (WI-IAT 2009).
[Viroli et al., 2007] Viroli, M., Holvoet, T., Ricci, A., Schelfthout, K., andZambonelli, F. (2007). Infrastructures for the environment of multiagentsystems. Autonomous Agents and Multi-Agent Systems, 14(1):49–60.
[Weyns and Holvoet, 2004] Weyns, D. and Holvoet, T. (2004). A formalmodel for situated multi-agent systems. Fundamenta Informaticae,63(2-3):125–158.
[Weyns and Holvoet, 2007] Weyns, D. and Holvoet, T. (2007). A referencearchitecture for situated multiagent systems. In Environments for Mul-tiagent Systems III, volume 4389 of LNCS, pages 1–40. Springer Berlin/ Heidelberg.
[Weyns et al., 2007] Weyns, D., Omicini, A., and Odell, J. J. (2007). Envi-ronment as a first-class abstraction in multi-agent systems. AutonomousAgents and Multi-Agent Systems, 14(1):5–30.
[Weyns and Parunak, 2007] Weyns, D. and Parunak, H. V. D., editors(2007). Special Issue on Environments for Multi-Agent Systems, vol-ume 14 (1) of Autonomous Agents and Multi-Agent Systems. SpringerNetherlands.
[Weyns et al., 2005] Weyns, D., Parunak, H. V. D., Michel, F., Holvoet,T., and Ferber, J. (2005). Environments for multiagent systems: State-of-the-art and research challenges. In Weyns, D., Parunak, H. V. D.,Michel, F., Holvoet, T., and Ferber, J., editors, Environment for Multi-Agent Systems, volume 3374, pages 1–47. Springer Berlin / Heidelberg.
[Wooldridge, 2002] Wooldridge, M. (2002). An Introduction to Multi-Agent Systems. John Wiley & Sons, Ltd.