Design of MultiAgent Systems - PowerPoint PPT Presentation

About This Presentation
Title:

Design of MultiAgent Systems

Description:

When is an agent-based solution appropriate? Agent-oriented analysis and design techniques ... Some important methods of the Aglet class: onCreation() run() dispatch ... – PowerPoint PPT presentation

Number of Views:99
Avg rating:3.0/5.0
Slides: 33
Provided by: aiR1
Category:

less

Transcript and Presenter's Notes

Title: Design of MultiAgent Systems


1
Design of Multi-Agent Systems
  • Teacher
  • Bart Verheij
  • Student assistants
  • Albert Hankel
  • Elske van der Vaart
  • Web site
  • http//www.ai.rug.nl/verheij/teaching/dmas/
  • (Nestor contains a link)

2
Overview
  • When is an agent-based solution appropriate?
  • Agent-oriented analysis and design techniques
  • Pitfalls of agent development
  • Mobile agents
  • Open issues

3
When is an agent-based solution appropriate?
  • When the environment is open, dynamic, uncertain,
    complex
  • When agents are a natural metaphor
  • When data, control or expertise are distributed
  • In case of legacy systems
  • Legacy technologically obsolete, but
    functionally essential software

4
Overview
  • When is an agent-based solution appropriate?
  • Agent-oriented analysis and design techniques
  • Pitfalls of agent development
  • Mobile agents
  • Open issues

5
Agent-oriented analysis and design techniques
  • Goal
  • To assist in understanding a system
  • To assist in designing a system
  • Techniques consist of models and guidelines
  • Kinds
  • Inspired by object-oriented development
    methodologies
  • Adapted from knowledge engineering or other
    techniques

6
AAII Methodology
  • Australian AI Institute (1990s)
  • Based on object-oriented methodologies
  • Aimed at the construction of a set of models
    which define an agent system specification

7
AAII Methodology
8
AAII Methodology
  • Identify roles in the application domain and from
    there develop an agent class hierarchy
  • Identify the responsibilities, the services
    needed and provided by each role and determine
    the goals of each service
  • Determine plans that can be used to achieve goals
    and context conditions for the plans
  • Determine the belief structure of the system,
    i.e., the information requirements for each plan
    and goal

9
Gaia
  • Gaias goal is to allow a systematical route from
    system requirements to a detailed design that can
    be implemented directly
  • A system is analyzed as an organization, which is
    viewed as a collection of interrelated roles.
  • A role is defined by its responsibilities,
    permissions, activities, and protocols.
  • Responsibilities determine system functionality
    and can be divided in liveness and safety
    properties.
  • Something good happens vs. nothing bad happens

10
Agent UML
  • Based on the Unified Modelling Language (UML) for
    object-oriented modelling.
  • The associated methodology is called Rational
    Unified Process
  • Agent modifications
  • Expression of concurrent interaction threads
  • Roles
  • To allow that agents can play several roles

11
Desire
  • Framework for the design and formal specification
    of compositional systems
  • Specifies a graphical notation
  • Support tools, such as a graphical editor

12
Cassiopeia
  • Bottom-up start with required behaviors
  • Steps
  • Identify elementary behaviors
  • Identify relationships between elementary
    behaviors
  • Identify organizational behaviors of the system,
    e.g., group formation

13
Agents in Z
  • An agent specification framework
  • Entities with attributes
  • Objects entities with capabilities
  • Agents objects with goals
  • Autonomous agents agents with motivations
  • Emphasizes agents acting for one another instead
    of agents as rational systems

14
Agent-oriented analysis and design techniques
  • Dominant technique adapt object-oriented
    approaches
  • Disadvantages
  • Decomposition in objects at odds with
    decomposition in agents
  • Many aspects of agent systems are not allowed in
    object-oriented methodologies
  • (By the way where is the environment?)

15
Overview
  • When is an agent-based solution appropriate?
  • Agent-oriented analysis and design techniques
  • Pitfalls of agent development
  • Mobile agents
  • Open issues

16
Pitfalls of agent development
  • You oversell agents
  • Agents are not magic!
  • If you cant do it with ordinary software, you
    probably cant do it with agents
  • You get religious
  • Agents are not a universal solution
  • You dont know why you want agents
  • Agents new technology lots of hype!

17
Pitfalls of agent development
  • You want generic solutions to 1-off problems
  • Occurs in many software projects
  • Specific solution may be best
  • You confuse prototypes with systems
  • Prototypes are easy, field tested production
    systems are hard
  • You believe agents are a silver bullet
  • Silver bullet an order of magnitude
    improvement in software development
  • Good reasons to believe that agents are useful
    way of tackling some problems, but these
    arguments are largely untested in practice

18
Pitfalls of agent development
  • You forget its software
  • Developing any agent system is essentially
    experimentation. No tried and trusted techniques
  • Mundane software engineering (requirements
    analysis, specification, design, verification,
    testing) is forgotten
  • You forget its distributed
  • Distributed systems one of the most complex
    classes of computer system to design and
    implement
  • Typical multi-agent system will be more complex
    than a typical distributed system
  • Make use of DS expertise
  • You dont exploit concurrency
  • If you dont exploit concurrency, why have an
    agent solution?

19
Pitfalls of agent development
  • You want your own architecture
  • Great temptation to imagine you need your own
  • Driving forces behind this belief
  • not designed here mindset
  • intellectual property
  • But architecture development takes years and has
    no clear payback
  • You use too much AI
  • Temptation to focus on the AI aspects of the
    application
  • Fuelled by feature envy, where one reads about
    agents that have the ability to learn, plan,
    talk, sing, dance
  • You see agents everywhere
  • Dont call your on-off switch an agent!
  • Agents for addition, subtraction,

20
Pitfalls of agent development
  • You use too many agents
  • More than 10 agents big system
  • Large number of agents
  • emergent functionality
  • chaotic behavior
  • Lessons
  • keep interactions to a minimum
  • keep protocols simple
  • You use too few agents
  • Fails software engineering test of cohesion
    software modules have a single coherent function
  • You want to implement your own infrastructure
  • By the time this is developed, project resources
    gone!

21
Pitfalls of agent development
  • Your system is anarchic
  • Most agent systems require system-level
    engineering
  • For large systems, or for systems in which the
    society is supposed to act with some commonality
    of purpose, this is particularly true
  • Organization structure (even in the form of
    formal communication channels) is essential

22
Overview
  • When is an agent-based solution appropriate?
  • Agent-oriented analysis and design techniques
  • Pitfalls of agent development
  • Mobile agents
  • Open issues

23
Mobile agents
  • Mobile agents can transmit themselves

24
Mobile agents
  • Why mobile agents?
  • Low-bandwidth networks (hand-held PDAs)
  • Efficient use of network resources
  • Issues
  • Serialization (what is sent over the network? The
    agent program? Its data? Both? In what form?)
  • Hosting and remote execution
  • Security for hosts and agents
  • Heterogeneity of hosts

25
Telescript
  • Commercial language-based environment for
    constructing multi-agent systems
  • Aim palm-tops
  • Main concepts places and agents

26
Telescript
  • Tickets specify a journey
  • The journeys destination
  • The journeys completion time
  • Communication between agents
  • Across a network
  • Meeting
  • Agents have a permit and resources, such as
    money, lifetime, size

27
Telescript
  • Agents and places are executed by a Java-style
    virtual machine
  • Object-oriented language
  • Interpreted, not compiled
  • Two language levels high (what programmers
    see)/low (for efficient execution)
  • Persistent execution continues after switching a
    system off and on

28
Aglets
  • Java-based mobile agents platform
  • Some important methods of the Aglet class
  • onCreation()
  • run()
  • dispatch()
  • e.g., this.dispatch(new URL("atp//some.host.com/c
    ontext1"))

Contexts are hosts for agents
Agent Transfer Protocol
29
Overview
  • When is an agent-based solution appropriate?
  • Agent-oriented analysis and design techniques
  • Pitfalls of agent development
  • Mobile agents
  • Open issues

30
Open issues
  • Relationship with other software paradigms
  • Specifically agent-oriented methodologies
  • Engineering for open systems
  • Engineering for scalability

31
Overview
  • When is an agent-based solution appropriate?
  • Agent-oriented analysis and design techniques
  • Pitfalls of agent development
  • Mobile agents
  • Open issues

32
Student presentations
Write a Comment
User Comments (0)
About PowerShow.com