SlideShare une entreprise Scribd logo
1  sur  40
Agent UML
It is a changes towards
Requirements
Engineering
Introduction – traditional approach
Software
Engineers
make
changes
Software
System
{Knowledge}
Code
Software Engineers
Requirements
Models
Design
Models
…
E.g.UMLmodels
Make
changes
Software
System
Auto-generate
Models
{Knowledge}
E.g.UMLmodels
• Models are reused
Introduction – current thinking
Introduction – our thinking
translate
Agent
Software
System
• Models are reused
Agent-oriented
Models
{Knowledge}
E.g.UMLmodels
XMLmodels
• Re-generation of the system is
not necessary
CASE
tool
Make
changes
The Changing Needs of Requirements
Modelling
1. Technology as enabler
 Goals are discovered; may be bottom-up
2. Networked systems and organizations
 Composite systems, but dispersed, fluid, contingent, ephemeral
 Same for responsibilities, accountability, authority, ownership,…
3. Increased inter-dependency and vulnerability
 Dependencies among stakeholders (inc. system elements)
 Impact of changes
4. Limited knowledge and control
 No single designer with full knowledge and control
5. Openness and uncertainties
 Can’t anticipate all eventualities / prescribe responses in advance
6. Cooperation
 Beyond vocabulary of “interaction” (behavioural)
 Reason about benefits of cooperation – goals, beliefs, conflicts
 Requirements can be organised around agents.
Agents are responsible for realising the
requirements.
 Agent is the container and business rule is the
knowledge to fill the container in the requirements
model.
 Agent and business rule complements each other in
the implementation: the former is the actor, the
latter guides it and dictates the role that it plays.
 The mapping from requirements to implementation
for both the agent and the business rule brings
traceability.
Two additional model element –
agent
supportsrealises
is_responsible_for
consists_of
plays
Human
Agent Business Role
Business
Rule
Business
Function
collaborates
_with
Business
Agent
Software
Agent
Business
Process
Business
Goal
Business
Class
contributes_to
Sub-Goal
relates_with
participates_in
Agents play business roles,
their behaviour is dictated by
business rules and functions
Agents collaborate to
realise business goals
by participating in
business processes
Business rules
and functions
support
business goals
Meta-model
Business rules and functions represent
functional requirements. They become
agent behaviour and class method
respectively. Classes are managed by
agents, and rules are configured for the
invocation of methods.
i* - agent-oriented modelling
Actors are semi-autonomous, partially
knowable
Strategic actors, intentional dependencies
Meeting Scheduling ExampleMeeting Scheduling Example
“Strategic
Dependency”
Model
Analysis and Design of
Agent-Oriented Systems
e.g., Wooldridge Jennings Kinny (JAAMAS
2000) “GAIA”
Analysis level
Roles and Interactions
oPermissions
oResponsibilities
• liveness properties
• safety properties
oActivities
oProtocols
 Design level
 Agent types
 Services
Modelling concepts
being driven from
programming
again?!!
• Structured Analysis
from Structured
Programming
• OOA from OOD, OOP
• AOA from AOP ??
What are the important concepts
for
Agent Orientation as a
Modelling Paradigm ?
Intentionality
Autonomy
Sociality
Identity & Boundaries
Strategic Reflectivity
Rational Self-Interest
Agent Orientation as a Modelling
Paradigm
Intentionality
Agents are intentional.
Agent intentionality is externally attributed by the
modeller.
Agency provides localization of intentionality.
Agents can relate to each other at an intentional level.
Autonomy
Sociality
Identity & Boundaries
Strategic Reflectivity
Rational Self-Interest
Agent Orientation as a Modelling
Paradigm
Intentionality
Autonomy
An agent has its own initiative, and can act
independently. Consequently, for a modeller and from
the viewpoint of other agents:
o its behaviour is not fully predictable.
o It is not fully knowable,
o nor fully controllable.
The behaviour of an agent can be partially
characterized, despite autonomy, using intentional
concepts.
 Sociality
 Identity & Boundaries
 Strategic Reflectivity
 Rational Self-Interest
Agent Orientation as a Modelling
Paradigm
Intentionality
Autonomy
Sociality
 An agent is characterized by its relationships with other agents,
and not by its intrinsic properties alone.
 Relationships among agents are complex and generally not
reducible.
 Conflicts among many of the relationships that an agent
participates in are not easily resolvable.
 Agents tend to have multi-lateral relationships, rather than one-way
relationships.
 Agent relationships form an unbounded network
 Cooperation among agents cannot be taken for granted.
 Autonomy is tempered by sociality.
 Identity & Boundaries
 Strategic Reflectivity
Agent Orientation as a Modelling Paradigm
Intentionality
Autonomy
Sociality
Identity & Boundaries
Agents can be abstract, or physical.
The boundaries, and thus the identity, of an agent are
contingent and changeable.
Agent, both physical and abstract, may be created and
terminated.
Agent behaviour may be classified, and generalized.
Strategic Reflectivity
Rational Self-Interest
Agent Orientation as a Modelling
ParadigmAutonomy
Intentionality
Sociality
Identity & Boundaries
Strategic Reflectivity
Agents can reflect upon their own operations.
Development world deliberations and decisions are
usually strategic with respect to the operational world.
The scope of reflectivity is contingent.
Rational Self-Interest
Agent Orientation as a Modelling
ParadigmIntentionality
Autonomy
Sociality
Identity & Boundaries
Strategic Reflectivity
Rational Self-Interest
An agent strives to meet its goals.
Self-interest is in a context of social relations.
Rationality is bounded and partial.
What is an agent
An agent is an hardware or software system
placed in an environment that enjoys the
following properties:
oAutonomy
oSocial ability
oReactivity
oProactivity
[Wooldridge et al, 1995]
A stronger notion of agent
Another stronger notion assigns to the agent also
the following properties:
 Mentalistic notions:
o Beliefs
o Desires
o Intentions
 Emotional notions:
o Trust
o Friendship
o Suspiciousness
[Wooldridge et al, 1995]
When agent notion is useful
 The agent notion is adaptable to many HW and SW systems but it
is particularly useful in such contexts where complexity is high
enough to make the simple notion of object insufficient to describe
the system.
 The focus is on the behaviour of agents and not on
the content of objects (attributes and methods).
 Agent-oriented programming is at an abstraction level higher than
object-oriented programming.
Agent-oriented programming (1)
 Agent-oriented programming (AOP) is a
specialisation of object-oriented programming (OOP)
in the way the computational system is conceived:
“The computational system is seen as composed of
communicating modules, each with its own way of handling
messages.” [Shoham, 1993]
 The (mental) state of modules (agents) consists of
components such as beliefs, capabilities and
intentions.
Agent-oriented programming (2)
 A computation consists of agents that:
 Inform other agents about facts
 Offer and request services
 Accept or refuse proposals
 Compete for accessing shared resources
 Collaborate for achieving common goals
OOP AOP
Basic unit Object Agent
Parameters defining state
of basic unit
Unconstrained Belief, commitments,
chioces, …
Process of computation Message passing and
response methods
Message passing and
response methods
Types of messages Unconstrained Inform, request, offer,
promise, decline
Constraints on methods None Honesty, consistency, …
What is Agent UML
 Agent UML is a support notation for agent-oriented
systems development.
 It consists in using the UML modeling language
and extending it in order to represent agents, their
behaviour and interactions among them.
 AUML is not restricted to using UML. Other
approaches should be used wherever it makes
sense.
Who is interested in AUML
 OMG Special Interest Group:OMG Special Interest Group: recommends
standards for agent technology where
appropriate (www.omg.org)
 FIPA (Foundation for intelligent physicalFIPA (Foundation for intelligent physical
Agents)Modeling Technical Commitee:Agents)Modeling Technical Commitee:
tasked with developing an AUML standard
(www.auml.org)
 Other methodologies:Other methodologies: MESSAGE, Gaia,
Tropos, Prometheus, MaSE, ...
Common features of agents
Agents share some common characteristics:
 Identifier
• identifies each agent in a multiagent system
 Role
• defines the behaviour of an agent into the society (es. Seller, Buyer)
 Organization
• defines the relationships between the roles (similar to human or
animal organizations such as hierarchies, markets, groups of interest
or herds)
 Capability
• specifies what an agent is able to do and under what conditions
 Service
• describes an activity that an agent can perform and is provided to
other agents
Representation of agents
 UML Class Diagrams can be used to represent
the static view of agents.
<<agent>> agent-name
Role
role 1, role 2, …, role n
role dynamic 1, role dynamic 2, …, role dynamic n
Organization
organization 1, organization 2, …, organization n
org dynamic 1, org dynamic 2, …, org dynamic n
Capabilities representation (1)
 A capability is composed of the following parts:
 Input
o What the agent must receive in input to achieve his task
 Output
o What the capability generates as a result of the work
 Input constraints
o Constraints that are expected to hold in the situation before the action specified by
the capability can be performed
 Output constraints
o Constraints hat are expected to hold in the situation after the action specified by
the capability has been performed
 Input-output constraints
o Constraints that must hold across input and output situations
 Description
o A description in natural language of the capability
Capabilities representation (2)
<<capability>> addition
Input
x,y:Integer
Output
s:Integer
Description
This capability makes the sum of
two integers and returns an integer
<<agent>> sum
Role
addition, subtraction
rd 1
Organization
calculator
Protocol
enter-society, exit-society
compute
<<capability>> subtraction
Input
x,y:Integer
Output
d:Integer
Input Constraint
x>=0, y>=0
Input-Output Constraint
x-y >=0
Description
This capability makes the
difference of two integers and
returns an integer
• Example of capability representation:
The agent ‘sum’ has two
capabilities expressing the fact
that he is able to make additions
and subtractions
They can be defined
using OCL or simple
logic expressions
Service representation (1)
 A service is composed of the following parts:
 Name
• The name of the service
 Description
• A description in natural language of the service
 Type
• The type of the service
 Protocol
• A list of interaction protocols supported by the service
 Agent communication language
• The communication languages used in this service
 Ontology
• A list of ontologies supported by the service
 Content language
• A list of content languages supported by the service
 Properties
• A list of properties that discriminate the service
Service representation (2)
<<agent>> sum
Role
addition, subtraction
rd 1
Organization
calculator
Protocol
enter-society, exit-society
compute
<<service>> computation
Description
This service makes an addition when
requested by the request addition
protocol and makes a subtraction
when requested by the request-
subtraction protocol
Type
computation
Protocol
request-addition
request-subtraction
Agent Communication Language
FIPA ACL
Ontology
computation ontology
Content Language
FIPA SL
• Example of service representation:
The agent ‘sum’ exports a service that
makes additions and subtractions on
demand
Representing interactions
 Agent interactions can be represented in
UML standard using sequence diagrams
Concurrent interactions (1)
 UML has been extended in order to
represent concurrent communication acts
sent from the sender agent to the
receiver.
 a) Concurrent communication acts from
CA-1 to CA-n are sent in parallel.
 b) A selection of the n acts is sent in
parallel (zero or more).
 c) Exclusive choice: only one of the
communication acts is sent.
Concurrent interactions (2)
 a) An agent sends 3 concurrent CA
to another agent. The diagram can
be interpreted in two different ways:
 Every CA is processed from the
same agent/role by a different thread
of execution
 Every CA is processed by a different
role of the agent (in this case
mesages can be annotated
specifying the role)
 b) The same semantic of (a) but with
a simpler notation
 c) Choice from three different
communication act received by
three different threads (or roles)
 NOTE: each concurrent CA
can be sent to different
agents
Example of interaction
 The Buyer sends a request-for-
proposal to the Seller
 The Seller has three options to
choose within the deadline:
 make a proposal
 refuse (with different reasons)
 say he did not understand
 If the Seller has made a
proposal, the Buyer has the
choice to reject or to accept it
 If the last is the case, the Seller
schedules the proposal
informing the Buyer about its
the state
 The Buyer can cancel the
proposal execution at any time
Detailing interaction messages
 Any interaction process
can be expressed in
more detail.
 The “leveling” can
continue down until the
problem has been
specified adequately to
generate code.
 Also activity diagrams
and statecharts can be
used.
Roles management
 UML sequence diagrams can be used to represent
changes in agents’ role.
Object role in AOP
 Objects may always be included in an agent-oriented system
and can communicate with agents using message passing
methods.
References (1)
 Agents
 [Wooldridge et al, 1995]
Wooldridge and Jennings
Intelligent Agents: Theory and Practice
Knowledge Engineering Review
Volume 10 No 2, June 1995
Cambridge University Press
(www.csc.liv.ac.uk/~mjw/pubs/ker95/ker95-html.html)
 [Shoham, 1993]
Y. Shoham
Agent-oriented programming
Artificial Intelligence
60(1):51-92
(http://www.ncat.edu/~esterlin/c7902s02/Notes/Shoham.pdf)
References (2)
 Agent UML
 http://www.auml.org/
 http://www.jamesodell.com/
 http://aot.ce.unipr.it/auml/

Contenu connexe

Tendances

Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling Benazir Fathima
 
ProLog (Artificial Intelligence) Introduction
ProLog (Artificial Intelligence) IntroductionProLog (Artificial Intelligence) Introduction
ProLog (Artificial Intelligence) Introductionwahab khan
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGSaqib Raza
 
21 situation calculus
21 situation calculus21 situation calculus
21 situation calculusTianlu Wang
 
Lecture 2 agent and environment
Lecture 2   agent and environmentLecture 2   agent and environment
Lecture 2 agent and environmentVajira Thambawita
 
Artificial Intelligence Searching Techniques
Artificial Intelligence Searching TechniquesArtificial Intelligence Searching Techniques
Artificial Intelligence Searching TechniquesDr. C.V. Suresh Babu
 
3. planning in situational calculas
3. planning in situational calculas3. planning in situational calculas
3. planning in situational calculasAnkush Kumar
 
Multi-agent systems
Multi-agent systemsMulti-agent systems
Multi-agent systemsR A Akerkar
 
The analysis synthesis model of compilation
The analysis synthesis model of compilationThe analysis synthesis model of compilation
The analysis synthesis model of compilationHuawei Technologies
 
Heuristc Search Techniques
Heuristc Search TechniquesHeuristc Search Techniques
Heuristc Search TechniquesJismy .K.Jose
 
Problem solving agents
Problem solving agentsProblem solving agents
Problem solving agentsMegha Sharma
 
Communication primitives
Communication primitivesCommunication primitives
Communication primitivesStudent
 
Distributed system lamport's and vector algorithm
Distributed system lamport's and vector algorithmDistributed system lamport's and vector algorithm
Distributed system lamport's and vector algorithmpinki soni
 

Tendances (20)

Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling
 
ProLog (Artificial Intelligence) Introduction
ProLog (Artificial Intelligence) IntroductionProLog (Artificial Intelligence) Introduction
ProLog (Artificial Intelligence) Introduction
 
Np cooks theorem
Np cooks theoremNp cooks theorem
Np cooks theorem
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
 
21 situation calculus
21 situation calculus21 situation calculus
21 situation calculus
 
Planning
PlanningPlanning
Planning
 
08 clustering
08 clustering08 clustering
08 clustering
 
Spm unit2
Spm unit2Spm unit2
Spm unit2
 
Lecture 2 agent and environment
Lecture 2   agent and environmentLecture 2   agent and environment
Lecture 2 agent and environment
 
Artificial Intelligence Searching Techniques
Artificial Intelligence Searching TechniquesArtificial Intelligence Searching Techniques
Artificial Intelligence Searching Techniques
 
Parallel Algorithms
Parallel AlgorithmsParallel Algorithms
Parallel Algorithms
 
3. planning in situational calculas
3. planning in situational calculas3. planning in situational calculas
3. planning in situational calculas
 
Complexity of Algorithm
Complexity of AlgorithmComplexity of Algorithm
Complexity of Algorithm
 
Multi-agent systems
Multi-agent systemsMulti-agent systems
Multi-agent systems
 
Cocomo model
Cocomo modelCocomo model
Cocomo model
 
The analysis synthesis model of compilation
The analysis synthesis model of compilationThe analysis synthesis model of compilation
The analysis synthesis model of compilation
 
Heuristc Search Techniques
Heuristc Search TechniquesHeuristc Search Techniques
Heuristc Search Techniques
 
Problem solving agents
Problem solving agentsProblem solving agents
Problem solving agents
 
Communication primitives
Communication primitivesCommunication primitives
Communication primitives
 
Distributed system lamport's and vector algorithm
Distributed system lamport's and vector algorithmDistributed system lamport's and vector algorithm
Distributed system lamport's and vector algorithm
 

Similaire à Agent uml

Topic 1 lecture 1
Topic 1 lecture 1Topic 1 lecture 1
Topic 1 lecture 1farshad33
 
Use case Diagram
Use case Diagram Use case Diagram
Use case Diagram Rahul Pola
 
Tropos project toward RE
Tropos project toward RETropos project toward RE
Tropos project toward RESehrish Asif
 
Stakeholders in Systems Design
Stakeholders in Systems DesignStakeholders in Systems Design
Stakeholders in Systems DesignMark Underwood
 
Unit 4 Object Oriented Analysis.pptx
Unit 4 Object Oriented Analysis.pptxUnit 4 Object Oriented Analysis.pptx
Unit 4 Object Oriented Analysis.pptxNitinShelake4
 
Artificial intelligence(03)
Artificial intelligence(03)Artificial intelligence(03)
Artificial intelligence(03)Nazir Ahmed
 
The Evaluation of Generic Architecture for Information Availability (GAIA) an...
The Evaluation of Generic Architecture for Information Availability (GAIA) an...The Evaluation of Generic Architecture for Information Availability (GAIA) an...
The Evaluation of Generic Architecture for Information Availability (GAIA) an...inventionjournals
 
The Evaluation of Generic Architecture for Information Availability (GAIA) an...
The Evaluation of Generic Architecture for Information Availability (GAIA) an...The Evaluation of Generic Architecture for Information Availability (GAIA) an...
The Evaluation of Generic Architecture for Information Availability (GAIA) an...inventionjournals
 
leewayhertz.com-Auto-GPT Unleashing the power of autonomous AI agents.pdf
leewayhertz.com-Auto-GPT Unleashing the power of autonomous AI agents.pdfleewayhertz.com-Auto-GPT Unleashing the power of autonomous AI agents.pdf
leewayhertz.com-Auto-GPT Unleashing the power of autonomous AI agents.pdfKristiLBurns
 
trust,bargain,negotiate in artificail intelligence
trust,bargain,negotiate in artificail intelligencetrust,bargain,negotiate in artificail intelligence
trust,bargain,negotiate in artificail intelligencePriyadharshiniG41
 
Role of system analyst
Role of system analystRole of system analyst
Role of system analystprachi90501
 
Roleofsystemanalyst 130123074015-phpapp02
Roleofsystemanalyst 130123074015-phpapp02Roleofsystemanalyst 130123074015-phpapp02
Roleofsystemanalyst 130123074015-phpapp02Lekhanath Pandey
 
Group 1 (3009, 01, 02, 03, 04) interacting with agents, direct manipulation t...
Group 1 (3009, 01, 02, 03, 04) interacting with agents, direct manipulation t...Group 1 (3009, 01, 02, 03, 04) interacting with agents, direct manipulation t...
Group 1 (3009, 01, 02, 03, 04) interacting with agents, direct manipulation t...Prateek Soni
 
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Dr Sukhpal Singh Gill
 

Similaire à Agent uml (20)

Topic 1 lecture 1
Topic 1 lecture 1Topic 1 lecture 1
Topic 1 lecture 1
 
Use case Diagram
Use case Diagram Use case Diagram
Use case Diagram
 
Norms Brmas08 V2
Norms Brmas08 V2Norms Brmas08 V2
Norms Brmas08 V2
 
Intelligent agents
Intelligent agentsIntelligent agents
Intelligent agents
 
Tropos project toward RE
Tropos project toward RETropos project toward RE
Tropos project toward RE
 
Stakeholders in Systems Design
Stakeholders in Systems DesignStakeholders in Systems Design
Stakeholders in Systems Design
 
Unit 4 Object Oriented Analysis.pptx
Unit 4 Object Oriented Analysis.pptxUnit 4 Object Oriented Analysis.pptx
Unit 4 Object Oriented Analysis.pptx
 
Software agents
Software agentsSoftware agents
Software agents
 
Artificial intelligence(03)
Artificial intelligence(03)Artificial intelligence(03)
Artificial intelligence(03)
 
Presentation_DAI
Presentation_DAIPresentation_DAI
Presentation_DAI
 
The Evaluation of Generic Architecture for Information Availability (GAIA) an...
The Evaluation of Generic Architecture for Information Availability (GAIA) an...The Evaluation of Generic Architecture for Information Availability (GAIA) an...
The Evaluation of Generic Architecture for Information Availability (GAIA) an...
 
The Evaluation of Generic Architecture for Information Availability (GAIA) an...
The Evaluation of Generic Architecture for Information Availability (GAIA) an...The Evaluation of Generic Architecture for Information Availability (GAIA) an...
The Evaluation of Generic Architecture for Information Availability (GAIA) an...
 
AI
AIAI
AI
 
Agents(1).ppt
Agents(1).pptAgents(1).ppt
Agents(1).ppt
 
leewayhertz.com-Auto-GPT Unleashing the power of autonomous AI agents.pdf
leewayhertz.com-Auto-GPT Unleashing the power of autonomous AI agents.pdfleewayhertz.com-Auto-GPT Unleashing the power of autonomous AI agents.pdf
leewayhertz.com-Auto-GPT Unleashing the power of autonomous AI agents.pdf
 
trust,bargain,negotiate in artificail intelligence
trust,bargain,negotiate in artificail intelligencetrust,bargain,negotiate in artificail intelligence
trust,bargain,negotiate in artificail intelligence
 
Role of system analyst
Role of system analystRole of system analyst
Role of system analyst
 
Roleofsystemanalyst 130123074015-phpapp02
Roleofsystemanalyst 130123074015-phpapp02Roleofsystemanalyst 130123074015-phpapp02
Roleofsystemanalyst 130123074015-phpapp02
 
Group 1 (3009, 01, 02, 03, 04) interacting with agents, direct manipulation t...
Group 1 (3009, 01, 02, 03, 04) interacting with agents, direct manipulation t...Group 1 (3009, 01, 02, 03, 04) interacting with agents, direct manipulation t...
Group 1 (3009, 01, 02, 03, 04) interacting with agents, direct manipulation t...
 
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
 

Dernier

SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 

Dernier (20)

DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 

Agent uml

  • 2. It is a changes towards Requirements Engineering
  • 3. Introduction – traditional approach Software Engineers make changes Software System {Knowledge} Code Software Engineers Requirements Models Design Models … E.g.UMLmodels
  • 5. Introduction – our thinking translate Agent Software System • Models are reused Agent-oriented Models {Knowledge} E.g.UMLmodels XMLmodels • Re-generation of the system is not necessary CASE tool Make changes
  • 6. The Changing Needs of Requirements Modelling 1. Technology as enabler  Goals are discovered; may be bottom-up 2. Networked systems and organizations  Composite systems, but dispersed, fluid, contingent, ephemeral  Same for responsibilities, accountability, authority, ownership,… 3. Increased inter-dependency and vulnerability  Dependencies among stakeholders (inc. system elements)  Impact of changes 4. Limited knowledge and control  No single designer with full knowledge and control 5. Openness and uncertainties  Can’t anticipate all eventualities / prescribe responses in advance 6. Cooperation  Beyond vocabulary of “interaction” (behavioural)  Reason about benefits of cooperation – goals, beliefs, conflicts
  • 7.  Requirements can be organised around agents. Agents are responsible for realising the requirements.  Agent is the container and business rule is the knowledge to fill the container in the requirements model.  Agent and business rule complements each other in the implementation: the former is the actor, the latter guides it and dictates the role that it plays.  The mapping from requirements to implementation for both the agent and the business rule brings traceability. Two additional model element – agent
  • 8. supportsrealises is_responsible_for consists_of plays Human Agent Business Role Business Rule Business Function collaborates _with Business Agent Software Agent Business Process Business Goal Business Class contributes_to Sub-Goal relates_with participates_in Agents play business roles, their behaviour is dictated by business rules and functions Agents collaborate to realise business goals by participating in business processes Business rules and functions support business goals Meta-model Business rules and functions represent functional requirements. They become agent behaviour and class method respectively. Classes are managed by agents, and rules are configured for the invocation of methods.
  • 9. i* - agent-oriented modelling Actors are semi-autonomous, partially knowable Strategic actors, intentional dependencies Meeting Scheduling ExampleMeeting Scheduling Example “Strategic Dependency” Model
  • 10. Analysis and Design of Agent-Oriented Systems e.g., Wooldridge Jennings Kinny (JAAMAS 2000) “GAIA” Analysis level Roles and Interactions oPermissions oResponsibilities • liveness properties • safety properties oActivities oProtocols  Design level  Agent types  Services Modelling concepts being driven from programming again?!! • Structured Analysis from Structured Programming • OOA from OOD, OOP • AOA from AOP ??
  • 11. What are the important concepts for Agent Orientation as a Modelling Paradigm ? Intentionality Autonomy Sociality Identity & Boundaries Strategic Reflectivity Rational Self-Interest
  • 12. Agent Orientation as a Modelling Paradigm Intentionality Agents are intentional. Agent intentionality is externally attributed by the modeller. Agency provides localization of intentionality. Agents can relate to each other at an intentional level. Autonomy Sociality Identity & Boundaries Strategic Reflectivity Rational Self-Interest
  • 13. Agent Orientation as a Modelling Paradigm Intentionality Autonomy An agent has its own initiative, and can act independently. Consequently, for a modeller and from the viewpoint of other agents: o its behaviour is not fully predictable. o It is not fully knowable, o nor fully controllable. The behaviour of an agent can be partially characterized, despite autonomy, using intentional concepts.  Sociality  Identity & Boundaries  Strategic Reflectivity  Rational Self-Interest
  • 14. Agent Orientation as a Modelling Paradigm Intentionality Autonomy Sociality  An agent is characterized by its relationships with other agents, and not by its intrinsic properties alone.  Relationships among agents are complex and generally not reducible.  Conflicts among many of the relationships that an agent participates in are not easily resolvable.  Agents tend to have multi-lateral relationships, rather than one-way relationships.  Agent relationships form an unbounded network  Cooperation among agents cannot be taken for granted.  Autonomy is tempered by sociality.  Identity & Boundaries  Strategic Reflectivity
  • 15. Agent Orientation as a Modelling Paradigm Intentionality Autonomy Sociality Identity & Boundaries Agents can be abstract, or physical. The boundaries, and thus the identity, of an agent are contingent and changeable. Agent, both physical and abstract, may be created and terminated. Agent behaviour may be classified, and generalized. Strategic Reflectivity Rational Self-Interest
  • 16. Agent Orientation as a Modelling ParadigmAutonomy Intentionality Sociality Identity & Boundaries Strategic Reflectivity Agents can reflect upon their own operations. Development world deliberations and decisions are usually strategic with respect to the operational world. The scope of reflectivity is contingent. Rational Self-Interest
  • 17. Agent Orientation as a Modelling ParadigmIntentionality Autonomy Sociality Identity & Boundaries Strategic Reflectivity Rational Self-Interest An agent strives to meet its goals. Self-interest is in a context of social relations. Rationality is bounded and partial.
  • 18. What is an agent An agent is an hardware or software system placed in an environment that enjoys the following properties: oAutonomy oSocial ability oReactivity oProactivity [Wooldridge et al, 1995]
  • 19. A stronger notion of agent Another stronger notion assigns to the agent also the following properties:  Mentalistic notions: o Beliefs o Desires o Intentions  Emotional notions: o Trust o Friendship o Suspiciousness [Wooldridge et al, 1995]
  • 20. When agent notion is useful  The agent notion is adaptable to many HW and SW systems but it is particularly useful in such contexts where complexity is high enough to make the simple notion of object insufficient to describe the system.  The focus is on the behaviour of agents and not on the content of objects (attributes and methods).  Agent-oriented programming is at an abstraction level higher than object-oriented programming.
  • 21. Agent-oriented programming (1)  Agent-oriented programming (AOP) is a specialisation of object-oriented programming (OOP) in the way the computational system is conceived: “The computational system is seen as composed of communicating modules, each with its own way of handling messages.” [Shoham, 1993]  The (mental) state of modules (agents) consists of components such as beliefs, capabilities and intentions.
  • 22. Agent-oriented programming (2)  A computation consists of agents that:  Inform other agents about facts  Offer and request services  Accept or refuse proposals  Compete for accessing shared resources  Collaborate for achieving common goals OOP AOP Basic unit Object Agent Parameters defining state of basic unit Unconstrained Belief, commitments, chioces, … Process of computation Message passing and response methods Message passing and response methods Types of messages Unconstrained Inform, request, offer, promise, decline Constraints on methods None Honesty, consistency, …
  • 23.
  • 24. What is Agent UML  Agent UML is a support notation for agent-oriented systems development.  It consists in using the UML modeling language and extending it in order to represent agents, their behaviour and interactions among them.  AUML is not restricted to using UML. Other approaches should be used wherever it makes sense.
  • 25. Who is interested in AUML  OMG Special Interest Group:OMG Special Interest Group: recommends standards for agent technology where appropriate (www.omg.org)  FIPA (Foundation for intelligent physicalFIPA (Foundation for intelligent physical Agents)Modeling Technical Commitee:Agents)Modeling Technical Commitee: tasked with developing an AUML standard (www.auml.org)  Other methodologies:Other methodologies: MESSAGE, Gaia, Tropos, Prometheus, MaSE, ...
  • 26. Common features of agents Agents share some common characteristics:  Identifier • identifies each agent in a multiagent system  Role • defines the behaviour of an agent into the society (es. Seller, Buyer)  Organization • defines the relationships between the roles (similar to human or animal organizations such as hierarchies, markets, groups of interest or herds)  Capability • specifies what an agent is able to do and under what conditions  Service • describes an activity that an agent can perform and is provided to other agents
  • 27. Representation of agents  UML Class Diagrams can be used to represent the static view of agents. <<agent>> agent-name Role role 1, role 2, …, role n role dynamic 1, role dynamic 2, …, role dynamic n Organization organization 1, organization 2, …, organization n org dynamic 1, org dynamic 2, …, org dynamic n
  • 28. Capabilities representation (1)  A capability is composed of the following parts:  Input o What the agent must receive in input to achieve his task  Output o What the capability generates as a result of the work  Input constraints o Constraints that are expected to hold in the situation before the action specified by the capability can be performed  Output constraints o Constraints hat are expected to hold in the situation after the action specified by the capability has been performed  Input-output constraints o Constraints that must hold across input and output situations  Description o A description in natural language of the capability
  • 29. Capabilities representation (2) <<capability>> addition Input x,y:Integer Output s:Integer Description This capability makes the sum of two integers and returns an integer <<agent>> sum Role addition, subtraction rd 1 Organization calculator Protocol enter-society, exit-society compute <<capability>> subtraction Input x,y:Integer Output d:Integer Input Constraint x>=0, y>=0 Input-Output Constraint x-y >=0 Description This capability makes the difference of two integers and returns an integer • Example of capability representation: The agent ‘sum’ has two capabilities expressing the fact that he is able to make additions and subtractions They can be defined using OCL or simple logic expressions
  • 30. Service representation (1)  A service is composed of the following parts:  Name • The name of the service  Description • A description in natural language of the service  Type • The type of the service  Protocol • A list of interaction protocols supported by the service  Agent communication language • The communication languages used in this service  Ontology • A list of ontologies supported by the service  Content language • A list of content languages supported by the service  Properties • A list of properties that discriminate the service
  • 31. Service representation (2) <<agent>> sum Role addition, subtraction rd 1 Organization calculator Protocol enter-society, exit-society compute <<service>> computation Description This service makes an addition when requested by the request addition protocol and makes a subtraction when requested by the request- subtraction protocol Type computation Protocol request-addition request-subtraction Agent Communication Language FIPA ACL Ontology computation ontology Content Language FIPA SL • Example of service representation: The agent ‘sum’ exports a service that makes additions and subtractions on demand
  • 32. Representing interactions  Agent interactions can be represented in UML standard using sequence diagrams
  • 33. Concurrent interactions (1)  UML has been extended in order to represent concurrent communication acts sent from the sender agent to the receiver.  a) Concurrent communication acts from CA-1 to CA-n are sent in parallel.  b) A selection of the n acts is sent in parallel (zero or more).  c) Exclusive choice: only one of the communication acts is sent.
  • 34. Concurrent interactions (2)  a) An agent sends 3 concurrent CA to another agent. The diagram can be interpreted in two different ways:  Every CA is processed from the same agent/role by a different thread of execution  Every CA is processed by a different role of the agent (in this case mesages can be annotated specifying the role)  b) The same semantic of (a) but with a simpler notation  c) Choice from three different communication act received by three different threads (or roles)  NOTE: each concurrent CA can be sent to different agents
  • 35. Example of interaction  The Buyer sends a request-for- proposal to the Seller  The Seller has three options to choose within the deadline:  make a proposal  refuse (with different reasons)  say he did not understand  If the Seller has made a proposal, the Buyer has the choice to reject or to accept it  If the last is the case, the Seller schedules the proposal informing the Buyer about its the state  The Buyer can cancel the proposal execution at any time
  • 36. Detailing interaction messages  Any interaction process can be expressed in more detail.  The “leveling” can continue down until the problem has been specified adequately to generate code.  Also activity diagrams and statecharts can be used.
  • 37. Roles management  UML sequence diagrams can be used to represent changes in agents’ role.
  • 38. Object role in AOP  Objects may always be included in an agent-oriented system and can communicate with agents using message passing methods.
  • 39. References (1)  Agents  [Wooldridge et al, 1995] Wooldridge and Jennings Intelligent Agents: Theory and Practice Knowledge Engineering Review Volume 10 No 2, June 1995 Cambridge University Press (www.csc.liv.ac.uk/~mjw/pubs/ker95/ker95-html.html)  [Shoham, 1993] Y. Shoham Agent-oriented programming Artificial Intelligence 60(1):51-92 (http://www.ncat.edu/~esterlin/c7902s02/Notes/Shoham.pdf)
  • 40. References (2)  Agent UML  http://www.auml.org/  http://www.jamesodell.com/  http://aot.ce.unipr.it/auml/

Notes de l'éditeur

  1. If you have several points, steps, or key ideas use multiple slides. Determine if your audience is to understand a new idea, learn a process, or receive greater depth to a familiar concept. Back up each point with adequate explanation. As appropriate, supplement your presentation with technical support data in hard copy or on disc, e-mail, or the Internet. Develop each point adequately to communicate with your audience.