multi agent systems
DESCRIPTION
Multi Agent Systems. Content. Introduction to the Theory of Multi-Agent Systems A Brief Summary of the Project “Logic and Artificial Intelligence for Multi-Agent Systems” (Logic & MAS) The Project in more details: Logic and Communication (TL Language, Ontology) - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/1.jpg)
page - 1 / 88VŠB – Technical University of Ostrava
Multi Agent Systems
LabIS: http://labis.vsb.cz/
![Page 2: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/2.jpg)
page - 2 / 65VŠB – Technical University of Ostrava
Content
• Introduction to the Theory of Multi-Agent Systems
• A Brief Summary of the Project “Logic and Artificial Intelligence for Multi-Agent Systems” (Logic & MAS)
• The Project in more details:
• Logic and Communication (TL Language, Ontology)
• Geographical Data and Infrastructure
• Process Management (has been presented by Prof. Ivo Vondrák)
• Further research
• Discussion
![Page 3: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/3.jpg)
page - 3 / 88VŠB – Technical University of Ostrava
Multi Agent System
Distributed application• runs on many computers over the network
(Internet). Composed of agents
• there can be hundreds or thousands of agents which cooperate to achieve their goals.
No centralized control• agents are (less or more) intelligent and
autonomous• generally, there is no central dispatcher
![Page 4: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/4.jpg)
page - 4 / 88VŠB – Technical University of Ostrava
Agent Characterisation
• (Jacques Ferber)Agent is a physical or virtual entitya) which is capable of acting in an environmentb) which can communicate directly with other agentsc) which is capable of perceiving it's environment
(to a limited extent)d) which can offer services and possesses skills e) may be able to reproduce itselff) tends towards satisfying it's objectivesg) may be able to learn by experience
h) etc., more...
![Page 5: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/5.jpg)
page - 5 / 88VŠB – Technical University of Ostrava
Object vs. AgentObject Agent
Encapsulates methods and attributes
Encapsulates behaviour
Communicates by method calling
Communicates by asynchronous messages in a higher language
Performs a predefined task when called
Performs a task if it wants to
Synchronization of threads is necessary
Agents are not dependent on each other
Less autonomous More autonomous
Predefined behaviour Dynamic, intelligent and autonomous behaviour
without intelligence: n = 0. Intelligence of a degree n > 0.
![Page 6: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/6.jpg)
page - 6 / 88VŠB – Technical University of Ostrava
Agents can perceive an environment
• Agents can carry out actions which modify agent's environment.
• Agents can perceive the environment and make decisions based on it.
![Page 7: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/7.jpg)
page - 7 / 88VŠB – Technical University of Ostrava
Agents communicate with each other
• Outer languages • define an envelope
format for languages and are not concerned with the content
(KQML, FIPA-ACL)
• Inner languages• are concerned only
with the content. The content of a message can be specified in any language that agents can understand
(Prolog, JESS, XML, ...)
How are you?
Hello
What's the time?
fine, thanks
10:30
![Page 8: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/8.jpg)
page - 8 / 88VŠB – Technical University of Ostrava
Agents learn by experience
• Artificial intelligence• Expert systems• Logic and intelligent decisions in difficult
situations• Autonomy
???
![Page 9: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/9.jpg)
page - 9 / 88VŠB – Technical University of Ostrava
Knowledge representation
• Ontology• is widely used for describing some parts of the real
world. Can be represented in different logical languages (e.g. W3C OWL) which can be easily interpreted by computers and humans. Today, there are many ontology databases and libraries which are focused on different topics (mobile devices, cars, vines, weather and many others).
What is the weather?
It is raining,rather take an umbrella
OK, I willconsider it ...
![Page 10: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/10.jpg)
page - 10 / 88VŠB – Technical University of Ostrava
Agents’ features
• Agents can clone themselves
• They are able to move from one computer to another one.
Clone
Change PC
![Page 11: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/11.jpg)
page - 11 / 88VŠB – Technical University of Ostrava
Multi Agent World
Agents
EnvironmentPerception
Actions
Communication
Internal representation of
environment
Internal representation of
environment
KnowledgeDesiresPlans
![Page 12: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/12.jpg)
page - 12 / 88VŠB – Technical University of Ostrava
Some Application Areas
• Robotics• Traffic simulation and navigation• Ubiquitous computing • Air traffic control • Network management • Distributed data mining • Manufacturing systems• And many others...
Emergency and critical situations
![Page 13: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/13.jpg)
page - 13 / 88VŠB – Technical University of Ostrava
Standardization
• FIPA (Foundation for Intelligent Physical Agents) • Standards for Intelligent Multi-agent systems.• Cooperation with universities and companies.• Conferences, seminars, workshops on multi-agent
systems• Standards for communication languages and
protocols.
![Page 14: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/14.jpg)
page - 14 / 88VŠB – Technical University of Ostrava
Content
Introduction to the Theory of Multi-Agent Systems
Logic and Artificial Intelligence for Multi-Agent Systems (Logic & MAS)
The Project in more details:
Logic and Communication (TL Language, Ontology)
Geographical Data and Infrastructure
• Process Management (has been presented by Prof. Ivo Vondrák)
• Further research
• Discussion
![Page 15: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/15.jpg)
Multi-Agent Systems 15
LOGIC & MAS The pilot project conducted at the Research Laboratory of Intelligent Systems (LabIS – http://labis.vsb.cz/ )
The main goal:Research of information technologies needed
for coordination of autonomous intelligent agents in extraordinary or emergency situations
![Page 16: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/16.jpg)
Multi-Agent Systems 16
Logic & Multi-Agent World
See the next presentantion VSE-MAS-B
![Page 17: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/17.jpg)
page - 17 / 88VŠB – Technical University of Ostrava
Communication Language based on TIL
• FIPA SL• TL Language
• TL vs. TIL• Ontologies• Examples• Implementation
• Example
![Page 18: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/18.jpg)
page - 18 / 88VŠB – Technical University of Ostrava
Communication Language based on TIL
A crucial point in a multi-agent environment: communication
Message• a unit of communication• can be of an arbitrary form, but• has to be structured in terms of attributes:
sender, receiver,. . . performative (communicative act) – inform, query,
request,. . . content – semantics of the message, encoded in
a content language ontology – vocabulary of concepts used in the content
![Page 19: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/19.jpg)
page - 19 / 88VŠB – Technical University of Ostrava
FIPA SL
• FIPA (The Foundation for Intelligent Physical Agents)• creates widely accepted standards for MAS• one of them is the content language FIPA SL (Semantic
Language)
• FIPA SL is based on FOL (First-order logic)=>
+ widely known, well elaborated logic, but- mathematical logic – “stenography of mathematics”- weak expressive power, over – inferring / under –
inferring - an extension is needed in order to make it possible to
communicate in a standardised natural language:• the type of a message (query, request,. . . )• the distinction between empirical and analytical
concepts• to properly analyse modalities – possible, necessary• to properly analyse attitudes – believing, knowing,
thinking, wanting, seeking, etc.
![Page 20: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/20.jpg)
page - 20 / 88VŠB – Technical University of Ostrava
FIPA SL
• SL Syntax – well defined (grammar)• SL Semantics (meaning) – poor:
• the standard work just contains Section “Notes on Semantics” (really just notes)
• derived from FOL semantics? – not applicable because of numerous extensions beyond FOL
• intuitive – is it?
• The poor semantics may lead to serious misunderstandings between agents.
![Page 21: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/21.jpg)
page - 21 / 88VŠB – Technical University of Ostrava
TL – Why?
• We propose a new content language: TL• TL is a FIPA compliant content language• TL is based on Transparent Intensional Logic (TIL)=> + rich bi-dimensional hierarchy of types
+ great expressive power+ fine-grained rigorous semantics+ Makes it possible to analyse natural language
expressions in a fine-grained way (and formal languages too, e.q. SL)
+ a universal semantic tool (specification of semantics, combining different languages together,. . . )
• Appropriate for• (complex) knowledge representation• human-level communication
![Page 22: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/22.jpg)
page - 22 / 88VŠB – Technical University of Ostrava
TL vs. TIL
• The TIL language of constructions is not apt for computerised processing, because• the TIL language
• is not standardised• uses non-ASCII characters (not found on the
keyboard)
• We need a standardised notation for types as well as for encoding constructions
• The epistemic base needs extending: a type of sequences is useful (and also a construction of it)
• There is no way of fixing ontologies in TIL (any entity of any order can be trivialised); we need to specify the chosen conceptual systems to work with
![Page 23: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/23.jpg)
page - 23 / 88VŠB – Technical University of Ostrava
TL vs. TIL
• the TL type base is an extension of TIL epistemic base
TL name TIL equivalent Description
Bool Truth values
Indi Individuals
Date Times
PSW Possible worlds
String
Integer
Float Action Type of action
![Page 24: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/24.jpg)
page - 24 / 88VŠB – Technical University of Ostrava
TL vs. TIL
Compound (molecular) types:• collections of partial functions (as in TIL)(Float,Indi Bool) ~ ()
• finite sequences of objects of particular types: Indi[]
Constructions:• variable – x or x:[Type]• trivialization – ’A ~ oA• application – (F A B C) ~ [F A B C]• abstraction – \x:[Type]A ~ x A• sequence – (Sequence:Type A B C)
• shortcut application – C@w,t ~ Cwt
![Page 25: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/25.jpg)
page - 25 / 88VŠB – Technical University of Ostrava
Grammar of TL (fragment)
TLExpression = Construction| Macro.
Macro = SequenceMacro.Construction = Trivialization
| Variable| Application| Abstraction.
Trivialization = "’" Concept| "’" PrimitiveValue| "’" Construction.
Concept = UpperCaseAtom| "#" "(" UpperCaseAtom ArgList
")"....
![Page 26: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/26.jpg)
page - 26 / 88VŠB – Technical University of Ostrava
TL and Ontologies
• An ontology is a vocabulary of domain-specific concepts (FIPA)
• All concepts used by a content language must be defined in an ontology
• Any concept in an ontology can be used by a content language
• TL types must be specified for concepts to be used in TL
• Ontologies are usually frame-like structures (frames with slots)
• The latest trend is Semantic Web & OWL (Description Logics).• It is not neglected by FIPA• but not supported (as yet)
![Page 27: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/27.jpg)
page - 27 / 88VŠB – Technical University of Ostrava
Example
Every prime number is odd. (not true)• Ontology (part)
• TIL analysis:[o x[o [oPrime x] [oOdd x]]]
• TL notation:(’All \x:[Integer](’Impl (’Prime x) (’Odd x)))
Name TIL type TL type
Prime () (Integer->Bool)
Odd () (Integer->Bool)
All, (()) ((Integer->Bool)->Bool)
Impl, () (Bool,Bool->Bool)
![Page 28: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/28.jpg)
page - 28 / 88VŠB – Technical University of Ostrava
Example
The highest mountain is in Asia.
• TIL analysis:wt[oInwt wt[oHighestwt oMountainwt]wt oAsia]
• TL notation:\w\t(’In@w,t ((\w\t(’Highest@w,t ’Mountain@w,t) w) t)
’Asia)
Name TIL type TL type
Highest (())((Indi->Bool)->Indi)@
Mountain ()(Indi->Bool)@
In ()(Indi,Indi->Bool)@
Asia Indi
![Page 29: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/29.jpg)
page - 29 / 88VŠB – Technical University of Ostrava
Implementation of TL
• TL is implemented in the MAS framework JADE (work in progress)
• JADE• open-source, extensible development framework in
Java• strictly FIPA compliant
• Ontologies are frame-like, edited by Protege.• Working on integration of OWL ontologies into TL.• Any agent can simply choose TL as the content
language for his messages.
![Page 30: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/30.jpg)
page - 30 / 88VŠB – Technical University of Ostrava
Example
The scenario contains:• large car parking, railway station
Agents:• Driver – would like to park close to the railway station• Dispatcher of the car parking managing available
pull-ins
Sketch of their dialogue:• Driver: I want you to park me somewhere not far
from the railway station.• Dispatcher: OK, I can park you at this pull-in
(concrete position).• Driver: Good.
![Page 31: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/31.jpg)
page - 31 / 88VŠB – Technical University of Ostrava
Ontology for the Example
Concept TL type
TheDriver Indi
TheDispatcher Indi
TheTrainStation Indi
Pull-in Indi
Near (Indi,Indi->Bool)@
Arrange (Indi,Bool@->Action)
Park (Indi,Indi->Bool)@
![Page 32: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/32.jpg)
page - 32 / 88VŠB – Technical University of Ostrava
Communication
Driver:call for proposal\x:[Indi](’Arrange ’TheDispatcher
\w\t(’And(’Park@w,t ’TheDriver x)(’Near@w,t ’TheTrainStation x)))
• A call for proposal is a communicative act which• takes one argument• returns the action to be proposed• such that the responding agent will fill in the
parameter x = the parking place
![Page 33: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/33.jpg)
page - 33 / 88VŠB – Technical University of Ostrava
Communication
Dispatcher:propose (\x:[Indi](’Arrange ’TheDispatcher
\w\t(’And (’Park@w,t ’TheDriver x) (’Near@w,t ’TheTrainStation x)))#(Pull-in (Position "<gml:Polygon>
<gml:outerBoundaryIs><gml:LinearRing> <gml:coordinates> 0,0 100,0 100,100 0,100
0,0; </gml:coordinates></gml:LinearRing>
</gml:outerBoundaryIs></gml:Polygon>")))
![Page 34: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/34.jpg)
page - 34 / 88VŠB – Technical University of Ostrava
Communication
Driver:Accept proposal
(same content as the last one)
Car Agent
1: Call for proposal Dispatcher
2: Propose
3: Accept proposal
![Page 35: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/35.jpg)
page - 35 / 88VŠB – Technical University of Ostrava
Future work on TL communication
• Integration of TL with Semantic Web• namely the Ontology Web Language (OWL)• specification of ontologies for TL based
communication
• Methodology of agents’ communication using the TL language
• Future Research: • Specification of an accurate inference machine
based on the expressive language such as TL• Implementation of the inference machine
![Page 36: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/36.jpg)
page - 36 / 88VŠB – Technical University of Ostrava
Content
Introduction to the Theory of Multi-Agent Systems
“Logic and Artificial Intelligence for Multi-Agent Systems” (Logic & MAS)
The Project in more details:
Logic and Communication (TL Language, Ontology)
Geographical Data and Infrastructure
• Process Management (has been presented by Prof. Ivo Vondrák)
• Further research
• Discussion
![Page 37: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/37.jpg)
page - 37 / 88VŠB – Technical University of Ostrava
Connecting GIS and Multi-agent systems
Storing
Geoinformaticsystem(GIS)
Gatheringdata
Maintaining
AnalyzingPresenting
![Page 38: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/38.jpg)
page - 38 / 88VŠB – Technical University of Ostrava
Relations between GIS and MAS
• Identity – situated agent corresponds to a feature stored in the geo-database
• Causal – agents can affect other features or their attributes (behaviour of agents is affected by state of GIS)
• Temporal – synchronization between MAS and GIS
• Topological – provides information about topological relations between features
![Page 39: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/39.jpg)
page - 39 / 88VŠB – Technical University of Ostrava
Environment perceiving
![Page 40: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/40.jpg)
page - 40 / 88VŠB – Technical University of Ostrava
Environment built in a vector layer
Creation ofinfrastructureagents
Vector geodata export togeodatabase
Geo Database
![Page 41: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/41.jpg)
page - 41 / 88VŠB – Technical University of Ostrava
Agent Based Environment
![Page 42: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/42.jpg)
page - 42 / 88VŠB – Technical University of Ostrava
Agent types
• Infrastructure agents• streets, crossroads, other infrastructure objects
• Mobile agents• vehicles, humans
• Database agent• providing access to geographic databases
• Visualization agent• performing visualization of static and dynamic
agents
![Page 43: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/43.jpg)
page - 43 / 88VŠB – Technical University of Ostrava
Implementation environment
• JADE• Java Agent DEvelomement framework – framework that
simplifies agent creation and deployment• PostGIS
• Open source spatial database, used for data storage and perception of the environment
• GRASS, JUMP, 3D visualization module• Used for visualization purposes only
![Page 44: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/44.jpg)
page - 44 / 88VŠB – Technical University of Ostrava
Implementation environmentUser Interface
(JUMP, GRASS, 3D)Database Agent
ACL
ACL
ACL
Other Agents
Geo Database
![Page 45: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/45.jpg)
page - 45 / 88VŠB – Technical University of Ostrava
Application screenshots
![Page 46: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/46.jpg)
page - 46 / 88VŠB – Technical University of Ostrava
Application video
![Page 47: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/47.jpg)
page - 47 / 88VŠB – Technical University of Ostrava
Content
Introduction to the Theory of Multi-Agent Systems
“Logic and Artificial Intelligence for Multi-Agent Systems” (Logic & MAS)
The Project in more details:
Logic and Communication (TL Language, Ontology)
Geographical Data and Infrastructure
Process Management
Discussion
![Page 48: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/48.jpg)
page - 48 / 88VŠB – Technical University of Ostrava
Process management in MAS
• MAS software process is similar to the standard information system development process
• There are some differences, however:• functions, properties and skills of MAS are very close
to the real world situations• emphasis is placed on social behavior of system
components and the whole system• emphasis on the autonomy of components• emphasis on communication level between
components• components of such systems are Agents
• Methodology used during the development process - UML
![Page 49: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/49.jpg)
page - 49 / 88VŠB – Technical University of Ostrava
MAS Development Process
Processes Agents
Business Model
Real World
“Tools” that support this development process• standard software process and methodology• UML tools with some extensions – Behavior Activity Diagram• etc.
![Page 50: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/50.jpg)
page - 50 / 88VŠB – Technical University of Ostrava
Basic definitions
• Agent term describes a software abstraction, an idea, or a concept, similar to OOP terms such as methods, functions, and objects. The concept of an agent provides a convenient and powerful way to describe a complex software entity that is capable of acting with a certain degree of autonomy in order to accomplish tasks on behalf of its user. But unlike objects, which are defined in terms of methods and attributes, an agent is defined in terms of its behavior.
• Behavior refers to the actions or reactions of an object or organism, usually in relation to the environment. The complexity of the behavior of an organism is related to the complexity of its nervous system (internal structure, knowledge and skills).
• Realization is the element that provides an description for implementation of an element that specifies behavior, by other words, the Realization is one of possible implementation of Process; this implementation is specified by one “Behavior Activity Diagram”
![Page 51: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/51.jpg)
page - 51 / 88VŠB – Technical University of Ostrava
Basic definitions
• Process is a naturally occurring or designed sequence of operations or events, possibly taking up time, space, expertise or other resource, which produces some outcome. A process may be identified by the changes it creates in the properties of one or more objects under its influence. The Processes form the Behavior of an Agent.
• Activity is something done as an action. It is atomic action within the Process.
• Process or Activity Nodes are the graphical representation of afore mentioned terms.
![Page 52: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/52.jpg)
page - 52 / 88VŠB – Technical University of Ostrava
Agents’ Behaviors
• What is the Behavior of an Agent?• We have to specify:
• everything that an Agent can do,• including Agent’s abilities and potency of
• solving the problems he/she/it can meet, and of• responding to changes in the environment
• There are several types of behavior templates corresponding to Agent’s classification:• simple reactive behavior• simple proactive behavior• hybrid behavior (combined reactive and proactive
behavior)
• The Behavior is defined by Processes within the Agent’s life
![Page 53: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/53.jpg)
page - 53 / 88VŠB – Technical University of Ostrava
Agents’ Processes
• Process is a tool for describing Agent’s elementary Behaviors
• Each description of a Process consists of the following:• input objects• output objects (in agreement with the goals of the
process)• a set of possible realizations (executing the function,
mapping: Inputs Outputs)
• Its execution depending on a current situation • Each Process can be realized in several ways –
possible realizations of the process
![Page 54: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/54.jpg)
page - 54 / 88VŠB – Technical University of Ostrava
Internal Structure of Agents
• Processes can be defined as• internal: within an Agent• external: in the global repository
• (Internal) Processes within a given Agent• executable only by the given Agent• they can extend or restrict globally defined
processes too
• (External) Processes saved in the global repository• executable by all the Agents within the MAS• possibility of learning and changing the Behavior
![Page 55: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/55.jpg)
page - 55 / 88VŠB – Technical University of Ostrava
Internal Structure of Agents
Agent_A primary process activity 1 activity 2 process 1 activity 1 activity 4 process 2 activity 3 activity 5
Agent_B primary process activity 6 process 3 activity 3 activity 4 process 1 activity 1 activity 4
Process defined in the global repository
Process may have different control flows defined by
Realizations
Only one possibility to connect the Agents –
message passing
![Page 56: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/56.jpg)
page - 56 / 88VŠB – Technical University of Ostrava
Activity Diagram Extension
getAgentName
Agent_B
Identification of the Agent (type of agents) acts in the receiver role during this communication. The receiver can be just one instance of Agent type (Agent_B) or all instances of a given Agent type ([Agent_B]).
Envelope icon for send/receive activity indication.Main activity element shape
with the name of the sended message. This name
represents the message that is unique in the whole MAS.
getAgentName
Agent_A
The illustration of branching based on incoming message
and standard decision element.
Main activity element shape with the name of the
received message. The name of this activity can be
real name of received message (in the case of
one-to-one communication) or it can be replaced by
“<<unknown>>” string in the case of multiple or unknown
messages receiving.
<<unknown>>
<<undefined>>
<<unknown>>
Agent_A
[msg: getAgentName from: Agent_A] [msg: getColor
from: Agent_A]
Identification of the Agent acts in the sender role. This name of agent can be replaced by the “<<undefined>>” string in the case of receiving message from unknown or multiple sources.
![Page 57: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/57.jpg)
page - 57 / 88VŠB – Technical University of Ostrava
Activity Diagram Extension
![Page 58: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/58.jpg)
page - 58 / 88VŠB – Technical University of Ostrava
Realizations of Process
• Realization describes an algorithm of transforming Inputs into Outputs depending on a current situation (Agent’s reactions)
• Each Realization has to be in accordance with the parent process definition (objectives, input and output objects)
• Each Realization is one “Behavior Activity Diagram” – based on the UML Activity Diagram (from the visual point of view)
• For these purposes, the Multi-Agent Technology calls for an extension of the standard UML approach
![Page 59: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/59.jpg)
page - 59 / 88VŠB – Technical University of Ostrava
Metamodel of MAS Model
ModelCore
Process
0..*
Agent
0..*
0..*
Realization
1..*
Message
0..*
Activity
0..*
Object
0..*
DiagramNode
0..*
InitialNode
FinalNode
SplitNode
JoinNode
DecisionNode
ActivityNode
SendReceiveActivityNode
ProcessNode
DiagramConnection
0..*
2
0..1
0..1
Object Activity
Process
Realization
0..*
0..*
0..*
0..*
0..* 0..*
Each Activity, Behavior and Processhas one set of Input Objectsand one set of Output Objects
ScoreType
0..*
ScoreValue
0..*
0..*
![Page 60: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/60.jpg)
page - 60 / 88VŠB – Technical University of Ostrava
Intelligence & Behavior
• Intelligence contained in the activities• weather forecast, etc.
• Intelligence of the control flows routing• suitable car to a given cargo assignment, etc.
• Intelligent selection of Process Realizations• reconfiguration approach
![Page 61: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/61.jpg)
page - 61 / 88VŠB – Technical University of Ostrava
Behavior Reconfiguration
• Agent’s Behavior can evolve during its life• as a reaction to a current situation in the
moment of emergency (when executing a process).
• This reconfiguration is based on the current state (objects, environment, etc.) of an Agent and/or the whole MAS, and it works with sets of particular Realizations of Processes.
Control Flow of the executed processin the moment of reconfiguration
Process = Reconfiguration Point
Current position in the behavior
Possible realizations of a given process
The most suitable realization
Control Flow of the executed processafter the reconfiguration
![Page 62: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/62.jpg)
page - 62 / 88VŠB – Technical University of Ostrava
Behavior Reconfiguration
![Page 63: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/63.jpg)
page - 63 / 88VŠB – Technical University of Ostrava
Behavior Reconfiguration
• Each Process node within the “Behavior Activity Diagram” can be a reconfiguration point – the position of Behavior that can be changed
• Basic reconfiguration algorithm1. selection of applicable Realizations from a given
Process set2. selection of the most suitable Realization3. execution of the selected Realization
• Tools for support of the reconfiguration• simple branching based on conditions• logical tools• Artificial Intelligence, Expert Systems
![Page 64: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/64.jpg)
page - 64 / 88VŠB – Technical University of Ostrava
Selection of an applicable Realization
• Process approach- Realizations are combinedwith a given Process withinthe modeling phase- easy selection- low intelligence and flexibility
• Logical approach- real-time selection of Realizations
- errors can occur- describing from the logical point of view may be difficult- high intelligence and flexibility
process 1
Agent_A global repositorylocal repository of Agent_A
process 1
Agent_A global repositorylocal repository of Agent_A
Selection of suitable process realizations is
provided by the logic tools during the real-time
running of a given agent. The set of
selected realizations can be different from the set defined by connections.
A)
B)
Assignment of particular process realizations to a
given process is ensured by the links
between the process and all possible specifications of
realizations. This is done during the modeling
phase.
![Page 65: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/65.jpg)
page - 65 / 88VŠB – Technical University of Ostrava
Selection of a Realization
• Modified reconfiguration algorithm1. specification of the set of process Realizations –
based on the process approach2. defining a set of applicable Realizations for a given
Process – based on the process approach3. selection of the most suitable Realization from a
defined set – based on the logical approach4. execution of the selected realization
• Terms usable in this algorithm• Input and Output Objects (step 1 and 2)• values of Objects and Scores (step 3)• FCA, TIL, etc.
![Page 66: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/66.jpg)
page - 66 / 88VŠB – Technical University of Ostrava
Selection of a Realization
• Process and Logical approach together
![Page 67: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/67.jpg)
page - 67 / 88VŠB – Technical University of Ostrava
Behavior Reconfiguration
• Which are the assets of this approach?• possibility of an independent life of each Agent• intelligence built in an Agent Behavior • easy distribution of knowledge on process
management among the Agents• easy way to distribute knowledge on system
adaptability and evolution among the Agents
![Page 68: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/68.jpg)
page - 68 / 88VŠB – Technical University of Ostrava
AgentStudio
![Page 69: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/69.jpg)
page - 69 / 88VŠB – Technical University of Ostrava
Future Architecture of AgentStudio
AgentStudio
Rea
l Wor
ld
MAS ModelModel Documentation
Diagrams of Realizations in PDF, JPEG, etc.
MAS Modelin BPEL
Structure of MASin XML
MAS Model File
Processes
Agents
Objects
Scores
Messages
Realizations
...
Analytic ToolsFCA, etc
Visualization Tools
Verification Tools
MAS Source Code Generation Tool
MAS Framework(Jade in Java, in C#, etc.)
MASMAS Source Code
![Page 70: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/70.jpg)
page - 70 / 88VŠB – Technical University of Ostrava
Future Work
• development of the tool for Agents behavior modeling (.NET)
• behavior-model extensions (message specifications, interfaces, etc.)
• automatic generation of Agents based on their internal Behavior
• involvement of Logic in Agents behavior management (reconfiguration, branching, controlling, etc.)
• distribution of the Behavior specifications and learning process
• development of application methods of the whole MAS management• knowledge management and distribution• system states monitoring
![Page 71: Multi Agent Systems](https://reader033.vdocuments.mx/reader033/viewer/2022061417/56815400550346895dc1f9cd/html5/thumbnails/71.jpg)
page - 71 / 88VŠB – Technical University of Ostrava
Introduction to the Theory of Multi-Agent Systems
“Logic and Artificial Intelligence for Multi-Agent Systems” (Logic & MAS)
The Project in more details:
Logic and Communication (TL Language, Ontology)
Geographical Data and Infrastructure
Process Management
Discussion