Supervisors tom holvoet pierre verbaeten
This presentation is the property of its rightful owner.
Sponsored Links
1 / 48

Supervisors Tom Holvoet & Pierre Verbaeten PowerPoint PPT Presentation


  • 74 Views
  • Uploaded on
  • Presentation posted in: General

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. A Challenging Application. Three Important Problem Characteristics.

Download Presentation

Supervisors Tom Holvoet & Pierre Verbaeten

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Supervisors tom holvoet pierre verbaeten

An Architecture-Centric Approach for Software Engineering with Situated Multiagent SystemsPhD Defense Danny WeynsKatholieke Universiteit LeuvenOctober 11, 2006

Supervisors

Tom Holvoet & Pierre Verbaeten


Supervisors tom holvoet pierre verbaeten

A Challenging Application


Three important problem characteristics

Three Important Problem Characteristics

  • Dynamic and changing operating conditions

  • Inherent distribution of resources, locality of activity

  • Stakeholders have various – possiblyconflicting – quality goals


Engineering such software systems

Engineering such Software Systems

Structure of the software

  • Dynamic and changing operating conditions

  • Inherent distribution of resources, locality of activity

  • Stakeholders have various – possiblyconflicting – quality goals


Engineering such software systems1

Engineering such Software Systems

Structure of the software

  • Dynamic and changing operating conditions

  • Inherent distribution of resources, locality of activity

  • Stakeholders have various – possiblyconflicting – quality goals

Approach to engineer software


Structure of the software

Self-management: deal with dynamism and change autonomously

Decentralized control: system functionality results from cooperative subsystems

Situated Multiagent Systems

Structure of the Software

  • Dynamic and changing operating conditions

  • Inherent distribution of resources, locality of activity


Approach to engineer software

Compel stakeholders to deal explicitly with (conflicting) quality goals

Architecture-Centric Software Engineering

Approach to Engineer Software

  • Stakeholders have various – possibly conflicting – quality goals

Architecture-Centric Software Development


Contribution of this research

Contribution of this Research

Problem characteristics:

  • Dynamism andchange

  • Locality of activity

  • (Conflicting) qualitygoals

Engineering such systems

Architecture-centric software engineering

Situated multiagent systems

Expertise

Reference architecture for situated multiagent systems


Outline

Outline

  • Architecture-Centric Software Engineering

    • Development Life-Cycle

    • Role of Reference Architecture

  • Reference Architecture for Situated Multiagent Systems

  • Conclusions


Architecture centric software engineering development life cycle

Architecture-Centric Software EngineeringDevelopment Life Cycle


Architecture centric software engineering role of reference architecture

Architecture-Centric Software EngineeringRole of Reference Architecture

Architectural Design

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


Outline1

Outline

  • Architecture-Centric Software Engineering

  • Reference Architecture for Situated Multiagent Systems

    • Background

    • Environment as a First-Class Design Abstraction

    • Advanced Mechanisms for Adaptability

  • Conclusions


Reference architecture background

Reference ArchitectureBackground

  • 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


Reference architecture background1

Reference ArchitectureBackground

Some of the applications


Outline2

Outline

  • Architecture-Centric Software Engineering

  • Reference Architecture for Situated Multiagent Systems

    • Background

    • Environment as a First-Class Design Abstraction

    • Advanced Mechanisms for Adaptability

  • Conclusions


Reference architecture environment as a first class design abstraction

Reference ArchitectureEnvironment as a First-Class Design Abstraction

Common perspective on a multiagent system

Agents

Environment = Deployment Context


Reference architecture environment as a first class design abstraction1

Reference ArchitectureEnvironment as a First-Class Design Abstraction

Common perspective on a multiagent system

Agents

  • Given

  • - Part of the world where problem has to be solved

  • Resources external to the system

Deployment Context

Environment


Reference architecture environment as a first class design abstraction2

Reference ArchitectureEnvironment as a First-Class Design Abstraction

Application environment as a design abstraction

Agents

Application Environment

Environment

Deployment Context


Reference architecture environment as a first class design abstraction3

Reference ArchitectureEnvironment as a First-Class Design Abstraction

Agents

  • Part to be designed

  • - Abstraction of deployment context

  • Interaction mediation

Application Environment

Environment

  • Given

  • - Part of the world where problem has to be solved

  • Resources external to the system

Deployment Context


Reference architecture application environment

Reference Architecture: Application Environment


Situated multiagent systems exploiting the environment an example

Transport agent (logically)

AGV agent

Transport agent (physically)

Situated Multiagent SystemsExploiting the Environment: An Example


Situated multiagent systems exploiting the environment an example1

Situated Multiagent SystemsExploiting the Environment: An Example


Situated multiagent systems exploiting the environment an example2

Situated Multiagent SystemsExploiting the Environment: An Example


Situated multiagent systems exploiting the environment an example3

Situated Multiagent SystemsExploiting the Environment: An Example


Reference architecture exploiting the environment an example

Reference ArchitectureExploiting 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


Reference architecture exploiting the environment an example1

Reference ArchitectureExploiting the Environment: An Example

Result: full complexity in the agents


Reference architecture exploiting the environment an example2

Reference ArchitectureExploiting 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


Exploiting the environment an example

Exploiting the Environment: An Example

Application environment in the AGV transportation system


Exploiting the environment an example1

Exploiting the Environment: An Example

Collision Avoidance


Reference architecture exploiting the environment an example3

Reference ArchitectureExploiting 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


Reference architecture exploiting the environment an example4

Reference ArchitectureExploiting 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


Outline3

Outline

  • Architecture-Centric Software Engineering

  • Reference Architecture for Situated Multiagent Systems

    • Background

    • Environment as a First-Class Design Abstraction

    • Advanced Mechanisms for Adaptability

  • Conclusions


Reference architecture advanced mechanisms for adaptability

Reference ArchitectureAdvanced 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


Reference architecture advanced mechanisms for adaptability1

Reference ArchitectureAdvanced Mechanisms for Adaptability


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

Reference ArchitectureAdvanced Mechanism for Adaptability


Reference architecture roles and situated commitments

Reference ArchitectureRoles and Situated Commitments


Reference architecture roles and situated commitments1

Reference ArchitectureRoles and Situated Commitments


Reference architecture roles and situated commitments2

Reference ArchitectureRoles and Situated Commitments


Reference architecture roles and situated commitments3

Reference ArchitectureRoles and Situated Commitments


Reference architecture roles and situated commitments4

Reference ArchitectureRoles and Situated Commitments


Reference architecture roles and situated commitments5

Reference ArchitectureRoles and Situated Commitments


Reference architecture roles and situated commitments6

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

Reference ArchitectureRoles and Situated Commitments


Outline4

Outline

  • Architecture-Centric Software Engineering

  • Reference Architecture for Situated Multiagent Systems

  • Conclusions

    • Summary of Contributions

    • Lessons Learned for Applying Agents in Industry

    • Future Work


Contributions

Reference architecture for situated multiagent systems

Contributions

Problem characteristics:

  • Dynamism andchange

  • Locality of activity

  • Qualitygoals (flexibility, openness)

  • Promising perspective on software engineering with multiagent systems

Architecture-centric software engineering

Additional architectural approaches

Software Architecture


Contributions1

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


Lessons learned

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


Future research

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


Closing reflection

A key for industrial adoption of multiagent systems

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


  • Login