Presentation is loading. Please wait.

Presentation is loading. Please wait.

An Architecture-Centric Approach for Software Engineering with Situated Multiagent Systems PhD Defense Danny Weyns Katholieke Universiteit Leuven October.

Similar presentations


Presentation on theme: "An Architecture-Centric Approach for Software Engineering with Situated Multiagent Systems PhD Defense Danny Weyns Katholieke Universiteit Leuven October."— Presentation transcript:

1 An Architecture-Centric Approach for Software Engineering with Situated Multiagent Systems PhD Defense Danny Weyns Katholieke Universiteit Leuven October 11, 2006 Supervisors Tom Holvoet & Pierre Verbaeten

2 A Challenging Application

3 Three Important Problem Characteristics 1.Dynamic and changing operating conditions 2.Inherent distribution of resources, locality of activity 3.Stakeholders have various – possibly conflicting – quality goals

4 Engineering such Software Systems 1.Dynamic and changing operating conditions 2.Inherent distribution of resources, locality of activity 3.Stakeholders have various – possibly conflicting – quality goals Structure of the software

5 Engineering such Software Systems 1.Dynamic and changing operating conditions 2.Inherent distribution of resources, locality of activity 3.Stakeholders have various – possibly conflicting – quality goals Structure of the software Approach to engineer software

6 Structure of the Software 1.Dynamic and changing operating conditions 2.Inherent distribution of resources, locality of activity Situated Multiagent Systems Self-management: deal with dynamism and change autonomously Decentralized control: system functionality results from cooperative subsystems

7 Approach to Engineer Software 3.Stakeholders have various – possibly conflicting – quality goals Architecture-Centric Software Development Architecture-Centric Software Engineering Compel stakeholders to deal explicitly with (conflicting) quality goals

8 Contribution of this Research Architecture-centric software engineering Problem characteristics: 1.Dynamism and change 2.Locality of activity 3.(Conflicting) quality goals Situated multiagent systems Reference architecture for situated multiagent systems Engineering such systems Expertise

9 Outline Architecture-Centric Software Engineering –Development Life-Cycle –Role of Reference Architecture Reference Architecture for Situated Multiagent Systems Conclusions

10 Architecture-Centric Software Engineering Development Life Cycle

11 Architecture-Centric Software Engineering Role of Reference Architecture Design Software Architecture Apply proven architectural approaches to achieve main quality requirements Reference Architecture “Best of best practices” Integrated set of architectural patterns Blueprint to develop new software architectures for systems with similar requirements Architectural Design

12 Outline Architecture-Centric Software Engineering Reference Architecture for Situated Multiagent Systems –Background –Environment as a First-Class Design Abstraction –Advanced Mechanisms for Adaptability Conclusions

13 Reference Architecture Background Target domain –Dynamism and change –Locality of activity –Important quality goals: flexibility and openness Development process –Research and development of various applications –Derived common functions and structures = building blocks of the reference architecture

14 Reference Architecture Background Some of the applications

15 Outline Architecture-Centric Software Engineering Reference Architecture for Situated Multiagent Systems –Background –Environment as a First-Class Design Abstraction –Advanced Mechanisms for Adaptability Conclusions

16 Reference Architecture Environment as a First-Class Design Abstraction Agents Environment = Deployment Context Common perspective on a multiagent system

17 Reference Architecture Environment as a First-Class Design Abstraction Given - Part of the world where problem has to be solved -Resources external to the system Deployment Context Common perspective on a multiagent system Agents Environment

18 Reference Architecture Environment as a First-Class Design Abstraction Agents Application environment as a design abstraction Application Environment Environment Deployment Context

19 Reference Architecture Environment as a First-Class Design Abstraction Part to be designed - Abstraction of deployment context -Interaction mediation Given - Part of the world where problem has to be solved -Resources external to the system Application Environment Deployment Context Agents Environment

20 Reference Architecture: Application Environment

21 Situated Multiagent Systems Exploiting the Environment: An Example AGV agent Transport agent (logically) Transport agent (physically)

22 Situated Multiagent Systems Exploiting the Environment: An Example

23

24

25 Reference Architecture Exploiting the environment: an example Coordination in AGV transportation system –Assignment of tasks –Collision avoidance –Charging batteries –… How to coordinate agents? –“Classic approach”: agents coordinate by exchanging messages –Exploit the environment

26 Reference Architecture Exploiting the Environment: An Example Result: full complexity in the agents

27 Reference Architecture Exploiting the environment: an example Exploit the environment to coordinate However –Deployment context restricts how agents can exploit the environment We introduced an application environment –Enables agents to coordinate through the environment

28 Exploiting the Environment: An Example Application environment in the AGV transportation system

29 Exploiting the Environment: An Example Collision Avoidance

30 Reference Architecture Exploiting the environment: an example Advantages of exploiting the environment to coordinate agents (1) –Avoid complex agents by splitting up responsibilities Agents are responsible for projecting/removing hulls Application environment is responsible for determining which AGV can drive on

31 Reference Architecture Exploiting the environment: an example Advantages of exploiting the environment to coordinate agents (2) –Flexibility and openness AGVs can dynamically remove hull and select alternative route Application environment takes into account AGVs that enter/leave collision range

32 Outline Architecture-Centric Software Engineering Reference Architecture for Situated Multiagent Systems –Background –Environment as a First-Class Design Abstraction –Advanced Mechanisms for Adaptability Conclusions

33 Reference Architecture Advanced Mechanisms for Adaptability We have developed an integrated architecture for situated agents Integrates set of advanced mechanisms for adaptability –Selective perception –Protocol-based communication –Roles and situated commitments

34 Reference Architecture Advanced Mechanisms for Adaptability

35 Reference Architecture Advanced Mechanism for Adaptability Roles and situated commitments –Endow situated agents with abilities for explicit social interaction Role –Coherent part of functionality in context of an organization Situated Commitment –Engagement to give preference to the actions in a particular role –Driven by conditions in the environment in which the agents are situated

36 Reference Architecture Roles and Situated Commitments

37

38

39

40

41

42 Building blocks for social organization –Enable agents to set up collaborations Social interaction is driven by the context in which agents are situated –Agents flexibly adapt their behavior with changing circumstances in the environment

43 Outline Architecture-Centric Software Engineering Reference Architecture for Situated Multiagent Systems Conclusions –Summary of Contributions –Lessons Learned for Applying Agents in Industry –Future Work

44 Contributions Architecture-centric software engineering Software Architecture Reference architecture for situated multiagent systems Problem characteristics: 1.Dynamism and change 2.Locality of activity 3.Quality goals (flexibility, openness) Promising perspective on software engineering with multiagent systems Additional architectural approaches

45 Contributions Reference architecture for situated multiagent systems –Environment as first-class design abstraction –Set of advanced mechanisms for adaptability Selective perception Roles and situated commitments Protocol-based communication

46 Lessons Learned Motivations to choose for a multiagent system –Problem characteristics –Quality requirements Integration with legacy Gradual integration Evaluation –Software architecture for qualities –Simulation for functionality

47 Future Research Disciplined approach for architectural design with a reference architecture Connection software architecture and multiagent systems –Robustness, scalability –Patterns for distribution –Crosscutting concerns –Scientific foundation for verifying global behavior

48 Closing Reflection Situated agency has been studied and applied for two decades Reference architecture reifies our expertise that is founded on rich tradition Reference architecture demonstrates how MAS can be integrated with mainstream software engineering practice A key for industrial adoption of multiagent systems


Download ppt "An Architecture-Centric Approach for Software Engineering with Situated Multiagent Systems PhD Defense Danny Weyns Katholieke Universiteit Leuven October."

Similar presentations


Ads by Google