350 likes | 585 Views
Agent Modeling Language: An Overview. Wendell Véras Vinícius Remígio Jacques Robin. Outline. Requirements of a MAS modeling language (chapter 3) Package structure and link with UML2 and OCL2 Relation to UML2 metamodel (section 4.5) AML metamodel package structure (chapter 9)
E N D
Agent Modeling Language:An Overview Wendell Véras Vinícius Remígio Jacques Robin
Outline • Requirements of a MAS modeling language (chapter 3) • Package structure and link with UML2 and OCL2 • Relation to UML2 metamodel (section 4.5) • AML metamodel package structure (chapter 9) • AML extension of UML notation (chapter 8) • AML extension of UML metamodel (chapter 15) • AML diagrams (chapter 16) • AML extension of OCL metamodel (chapter 17) • MAS, entities and semi-entities (sections 5.1-2) • Modeling mechanisms (chapter 6) • Class vs. instance • Abstract vs. concrete entity types • Autonomy • Structural aspects (sections 5.3, 6.1-2) • Social aspects (section 5.4, 6.3, 6.6) • Deployments (section 5.5, 6.4) • Behaviors (section 5.6, 6.5) • Mental aspects (section 5.7, 6.7) • Ontologies (section 5.8, 6.8) Sugestão: Wendell 5-10, Vinícius 1-4
Requirements of a MAS modelling language • Theorically sound: • best practices from AOSE and OOSE domains • Well specified and documented: • Detailed and comprehenseive specification of its syntax, semantics and use • Comprehensive • Enables to create complex models of systems • Consistent • Conceptual, semantic and syntatic perspectives • Easy to use • Modelling constructs are easy to learn and apply • Extensible • Allows to specialize and extend the provided modelling means • Generic • Independent of any particular thory, process or technology • Automatable • CASE tools support
Requirements of a MAS modelling language • Challenges • Satisfy all those quality criteria • None of the existing agent-oriented modelling languages are able to satisfy them • Quality criteria specified are generics • Used as general rules for designing any software modeling/ specification language • Evaluation criteria to other modeling/specification language
AML Architecture • Based on UML 2.0 Superstructure!!! • KobrA2 Metamodel and Profile are also based on UML2 superstructure • An integration can be easily provided • Advantages of AML • Reuse well-defined • Mechanisms for specifying and extending UML-based languages • (metamodel and UML profiles) • Ease of incorporation into existing UML—based CASE tools
AML Architecture • UML level • UML2 Superstructure defines abstract syntax, semantics • Used to define MAS-specific modeling constructs • AML metamodel and notation • Defines AML syntax, semantics and notation • AML Kernel • Core of AML • Specific modeling elements are defined • UML extension for AML • Adds meta-properties and structural constraints to the standard UML elements • AML Profile • Define own language extensions to customize AML for specific modeling elements
AML Entities and Semi-entities • Multi-agent System • Composed by several agents • Mutual interactions • AML MAS consists in Agents and other entity types (environments and resources
AML Entities and Semi-entities • Entities • Entity types interconnected such as named agents, environments and resources • Represented by concrete classes in MAS conceptual metamodel • Categorized according their specific characteristics into several categories expressed by abstract classes used as superclasses • Semi-Entities • Abstract metamodelling concepts • Defines features specific to a particular entity, however does not represent an entity • Entities inherit features from semi-entities
AML Entities and Semi-entities • AML conceptual metamodel of MAS defines: • Structural semi-entity • Capability of entity to have attributes • To be decomposed and to be linked into other structural semi-entities • Socialized semi-entity • Represents the capability of an entity to form societies and social relationships • Behaviored semi-entity • Ability to own capabilities • Interact with other behaviored semi-entities • Provide and use services • Observe and effect their environment • To be decomposed into behavior fragments • Mental semi-entity • Capability to possess mental attitudes • Objectives, needs, motivations, desires, believes
AML Entities and Semi-entities • Entity • Represent independent object • Can be hosted by agent execution environments • Behavioral entity • Represents entities having features of behaviored semi-entities and socialized semi-entities • Autonomous entity • Self-contained entities capable of autonomous behavior in their environment • Resource • Physical or an informational entity within the system • Available and usable • Agent • Specialized autonomous entity • Autonomy: control over its own state aand behavior • Proactive, reactive • Ability to interact: interact with its environment • Perceptions, effecting actions • Environment • Collection of entities which provides conditions to exist and function • Aspects of world • Principles (laws, rules, constraints, policies, services...) • Their properties can change over time
Extentions to Standard UML Notations • Presentation options for some UML elements • Provides more intuitive and comprehensive notation
Extentions to Standard UML Notations • Stereotype classifier • Components • Component is a UML CompositeStructure • Can Provide and/or require Interface(s) • Can be composed by ComponentRealization
Extentions to Standard UML Notations • Stereotype classifier • Classes • Class diagram of Kernel Package
Extentions to Standard UML Notations • Stereotype classifier • Interface • Contents of Interface package
Extentions to Standard UML Notations • ConnectableElement with stereotyped type • Abstract metaclass representing a set of instance that plays roles of a classifier • A ConnectableElement Company is an accountOwner in a ConnectableElement Bank
Extentions to Standard UML Notations • Connector with a stereotyped type • Specifies a link that connects two or more instances • Link can be an instance of Association • Connectors Diagrams
Extentions to Standard UML Notations • Lifeline with a stereotyped type
Extentions to Standard UML Notations • Composed lifelines in communication diagrams • Lifelines that represents owned attributes of a StructuredClassifier can be nested within Lifeline
Extentions to Standard UML Notations • ObjectNode with a stereotyped type • ObjectNode is an abstract activity • Indicates an instance of a particular classifier, in a parcicular state, available at a particular point activity • Presentation option can be applied to all ObjectNode subclasses • EliminateIntruder is an Activity having an ActivityParameterNode
Extentions to Standard UML Notations • Bi-directional dependencies • opposite Dependencies of the same kind connect two Named-Elements • (a) UML Notation (b) Simplified Notation
Extentions to Standard UML Notations • Internal structure of Connectable elements
UML extension for AML • Adds meta-properties defined in AML kernel package to UML 2.0 Superstructure metaclass • Optional part of language
UML extension for AML • Extended Actor • Specialized AutonomousEntityType • Own MentalProperties • Capabilities • be decomposed into BehaviorFragments, • provide and/or use service • observe and/or effect its environment • play entity roles • participate in social relationships • specify values of the meta-attributes defined by the Socialized-SemiEntityType
UML extension for AML • Extended BehavioralFeature • Can also specify meta-associations: pre-conditions, post-conditions, inputs and outputs • AgentType SoccerRobot and its action shoot() with some constraints
UML extension for AML • Extended Behavior • Can also specify meta-associations: pre-conditions, post-conditions, inputs and outputs • Activity SubstitutionAlgorithm can specify pre- and post-conditions
Diagrams • Diagram frames • AML extends UML2 notation • Alternativesyntaxoftheheadingofdiagram • Listoftemplateparameters for diagram frames whichrepresenttemplates • Kind is the type • Owner is the name of namespace enclosing • Diagram name: the name of diagram (¬¬) • Property-string specifies the tagged name of namespace enclosing
Diagrams • AML extends UML2 diagram frame kinds
Diagrams • TemplateParameters • AML frames representing the templates can specify the list of TemplateParameters is placed in a dashed retangle • Subsets can be depicted in the form of stereotyped lists, or placed into separate compartments
Diagrams • AML extends the set of diagram types defined by UML with the following diagram types • Mental Diagram: • Used to capture mental attitudes of mental semi-entities (goals, plans, beliefs and MentalRelationships) • Goal-based requirements diagram • Contains specification of the system stakeholder’s mental attitudes • Society diagram • Capture the global view of MAS’ architecture • Entity diagram • Capture details of the internal structure of an EntityType • Service diagram • Shows a specification of a service • Ontology diagram • Shows a specification of an ontology
Diagrams (cont.) AML extends the set of diagram types defined by UML with the following diagram types • Behavior Decomposition Diagram • Shows BehaviorFramgments, owned Capabilities and their mutual Relationships • Protocol Sequence diagram • Specification of an InterationProtocol in the form of a Sequence Diagram • Protocol Communication diagram • Specification of an InterationProtocol in th form of Communication diagram • Service Protocol Sequence diagram • Specification of an ServiceProtocol in th form of Sequence diagram • Service Protocol Communication diagram • Specification of an ServiceProtocol in th form of Communication diagram • MAS Deployment diagram • Deployment of MAS to a physical environment and structural aspects of mobility
Extension of OCL • AML defines set of operations to extend OCL to include expressions belonging: • Modal Logic • Deontic Logic • Temporal Logic • Dynamic Logic
Extension of OCL • Dynamic Logic (cont.) • Epistemic Logic
Extension of OCL • BDI Logic • Other operators
Agent Modeling Language:An Overview Wendell Véras Vinícius Remígio Jacques Robin