extending uml for agents and goals a tutorial on multi agent systems l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Extending UML for Agents and Goals: A Tutorial on Multi-Agent Systems PowerPoint Presentation
Download Presentation
Extending UML for Agents and Goals: A Tutorial on Multi-Agent Systems

Loading in 2 Seconds...

play fullscreen
1 / 98

Extending UML for Agents and Goals: A Tutorial on Multi-Agent Systems - PowerPoint PPT Presentation


  • 632 Views
  • Uploaded on

Extending UML for Agents and Goals: A Tutorial on Multi-Agent Systems Manuel Kolp University of Louvain Why Agent-Oriented Software?

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Extending UML for Agents and Goals: A Tutorial on Multi-Agent Systems' - emily


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
extending uml for agents and goals a tutorial on multi agent systems

Extending UML for Agents and Goals: A Tutorial on Multi-Agent Systems

Manuel Kolp

University of Louvain

why agent oriented software
Why Agent-Oriented Software?
  • Next generation software engineering will have to support open, dynamic architectures where components can accomplish tasks in a variety of operating environments.
  • Consider application areas such as eBusiness, application service provision, pervasive or P2P computing.
  • These all call for software components that find and compose services dynamically, establish/drop partnerships with other components and operate under a broad range of conditions.
  • Learning, planning, communication and negotiation become essential features for such software components.

...agents!

Manuel Kolp

what is an agent
What is an Agent?
  • A person, an organization, certain kinds of software.
    • Autonomous, pro-active, goal, knowledge oriented, adaptative
    • with/in its environment Intelligence
  • An agent has beliefs, goals (desires), intentions.
  • Agents are situated, autonomous, flexible, and social.
  • Human/organizational agents can’t be prescribed, they can only be partiallydescribed.

Manuel Kolp

why worry about human organizational agents
Why Worry About Human/Organizational Agents?
  • Because their goals lead to software requirements, and these influence the design of a software system.
  • Note the role of human/organizational agents in OOA, e.g., use cases.
  • Also note the role of agents in up-and-coming requirements engineering techniques such as KAOS [Dardenne93].
  • In KAOS, requirements analysis begins with a set of goals; these are analysed/decomposed to simpler goals which either lead to software requirements, or are delegated to external agents.

Manuel Kolp

a social computing paradigm
A Social Computing Paradigm
  • Software Agent
    • Implemented with/in software technologies
    • Environment : humans, machines, other agents, platforms.
    • To be completely specified during implementation.
  • Beliefs correspond to (object) state, intentions constitute a run-time concept. For design-time, the interesting new concept agents have that objects don’t have is...

...goals!

Multi-agent system: societies of individuals to achieve particular, possible common goals.

Manuel Kolp

agent individual characteristics
Agent: Individual Characteristics
  • Autonomous
    • Without direct external intervention.
  • Mobile
    • To transport itself from one environment to another.
  • Unpredictable
    • To act in not predictableways, even if the initial conditions are known
  • Rugged
    • To deal with errors and incomplete data robustly.

Manuel Kolp

agent social characteristics
Agent: Social Characteristics
  • Interactive
    • To communicate with the environment and other agents.
  • Adaptive
    • capable of responding to other agents and/or its environment.
  • Sociable
    • To act in as a representative of some entity.
  • Proactive
    • goal-oriented, purposeful. Does not simply react to the environment.

Manuel Kolp

agent social characteristics8
Agent: Social Characteristics
  • Coordinative
    • To perform activities in a shared environment with other agents.
  • Cooperative
    • To coordinate with other agents to achieve a common purpose; succeed or fail together.
  • Competitive
    • Antisocial Agent : maximizes his absolute profit; eliminates conccurrents at a minimal cost

Manuel Kolp

agent rationale characteristics
Agent: Rationale Characteristics
  • Intelligence for Agent
    • Knowledge (B.R.I.D.G. : beliefs, resources, intentions, desires, goals)
    • Communicate with symbolic language
  • The Belief-Desire-Intention (BDI) agent model from philosophy and cognitive science.
    • An agent has beliefs about the world and desires to satisfy, driving it to form intentions to act.
    • Mental states of an agent.

Manuel Kolp

inside the bdi model

Agent - Belief, Desire, Intentions

Beliefs - database

of perceived

world knowledge

Goals or Desires

Execution

Engine

Intentions -executing

plans

Pre-compiled plans

Inside the BDI Model

Human

Beliefs - perceived

understanding

of the world

Goals or desires

Accumulated behaviours

Manuel Kolp

example agents at work

Goal/Desire/Need

New Beliefs/Facts

Contextual Beliefs

Running Plan/Intention

Example: Agents at Work

Manuel Kolp

scenario for office supplying
Scenario for Office Supplying
  • A company that needs to order paper supplies enlist agents to monitorthe quantity and usage patterns of paper in thecompany, launching buying agents when supplies arelow.
  • Buying agents automatically collect informationon vendors and products that may fit the needs of thecompany, evaluate the offerings, make a decisionon which merchants and products to investigate,negotiate the transactions with themerchants,and finally place orders and make automatedpayments.

In Pattie Maes, Robert H. Guttman, andAlexandros G. Moukas, Agents that buy and sell, Communications ACM, March 1999/Vol. 42, No. 3

Manuel Kolp

agents @ microsoft net project
Agents @ Microsoft (.NET project)
  • Après vingt ans, les ordinateurs personnels ont été rejoints par une myriade d'engins - les ordinateurs de poche, les téléphones portables, les messagers sans fil... - que Microsoft se fait fort d'interconnecter.
  • L'idée force : ramener cette galaxie de gadgets sous un seul contrôle - celui du consommateur individuel, qui pourra décliner à sa guise ses « rôles » (vie privée, vie professionnelle) en un seul système. Les premiers exemples : passer d'avance sa commande type à sa chaîne de restauration rapide favorite pour éviter la file, conjuguer les fichiers du calendrier personnel et du carnet d'adresses téléphoniques pour faire suivre, selon un ordre de priorité à choisir, certains appels téléphoniques quand on n'est pas à son poste habituel.
  • Chaque individu contrôlera souverainement l'usage de ses données personnelles, promet Dan'l Lewin(chargé du projet « .NET », la plate-forme d'interconnexion universelle de Microsoft).

Le Soir 11/08/2001 and Bill Gates, Keynotes Address, 17th International Joint Conference on Artificial Intelligence August 2001, Seattle, USA

Manuel Kolp

user assistance
User Assistance
  • The animated help characters in Microsoft Office products.
  • Use bayesean networks to analyze and predict possible topics that the user may need helpwith.
    • Bill Gates, Keynotes Address, 17th International Joint Conference on Artificial Intelligence August 2001, Seattle, USA

Manuel Kolp

foreign exchange market
Foreign Exchange Market

L'euro a également succombé aux programmes de vente automatiques des institutions financières: les grands acteurs du marché des changes (banques, fonds, etc.) utilisent en effet des programmes dits “agents intelligents” qui déclenchent automatiquement un ordre de vente dans certaines conditions. Il semble que ces programmes se soient déclenchés ce mercredi matin à Londres après que l'euro a touché plusieurs fois le seuil des 88,51 cents , explique un cambiste allemand.

  • from Le Soir 09/07/2000

Manuel Kolp

searching the web bots engines crawler
Searching the Web : bots, engines, crawler

The original Lycos spiders have evolved into a multiagent system of cooperating components that can visit and analyze more than 10,000,000 Web pages each day.

    • In Richard Green and Sangam Pant,Multiagent Data Collection in Lycos, Communication of the ACM, March 1999/Vol. 42, No. 3
  • Alltheweb, Altavista, Yahoo, Hotbot, Google

Manuel Kolp

technical e support
Technical E-Support

Date:  Sat, 17 Feb 2001 23:32:27 -0500 From:  dellmobile@dell.com To:   mkolp@cs.toronto.edu Subject: #3OT##01# Case #: 200121712300 - Monitor #APTX#X-Mailer: Aptex Software SelectResponse X-MIME-Autoconverted: from 8bit to quoted-printable by smtp6.us.dell.com               

Thank you for contacting Dell US eSupport Services,This first response to your request will be conducted by an artificial intelligence tool designed to provide you with the fastest possible quality support. If the Automated Response does not answer your question, please look at the bottom of this email for further instructions on how to contact us about this issue.

((SRMACSR video:VideoCards_Mob01042001 SRMACSR))    

((SRCATSR D_M.Bad.Pixel SRCATSR))

--- Dell Automated Technical Assistant response ---

Manuel Kolp

pricebots
Pricebots
  • Dynamically set prices of products in a dynamic environment
  • Intention: Maximize long term profit
  • Desires: Optimize local price
  • Beliefs:
    • Competitor prices
    • Buyer behavior model
    • Competitor behavior model
  • Barnesandnoble.com, Chapters.com, Borders.com

BDI Model

Manuel Kolp

pricebots21
Pricebots

Manuel Kolp

bargain finders
Bargain Finders

Capture shoppers’ preferences for price and a limited set of products

Returns a list of productofferings differentiated by price.

Jango.exite.com

Manuel Kolp

key concepts for e commerce agents

E-mail Notifications

Match Profile with Catalog to offer personalized experience

Predictions on profile & «business intelligence», (data-mining, CRM)

OR

Match Extract Information from multiple sites about products user wants

Key Concepts for E-commerce Agents

Customer

Agent

Business

User Profile

Catalog

Zip, age, gender, purchase history, preferences, interests, needs, …

Item 1

Item 2

Item 3

Profile Manager

Manuel Kolp

other agents for organizations management
Other Agents for Organizations Management
  • Nomadic Computing (SUN, Lotus, Oracle)
  • Datawarehouse, Data Mining, CRM (Oracle, Informix)
  • Call Centers, Internet Routing (Bell, AT&T, CISCO, Juniper)
  • Knowledge Management (Ernst & Young)
  • Information Management (Digital)
  • Groupware, Workflow (Lotus, IBM)
  • Personal schedule management (Qualcomm)
  • E-trading (Bank of Montreal)
  • E-Brokering (Amazon, Barnes & Noble, Ebay, Andersen Consulting)
  • Role and personnel management (PeopleSoft)
  • Enterprise Resource Planning (Baan)
  • Peer 2 Peer (Napster, Gnutella Protocols)

Manuel Kolp

life cycle
Life Cycle
  • 1. Early requirements: understanding a problem by studying an organizationalsetting; output : organizational model with relevant actors, their goals and inter-dependencies
  • 2. Late requirements: system-to-be described within its operationalenvironment, with relevant functions and qualities
  • 3. Architectural design: global architecture defined in terms of interconnected subsystems
  • 4. Detailed design: behavior of each architectural component defined in detail
  • 5. Implementation: system implementation carried out consistently with detailed design

Manuel Kolp

the tropos project
The Tropos Project

Agent-oriented

programming

i*

TROPOS

GAIA

KAOS

Z

AUML

UML, Catalysis & Co.

!! The GAP !!

Detailed

design

Architectural

design

Early

requirements

Late

requirements

Implementation

Manuel Kolp

the tropos ontologies
The TROPOS Ontologies
  • (Formal) Specification of a conceptualization (= conceptual model)
    • Social -- the actors, their needs, obligations, capabilities
    • Intentional -- the relevant goals, how do they interrelate? How are they being met, and by whom?
  • Communicational -- how the actors dialogue with each other?
  • Process-oriented -- the relevant business processes
  • Structural -- the actors structuredwith their inter-relationships

Manuel Kolp

example a user 2 on line buying system
Example: A User 2 On-line Buying System
  • Media taxonomy
    • on-line catalog
    • DBMS
  • E-Shopping Cart
    • Check In
    • Buying
    • Check Out
  • Search Engine
    • catalog browser
    • Keywords
    • full-text
  • Billing Processor
    • $ transactions
    • orders
  • Multimedia
    • description
    • samples

Manuel Kolp

1 early requirements analysis with tropos
1. Early Requirements Analysis with TROPOS
  • Understanding the problem by studying an organizationalsetting;
  • Organizational model with relevant actors and respective goals.
  • i*[Yu95]
  • Running Example: A Business to Consumer System

Goals are relative, fulfillment is collaborative !!

Manuel Kolp

insurance company
Insurance Company

Maximize

profits

Insurance

Company

Customer

Settle

claim

Car

repaired

Customer

happy

Manuel Kolp

the strategic dependency model
The Strategic Dependency Model
  • Focus on social dependencies among actors rather than only actor goals, actions etc.
  • Actors have goals, need tasks be carried out and resources to be made available;
  • Dependencies define social & intentional relationships among actors, where one actor depends on another to satisfy a goal or satisfice a softgoal, execute a process or furnish a resource;
  • Dependencies can be goal dependencies, task dependencies, resource dependencies or soft goal dependencies
  • Softgoals are distinguished from goals because they do not have a formal definition, and are amenable to a different (more qualitative) kind of analysis (not well-defined).

Manuel Kolp

four kinds of social dependencies
Four Kinds of Social Dependencies

Goal

Resource

Social Dependency

Task

Softgoal

Manuel Kolp

an insurance example
An Insurance Example

Claims

payout

D

Car

repaired

D

D

D

Premium

payment

D

D

Pay

repairs

Insurance

Company

D

D

Repairs

covered

D

Body

Shop

D

Owner

D

Maximize

estimate

D

D

D

D

Customer

happy

D

D

Appraise

damages

D

D

Minimize

repairs

D

Continue

business

D

Fair repair

appraisal

Secure

employment

D

D

D

Goal

Resource

Appraiser

Task

Softgoal

Manuel Kolp

tasks vs goals
Tasks vs Goals
  • Tasks are processes actors perform to fulfill goals.
  • In general, there will be many alternative tasks (possibly by different actors) for fulfilling a goal.
  • When actors are assigned goals, they are (or, ought to be) able to fulfil them by carrying out one or more tasks, and/or through delegation to other actors.
  • A delegated goal may not be achievable by the dependee actor (who is supposed to achieve it); in this case, the depender actor has to look for an alternative solution.

Manuel Kolp

softgoals
Softgoals
  • Functional goals, such as “Handle Customers Orders” : well defined goals in the sense that they admit a formal definition.
  • Not all goals are functional.
  • “Increase Market Share”, “Happy Customers” or “Easily Adaptable System” : qualities that the software system should adhere to.
  • Non functional Goals: softgoals, “fuzzy goals” (clouds) with no clearcut criteria for satisfaction;
  • Hence softgoals are satisficed, not satisfied.
  • How well the system accomplishes its functions

Manuel Kolp

extending uml using stereotypes
Extending UML using Stereotypes

<<softgoal dependency>>

Increase Market Share

<<resource dependency>>

Media Items

<<task dependency>>

<<i* actor>>

Consult Catalogue

<<i* actor>>

<<i* actor>>

<<i* actor>>

<<goal dependency>>

<<goal dependency>>

<<softgoal dependency>>

Buy Media Items

Continuous Supply

Quality Packages

Customer

Media Shop

Media Supplier

Media Producer

<<softgoal dependency>>

<<softgoal dependency>>

Happy Customers

Long Term Business

Manuel Kolp

formal analysis and model checking
Formal Analysis and Model-Checking

Entity MediaItem

Attribute constantitemType : ItemType, price : Amount, InStock : Boolean

Dependency BuyMediaItems

Type goal

Mode achieve

Depender Customer

Dependee MediaRetailer

Attribute constant item : MediaItem

Fulfillment condition for depender

media : MediaItem(self.item.type  media.type item.price media.price)

[the customer expects to get the best price for the type of item]

Dependency ContinuousSupply

Type goal

Mode maintain

Depender MediaRetailer

Dependee MediaSupplier

Attributeconstant item : MediaItem

Fulfillment condition for depender

buy : BuyItem(JustCreated(buy) buy.item.inStock)

[the media retailer expects to get items in stock as soon as someone is interested to buy them]

Manuel Kolp

dynamics specification
Dynamics Specification

ProccheckOutCatalogueConsultation(catalogue)

< catalogue : failed(catalogue) closeCatalogue(catalogue) >



( < cancelConsultation reinitializeCatalogue(catalogue) >

||

< timeout 90 reinitializeCatalogue(catalogue) >

)



< catalogue : InProcessConsultation  StopConsultation

 closeCatalogue(catalogue) >

EndProc

Manuel Kolp

strategic rationale model
Strategic Rationale Model
  • Graph with four main types of nodes -- goal, task, resource, and softgoal -- and two main types of links -- means-ends links and process decomposition links.
  • Describes the criteria in terms of which each actor selects among alternative dependency configurations.
  • Means-endsrelategoalstotasksthatcansatisfythese goals: “Given goal (end) G, how can Idecomposeit(means) in order to find a way tofulfillit”.
  • Task decompositionlinks relatetasksto other componenttasks
  • Tasks can also be decomposed to goals.

Manuel Kolp

functional alternatives insurance example
Functional Alternatives: Insurance Example

Claim be

settled

alternative

one

alternative

three

Handle

claim centrally

Verify

policy

Body Shop

handles claim

alternative

two

Agent

handles claim

Prepare

offer

Manuel Kolp

strategic rationale model insurance
Strategic Rationale Model: Insurance

Handle

claim

Verify

policy

Claims

Handling

Settle

claim

Prepare

offer

Whose

fault?

Settlement

cost?

Insurance

Company

Determine

fault

Get accident

info

Actor

boundary

Determine

cost to settle

D

D

Minimal

repairs

D

Accident

info

Sufficient

treatment

D

D

Injury

info

D

Police

D

D

D

D

D

Appraise

damage

Doctor

Appraiser

Witness

Manuel Kolp

2 late requirements strategic relationships
2. Late Requirements (Strategic Relationships)

”Organizational Map”

Functions and qualities for the system within its environment

slide46

Goal-Oriented Analysis

  • Goal-oriented analysis focuses on early requirements analysis phases, when alternatives are being explored and evaluated.
  • During goal-oriented analysis, we start with initial goals such as “Higher profits”, “Faster time-to-market”, “Schedule meeting”, “Easily maintainable system”, “Good performance” etc. and keep decomposing them until we have reduced them to alternative collections of design decisions each satisfying the initial goals.
  • Initial goals may be organization oriented; they may also be conflicting, so the analysis must facilitate the discovery of tradeoffs and the search of the full space of alternatives, rather than a subset.

Manuel Kolp

the nfr framework building goals models
The NFR framework : Building Goals Models
  • To arrive at a morequalitativeframework for modeling goals, we also need to extend the set of relationships between goals beyond means-ends links:
  • • + (++): one goal contributespositively(very positively) towards the fulfillment of another goal;
  • • - (--) one goal contributesnegatively(very negatively) towards the fulfillment of another goal;
  • sub: one goalsubsumesanother, I.e., if the first goal isfulfilled, so is the second;
  • With these enhancements, we can buildgoal modelswhich might be useful for strategic decisionanalysis

Manuel Kolp

goal analysis

++

Minimal

effort

Rapidity of

Order

-

Minimal

Interaction

+

Minimal

conflicts

-

Collection

effort

+

-

Matching

effort

Handle Customer

Order

Availability

-

+

Collect

orders

++

Selected

Items

By

person

By

system

Manually

Automatically

By phone

By

Fax

With Shopping Cart

Have

updated

invoices

Goal Analysis

Manuel Kolp

leaving goals dependencies is a novelty
Leaving Goals Dependencies is a Novelty
  • Goals and Softgoals generally operationalized/metricized during Late Requirements (e.g. KAOS – van Lamsweerde 93)
  • Ex. : Security operationalized by interfaces which minimize input/output or access restriction to sensitive information.
  • Steps through which goals are to be fulfilled are frozen in the requirements
  • Systems fragile and less reusable.
  • Whenever there is a need for flexibility, reusability, modularity

Manuel Kolp

3 architectural design
3. Architectural Design
  • Architecture in terms of interconnected social components.
  • 3 levels
    • 1Macro level : OrganizationalStyles (Organization Theory)
      • Vertical Integration, Pyramid, Joint Venture, Structure in 5, Bidding, Hierarchical Contracting, Co-optation, Takeover
    • 2Micro level : Patterns (Agent, COOPIS Community)
      • Broker, Matchmaker, Contract-Net, Mediator, Monitor, Embassy, Wrapper, Master-Slave, ...
    • 3Atomic: Social and intentional concepts – i*

Manuel Kolp

organization styles for architecture
Organization Styles for Architecture
  • Organization Theory, Strategic Alliances, …
  • Mintzberg, Scott, Galbraith, …
  • Studies alternatives andmodelsfor (business) organizations
  • Model thecoordinationof business stakeholders -- individuals, physical or social systems -- to achieve common (business)goals.

Manuel Kolp

structure in 5
Structure in 5
  • Operational core:basicoperations -- the input, processing, output associated with running the organization.
  • Strategicapex: executive,strategic decisions.
  • Support : Assists the operation core for non-operational services outside the basic flow of operational procedures.
  • Technostructure : standardizes the behavior of other components, help the system adapt to its environment.
  • Middle line : Actors who join the apex to the core.

Manuel Kolp

structure in 5 in i and telos meta concepts

TELL CLASS StructureIn5MetaClass

IN Class WITH

/*Class is a MetaMetaClass*/

attribute

name: String

part, exclusivePart, dependentPart

ApexMetaClass: Class

CoordinationMetaClass: Class

MiddleAgencyMetaClass: Class

SupportMetaClass: Class

OperationalCoreMetaClass: Class

END StructureIn5MetaClass

In Telos

Structure in 5 in i* and Telos metaconcepts

In i*

Manuel Kolp

joint venture in i and telos meta concepts
Joint Venture in i* and Telos metaconcepts

TELL CLASS JointVentureMetaClass

IN Class WITH

/*Class is a MetaMetaClass*/

attribute

name: String

part, exclusivePart, dependentPart

JointManagementMetaClass: Class

part, exclusivePart

/*exclusive and independent part*/

PrincipalPartnerMetaClass: Class

part

/*shared and independent part*/

SecondaryPartnerMetaClass: Class

END JointVentureMetaClass

In Telos

Manuel Kolp

non organizational classical architecture styles
Non Organizational (Classical) Architecture Styles

Pipe-filter

Layered Architecture (Mobile Robot)

Main Program & Sub-Routines

Manuel Kolp

slide59

Mobile Robot Layered Architecture

Need to establish direct communication

Data & control hierarchies not separated

Prevent manipulation of components

Information exchange not

always straight-forward

RWI Robots (irobot.com):

ATRV, B21r, B14r, Magellan

Manuel Kolp

slide60

The Mobile Robot Case Study

  • Activities amobile robot has to accomplish:
  • - Acquiring the input provided by sensors,
  • - Controlling the motion of its wheels and other moveable part,
  • - Planning its future path.
  • External Factors:
  • - Obstacles may block the robot’s path,
  • - Sensor inputs may be imperfect,
  • - The robot may run out of power,
  • - Mechanical limitations may restrict accuracy
  • - The robot may manipulate hazardous materials,
  • - Unpredictable events may leave little time for responding.

Manuel Kolp

slide61

Other Classical Mobile Robot Architectures

  • Control loop: Controller initiates the robot actions. Also monitors their consequences, adjusting future plans based on the return information
  • Task Trees :Hierarchies of tasks. Parent tasks initiate child tasks. Temporal dependencies between taskspermit selective concurrency.

Manuel Kolp

mobile robot architecture structure in 5
Mobile Robot Architecture: Structure-in-5

[4, 14]

More distributed architecture

Manuel Kolp

slide63

Joint Venture

  • Architecture organized around
      • Acentral joint manager assuming the overallsupervisor/
      • coordinator role for the other agent components:
  • - Ahigh level path planner,
  • - A module that monitors the environment for landmarks,
  • - Aperception subsystem that receives and interprets sensors data.
  • - Amotor controller and
  • Components can alsointeractdirectly with each other.

Manuel Kolp

slide64

Agent Quality Attributes for Mobile Robots

  • Coordinativity. Agents must be able to coordinate with other agents to achieve a common purpose or simply their local goals.
  • A mobile robot has to coordinate the actions it undertakes to achieve its objective with the reactions forced on it by the environment.
  • Predictability. Agents can have a high degree of autonomy in the way they undertake action and communication in their domains. Difficult to predict individual characteristics as part of determining the behavior of the system at large.
  • For a mobile robot, never will all the circumstances of the operation be fully predictable. The architecture must provide the framework in which the robot can act even when faced with incomplete information.

Manuel Kolp

slide65

Agent Quality Attributes for Mobile Robots

  • Failability-Tolerance. A failure of one agent does not imply a failure of the whole system. Needs to check completeness and accuracy of information and transactions. Can implement replicated capabilities.
  • Must prevent the failure of the robot’s operation and its environment. Local problems like reduced power supply, unexpectedly opening doors should not necessarily imply the failure of the mission.
  • Adaptability. Agents must to adapt to modifications in their environment. Must allow changes to the component’s communication protocol, dynamic manipulations of agents.
  • Application for mobile robots frequently requires experimentation and reconfiguration. Changesin assignmentsrequire regular modification.

Manuel Kolp

slide66

Loop

Layers

Task Tree

S-in-5

Joint-Vent.

Coordinativity

-

-

+-

++

++

Predictability

+-

+

+-

+

++

Failability-Tol.

+

+-

+

+

+

Adaptability

+-

+-

+

+

+-

Strengths and Weaknesses of Robot Architectures

Manuel Kolp

slide67

Coordinativity

  • Control loop:Simplicity is a drawback when dealing with complex tasks, no leverage for decomposing the software into more precise components.
  • Layers: services and requests between adjacent layers. Transactions not always straight-forward. Need to skip layers to coordinate behavior.
  • Task trees: clear separation of action and reaction. Allows incorporation of concurrent agents. Components have little interaction with each other.
  • Structure-in-5: separates data (sensor control, interpreted results, world model) from control (motor, navigation, scheduling, planning and user-level) hierarchies
  • Joint venture: Components interact via the joint manager for strategic decisions. They indicate their interest, the joint manager returns them such information or mediates the request to other partner component.

Manuel Kolp

slide68

Predictability

  • Control loop: Reduces the unpredictable through iteration only. No framework if more subtle steps are needed.
  • Layers:Abstraction - uncertain at the lowest level become clear with the added knowledge in the higher layers.
  • Task trees: less clear. Exeption handlers when the assumptions it is based on turn out to be erroneous.
  • Structure-in-5:Abstraction levels in the structure-in-5 addresses the need for managing unpredictability. Lower levels only involve resources and task dependencies while higher ones propose intentional relationships.
  • Joint-venture:Central position and role of the joint manager is a means for resolving conflicts and prevent unpredictability.

Manuel Kolp

slide69

Failability-Tolerance

  • Control loop:Simplicity makes duplication of components and behavior easy and reduces the chance of errors creeping into the system.
  • Layers:Manychecks at different levels into the system. But control and transactions may need to skip layers to check the system behavior.
  • Task trees:Exception, wiretapping and monitoring can be integrated to take into account the needs for integrity, reliability, completeness.
  • Structure-in-5: checks integrated at different abstractionlevels - redundancy from different perspectives. Not restricted to adjacent layers. Separateddata and control hierarchies, can be verified independently.
  • Joint-venture: Joint manager proposes a central message server/controller. Can support exception, wiretapping supervising or monitoring to guarantee non-failability, reliability and completeness.

Manuel Kolp

slide70

Adaptability

  • Control loop: Components are separated from each other and can be replaced or added independently. Precise manipulation inside components, at a level detail not shown.
  • Layers:Interdependencies between layers prevent the addition of new components or deletion of existing ones.
  • Task trees:Implicit invocation makes incremental manipulation of components straightforward. Sufficient to register new ones, no existing one feels the impact.
  • Structure-in-5:Isolates components, allows dynamic manipulation. No more than 5 components: Refined tuning inside components.
  • Joint-venture: Manipulation of components by registering them to the joint manager. Dependencies must be updated. Joint manager cannot be removed.

Manuel Kolp

legolog for office delivery robot structure in 5
Legolog for Office Delivery Robot (Structure-in-5)
  • Cognitive Roboticsdevelopment environmentfor experimentation with and demonstration of research on the LEGO® MINDSTORMSTMRobotics Invention SystemTM
  • http://www.cs.toronto.edu/cogrobo/Legolog/
  • OR LeJOS (http://lejos.sourceforge.net) + JACK agents

Manuel Kolp

a joint venture e commerce architecture
A Joint-Venture E-commerce Architecture

E-business styles: on web, protocols, technologies

Not on business processes, NFRs

No organization of the architecture, conceptual high-level perspective

From Security, Availability, Adaptability

Manuel Kolp

4 detailed design
4. Detailed Design
  • Architectural Agent components defined in details in terms of inputs, outputs, control, and other relevant information.
  • UML extensions: Tropos Proposal
    • Tropos offers a set of concepts and a methodology for developing agent-oriented software.
    • These concepts can be accommodated within UML in terms of new stereotypes
    • One can also use UML/AUML diagrams and other techniques from the multi-agent system area to specify coordination and other details during detailed design.

Manuel Kolp

design pattern
Design Pattern
  • Identify the interrelationships among a group of software components describing their responsibilities, collaborations and structural relationships.

Composite

Manuel Kolp

design pattern composite
Design Pattern: Composite
  • Problem: Representing whole-part hierachies so that whole and part objects offer the same interface to client objects.
  • Context: Composite and component object are required to offer the same behaviour, i.e, be treated in the same way
  • Forces:
    • Composite or component should belong to the same inheritance hierarchy.
    • The need to represent whole-part hierarchies indicates the need for anaggregation structure
  • Solution : Combine inheritance and aggregation hierarchies.

Manuel Kolp

social patterns
Social Patterns

Monitor

Matchmaker

Contract-Net

Manuel Kolp

example matchmaker
Example: Matchmaker
  • Locates a provider corresponding to a consumer request for service,
  • Then hands the consumer a handle to the chosen providerdirectly.
  • Contrary to the broker who directly handles all interactions between the consumer and the provider, the negotiation for service and actual service provision are two distinct phases.
  • Used in the horizontal contracting and joint venture styles.

Manuel Kolp

social patterns80
Social Patterns

Mediator

Embassy

Manuel Kolp

in uml with stereotypes
In UML with Stereotypes

<<i* actor>>

<<i* actor>>

<<goal dependency>>

Fwd Source Change

<<task dependency>>

Notify Change

<<goal dependency>>

Source Match.

Monitor

Locate Source

<<i* actor>>

<<i* actor>>

<<goal dependency>>

<<task dependency>>

Route Info Request

Provide Information

<<goal dependency>>

Info Searcher

Profile Customer

On-line Catalogue

<<i* actor>>

<<i* actor>>

<<task dependency>>

<<task dependency>>

<<task dependency>>

Query Information Source

Hits Information

Translate Response

<<i* actor>>

Mediator

Wrapper

<<task dependency>>

Ask for Info Advertising

Statistics

Processor

Manuel Kolp

class diagram
Class Diagram

Shopping Cart

UML Classes

Manuel Kolp

communication fipa acl auml
Communication – FIPA-ACL - AUML

<<i* actor>>

Customer

<<i* actor>>

Shopping Cart

The Checkout Dialogue

Manuel Kolp

dynamics
Dynamics

Check Out Plan

Manuel Kolp

an agent platform jack
An Agent Platform: JACK
  • JACK Intelligent Agents is an agent-oriented development environment built on top of the Java programming language.
  • JACK's integration with Java is analogous to the relationship between the C++ and C languages.
  • The JACK Agent Language has been developed to provide agent-oriented specific extensions to Java.
  • http://www.agent-software.com

Manuel Kolp

jack bdi agents
JACK BDI Agents
  • Agents in JACK are intelligent in the sense they model reasoning behavior according to the BDImodel.
  • Following this model, JACK agents can be considered autonomous software components that have explicit goals to achieve (desires).
  • To describe how they should go about achieving these desires, these agents are programmed with a set of plans (intentions).
  • Each plan describes how to achieve a goal under varying circumstances.
  • Set to work, the agent pursues its given goals (desires), adopting the appropriate plans (intentions) according to its current set of data (beliefs) about the state of the world.

Manuel Kolp

jack functional constructs
JACK functional constructs
  • To support the BDI agents, JACK has five main constructs.
    • Agents
    • Database relations to store beliefs and data that an agent has acquired.
    • Goals and Events to identify the goals (desires) and messages that an agent can achieved or respond to. A Goal in JACK is a special event due to the OO nature of JAVA.
    • Plans that are intentions an agent follows to try to achieve its goals and executes to handle its designated events.
    • Capabilities to aggregate events, goals, plans, databases or other capabilities.
  • I.e., JACK Goal = BDI Desire, JACK DB relation = BDI Belief, JACK Plan = BDI Intention, JACK Agent = BDI Agent

Manuel Kolp

related proposals
Related Proposals
  • Goal-Oriented Analysis (GOA) has been researched in Requirements Engineering since the ‘80s; unlike other proposals, i* goals are relative and fulfillment is cooperative; also other GOA frameworks focus on the transformation from early to late requirements.
  • AUML is a recent proposal for agent modeling; its emphasis is on agent coordination+communication.
  • UML has been recently extended to include goals for business modeling applications;
  • i* is a mature modeling framework, has been formalized in a variety of settings and comes with a methodology for doing actor and goal analysis.

Manuel Kolp

additional readings
Additional Readings

Information Systems

[1] J. Castro, M. Kolp, and J. Mylopoulos. Towards Requirements-Driven Information Systems Engineering. Information Systems, Elsevier, 2002.

[2] J. Castro, M. Kolp, and J. Mylopoulos. Developing Agent-Oriented Information Systems for the Enterprise. In B. Sharp, editor, Enterprise Information Systems II, Kluwer Publishing, 2002.

[3] J. Castro, M. Kolp, and J. Mylopoulos. A Requirements-Driven Development Methodology. In Proc. of the 13th Int. Conf. on Adv. Information Systems Engineering, CAiSE’01, Interlaken, Switzerland, June 2001.

Knowledge Systems

[4] M. Kolp, P. Giorgini, and J. Mylopoulos. Multi-Agents Systems as Social Structures. Autonomous Agents and Multi-Agents Systems, Kluwer Publishing, 2002.

[5] A. Perini, P. Bresciani, F. Giunchiglia, P. Giorgini, and J. Mylopoulos. A Knowledge Level Software Engineering Methodology for Agent Oriented Programming. In Proc. of the 5th Int. Conf on Autonomous Agents, Agents’01, Montreal, Canada, May 2001.

[6] M. Kolp, P. Giorgini, and J. Mylopoulos. A Goal-Based Organizational Perspective on Multi-Agents Architectures. In Proc. of the 8th Int. Conf. on Intelligent Agents: Agent Theories, Architectures, and Languages, ATAL’01, Seattle, USA, Aug. 2002.

[7] X. Wang and Y. Lespérance. Agent-Oriented Requirements Engineering using ConGolog and i*. In Proc. of the 3rd Int. Bi-Conf. on Agent-Oriented Information Systems, AOIS’01, Montreal, Canada, May 2001.

[8] G. Gans, M. Jarke, S. Kethers, and G. Lakemeyer: Modeling the Impact of (Dis)trust in Agent Networks. In Proc. of the 3rd Int. Bi-Conf. on Agent-Oriented Info Systems, AOIS’01, Interlaken, Switzeland, June 2001

Manuel Kolp

additional readings98
Additional Readings

Conceptual Modeling

[9] A. Fuxman, P. Giorgini, M. Kolp, and J. Mylopoulos. Information systems as Social Structures. In Proc. of the 2nd Int. Conf. on Formal Ontologies for Information Systems, FOIS’01, Ogunquit, USA, Oct. 2001.

[10] J. Mylopoulos, A. Fuxman, and P. Giorgini. From Entities and Relationships to Social Actors and Dependencies. In Proc. of the 19th Int. Conf. on Conceptual Modeling, ER’00, Salt Lake City, USA, Oct. 2000.

[11] L. Lu and E. Yu. Modelling Strategic Actor Relationships to Support Intellectual Property Management. In Proc. of the 20th Int. Conf. on Conceptual Modeling, ER’01, Yokohama, Japan, Nov. 2001.

Software Engineering

[12] J. Mylopoulos, J. Castro, and M. Kolp, Tropos: A Framework for Requirements-Driven Software Development. In J. Brinkkemper and A. Solvberg (eds.), Information Systems Engineering: State of the Art and Research Themes, Springer-Verlag, June 2000.

[13] A. Fuxman, M. Pistore, J. Mylopoulos, and P. Traverso. Model Checking Early Requirements Specification in Tropos. In Proc. of the 5th Int. Symposium onRequirements Engineering, RE’01, Toronto, Canada, Aug. 2001.

[14] M. Kolp, J. Castro, and J. Mylopoulos. A Social Organization Perspectiveon Software Architectures. In Proc. of the 1st Int. Workshop From SoftwareRequirements to Architectures, STRAW’01, Toronto, Canada, May2001.

[15] L. Lu and E. Yu. From Requirements to Architectural Design - Using Goals and Scenarios. In Proc. of the 1st Int. Workshop From SoftwareRequirements to Architectures, STRAW’01, Toronto, Canada, May2001.

UML

[16] J. Mylopoulos, M. Kolp, and J. Castro. UML for Agent-Oriented Software Development: The Tropos proposal. In Proc. of the 4th Int. Conf. on the UnifiedModeling Language UML’01, Toronto, Canada, Oct. 2001.

Manuel Kolp