Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

TuCSoN Coordination for MAS Situatedness: Towards a Methodology

653 views

Published on

Agent-based technologies embed solutions for critical issues in agent-oriented software engineering. In this paper we describe the coordination-based approach to MAS situatedness as promoted by the TuCSoN middleware, by sketching the steps of an agent-oriented methodology from the TuCSoN meta-model down to the TuCSoN programming environment.

Published in: Science
  • Login to see the comments

TuCSoN Coordination for MAS Situatedness: Towards a Methodology

  1. 1. TuCSoN Coordination for MAS Situatedness Towards a Methodology Stefano Mariani, Andrea Omicini fs.mariani, andrea.omicinig@unibo.it Dipartimento di Informatica { Scienza e Ingegneria (DISI) Alma Mater Studiorum|Universita di Bologna, Italy Talk @ WOA 2014 Workshop nazionale Dagli Oggetti agli Agenti Universita di Catania, Italy 26 Settembre 2014 Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 1 / 45
  2. 2. Outline 1 Context, Motivation Goals 2 Requirement Analysis: The TuCSoN Meta-model 3 Model Design: The TuCSoN Architecture Agent Side Environment Side Between agents and environment: Situated coordination 4 Implementation: ReSpecT API 5 Deployment: Smart Home Appliances Coordination 6 Conclusion Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 2 / 45
  3. 3. Context, Motivation Goals Outline 1 Context, Motivation Goals 2 Requirement Analysis: The TuCSoN Meta-model 3 Model Design: The TuCSoN Architecture 4 Implementation: ReSpecT API 5 Deployment: Smart Home Appliances Coordination 6 Conclusion Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 3 / 45
  4. 4. Context, Motivation Goals Context Motivation Situatedness in multi agent systems (MAS) amounts to being sensitive to environment change, as well as aecting it in turn [Ferber and Muller, 1996] This is the core of the notion of situated action, as those actions arising from strict interaction with the environment [Suchman, 1987] Thus, dependencies among agents and the environment are one of the sources of complexity within MAS|the other being social dependencies, between agents' activities [Malone and Crowston, 1994] Situatedness Coordination Coordination, as the discipline of managing dependencies [Malone and Crowston, 1994], could then be used to deal with both social and situated interaction. Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 4 / 45
  5. 5. Context, Motivation Goals Goals We introduce the situated coordination approach promoted by the TuCSoN model and technology for coordination in MAS [Omicini and Zambonelli, 1999] We describe how TuCSoN supports MAS programmers in each macro-stage of a typical MAS software engineering process We sketch how to deploy a TuCSoN-coordinated situated infrastructure for smart home MAS coordination Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 5 / 45
  6. 6. Requirement Analysis: The TuCSoN Meta-model Outline 1 Context, Motivation Goals 2 Requirement Analysis: The TuCSoN Meta-model 3 Model Design: The TuCSoN Architecture 4 Implementation: ReSpecT API 5 Deployment: Smart Home Appliances Coordination 6 Conclusion Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 6 / 45
  7. 7. Requirement Analysis: The TuCSoN Meta-model The TuCSoN Meta-model I Activities The goal-directed/oriented proceedings resulting into actions of any sort, which make things happen in a MAS. Through actions, activities in a MAS are social [Castelfranchi, 1998] and situated [Suchman, 1987]. From the standpoint endorsed here, agents do not exist because they resemble some real-world entity; they exist as the means through which activities can be modelled in a MAS|as a way to model actions along with their driving goals. Environment change The (possibly unpredictable) variations in the properties or structure of the world surrounding a MAS that aect it in any way|thus, which the MAS needs to account for. Such variations do not express any speci
  8. 8. c goal, either because this does not exist, or because it is not to be / cannot be modelled in the MAS. Environment (change) can be modelled through the resource abstraction, as a non-intelligent entity either continuously producing events or reactively waiting for requests to perform its function. Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 7 / 45
  9. 9. Requirement Analysis: The TuCSoN Meta-model The TuCSoN Meta-model II Dependencies Activities depend on other activities (social dependencies), as well as on environment change (situated dependencies). Thus, dependencies motivate and cause interaction, both social and situated, based on the sort of dependency taking place. Events To provide a uniform representation of MAS dynamics, as well as to promote a coordination-oriented approach in modelling both social and situated dependencies, both activities and environment changes are represented via events. Therefore, in TuCSoN, events reify any social and any situated interaction taking place within the MAS, driving the coordination process. Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 8 / 45
  10. 10. Requirement Analysis: The TuCSoN Meta-model The TuCSoN Meta-model III Summing up MAS designers should think about the problem at hand in terms of (i) a bunch of goal-directed/oriented activities (agents) (ii) interacting with each other, in uenced by / in uencing some sort of (iii) changes in their environment (resources), therefore (iv) generating events which (v) have to be properly coordinated Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 9 / 45
  11. 11. Model Design: The TuCSoN Architecture Outline 1 Context, Motivation Goals 2 Requirement Analysis: The TuCSoN Meta-model 3 Model Design: The TuCSoN Architecture 4 Implementation: ReSpecT API 5 Deployment: Smart Home Appliances Coordination 6 Conclusion Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 10 / 45
  12. 12. Model Design: The TuCSoN Architecture TuCSoN Architecture I Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 11 / 45
  13. 13. Model Design: The TuCSoN Architecture TuCSoN Architecture II agents | Any computational entity willing to exploit TuCSoN coordination services [Viroli and Omicini, 2006] is a TuCSoN agent. In order for agents to be recognised as coordinables [Ciancarini, 1996] by TuCSoN, they need to obtain an ACC, released by TuCSoN itself. Agents (interaction-oriented) activities result into coordination operations, targeting the coordination media (a tuple centre) actually handled by the ACC. ACC | Agent Coordination Contexts [Omicini, 2002] are TuCSoN architectural components devoted to represent and mediate agents activities within the MAS. In particular, an ACC maps coordination operations (thus both social and situation actions) into events and dispatches them to tuple centres. ACCs preserve agent autonomy [Omicini, 2002]: while the ACC takes care of asynchronously dispatching events, the agent is free to undertake other activities. This enables uncoupling in control, reference, space and time. Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 12 / 45
  14. 14. Model Design: The TuCSoN Architecture TuCSoN Architecture III probes | Environmental resources in TuCSoN are called probes. They can be sources of perceptions (sensors), targets of actions (actuators), or both: TuCSoN models them in the same way, using transducers. In fact, as for agents with ACC, probes do not directly interact with the MAS, but through transducer mediation. transducers | The architectural run-time components in charge of representing and mediating environment changes regarding probes [Casadei and Omicini, 2009]. Each probe is assigned a transducer, which is specialised to handle events to/from that probe. So, transducers translate (i) probes properties changes into events, to be dispatched to tuple centres, and (ii) MAS events into properties changes, to be sensed/eected on probes. Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 13 / 45
  15. 15. Model Design: The TuCSoN Architecture TuCSoN Architecture IV events | TuCSoN adopts ReSpecT [Omicini, 2007] event model, representing any sort of event happening in the MAS in a uniform way. TuCSoN events record: the immediate and primary cause of the event [Ricci et al., 2008], its outcome, who is the source of the event, who is its target, when and where the event was generated. In this way, any event is situated both in space and time, as well as within its execution context. Thus, tuple centres can eectively coordinate events while accounting for the situated nature of interactions to its full extent. tuple centres | ReSpecT tuple centres [Omicini and Denti, 2001] are TuCSoN architectural component mediating all interactions happening in the MAS, thus in charge of handling events in order to resolve dependencies. By adopting ReSpecT tuple centres, TuCSoN relies on (i) the ReSpecT language to program coordination laws, and (ii) the ReSpecT situated event model to implement events. Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 14 / 45
  16. 16. Model Design: The TuCSoN Architecture TuCSoN Architecture V Summing up MAS designers should (i) rely on ACC and therein de
  17. 17. ned primitives to interact with other TuCSoN-coordinated entities (ii) de
  18. 18. ne transducers to represent the relevant portions of MAS environment (iii) program TuCSoN tuple centres through ReSpecT speci
  19. 19. cations to handle TuCSoN events|therefore, to coordinate the MAS Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 15 / 45
  20. 20. Model Design: The TuCSoN Architecture Agent Side Outline 1 Context, Motivation Goals 2 Requirement Analysis: The TuCSoN Meta-model 3 Model Design: The TuCSoN Architecture Agent Side Environment Side Between agents and environment: Situated coordination 4 Implementation: ReSpecT API 5 Deployment: Smart Home Appliances Coordination 6 Conclusion Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 16 / 45
  21. 21. Model Design: The TuCSoN Architecture Agent Side Interaction Overview 1 acquire an ACC 2 choose each operation invocation semantics 3 expect operations result to be available accordingly 4 release ACC when TuCSoN services are no longer needed Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 17 / 45
  22. 22. Model Design: The TuCSoN Architecture Agent Side Synchronous Operation Invocation Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 18 / 45
  23. 23. Model Design: The TuCSoN Architecture Agent Side Asynchronous Operation Invocation Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 19 / 45
  24. 24. Model Design: The TuCSoN Architecture Environment Side Outline 1 Context, Motivation Goals 2 Requirement Analysis: The TuCSoN Meta-model 3 Model Design: The TuCSoN Architecture Agent Side Environment Side Between agents and environment: Situated coordination 4 Implementation: ReSpecT API 5 Deployment: Smart Home Appliances Coordination 6 Conclusion Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 20 / 45
  25. 25. Model Design: The TuCSoN Architecture Environment Side Interactions Overview 1 register probes causing their transducer instantiation 2 be aware that environmental events are always generated asynchronously 3 deregister probes when they are no longer needed Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 21 / 45
  26. 26. Model Design: The TuCSoN Architecture Environment Side Sensor Probe Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 22 / 45
  27. 27. Model Design: The TuCSoN Architecture Environment Side Actuator Probe Mariani, Omicini (DISI, UniBO) Situatedness in TuCSoN WOA 2014, 26/9/2014 23 / 45
  28. 28. Model Design: The TuCSoN Architecture Environment Side Interactions Explained 1 (message 2:2) The transducer builds the event corresponding to the perception operation and dispatches it to the tuple centre target of the interaction 2 (messages 2:2:1

×