Multi Agent Systems - PowerPoint PPT Presentation

About This Presentation
Title:

Multi Agent Systems

Description:

large car parking, railway station. Agents: Driver would like to park close to the railway station ... Dispatcher of the car parking managing available pull ... – PowerPoint PPT presentation

Number of Views:587
Avg rating:3.0/5.0
Slides: 72
Provided by: Gaj7
Category:
Tags: agent | multi | systems

less

Transcript and Presenter's Notes

Title: Multi Agent Systems


1
Multi Agent Systems
LabIS http//labis.vsb.cz/
2
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

3
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

4
Agent Characterisation
  • (Jacques Ferber)
  • Agent is a physical or virtual entity
  • a) which is capable of acting in an environment
  • b) which can communicate directly with other
    agents
  • c) 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 itself
  • f) tends towards satisfying it's objectives
  • g) may be able to learn by experience
  • h) etc., more...

5
Object vs. Agent
Object 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 gt 0.
6
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.

7
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, ...)

Hello
1030
What's the time?
fine, thanks
How are you?
8
Agents learn by experience
  • Artificial intelligence
  • Expert systems
  • Logic and intelligent decisions in difficult
    situations
  • Autonomy

?
?
?
9
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?
OK, I will consider it ...
It is raining, rather take an umbrella
10
Agents features
  • Agents can clone themselves
  • They are able to move from one computer to
    another one.

Clone
Change PC
11
Multi Agent World
Agents
Knowledge Desires Plans
Communication
Environment
Perception
Actions
Internal representation of environment
12
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
13
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.

14
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

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

16
Logic Multi-Agent World
  • See the next presentantion
  • VSE-MAS-B

17
Communication Language based on TIL
  • FIPA SL
  • TL Language
  • TL vs. TIL
  • Ontologies
  • Examples
  • Implementation
  • Example

18
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

19
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)
  • gt
  • 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.

20
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.

21
TL Why?
  • We propose a new content language TL
  • TL is a FIPA compliant content language
  • TL is based on Transparent Intensional Logic
    (TIL)
  • gt 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

22
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

23
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
24
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 xType
  • trivialization A oA
  • application (F A B C) F A B C
  • abstraction \xTypeA ?x A
  • sequence (SequenceType A B C)
  • shortcut application C_at_w,t Cwt

25
Grammar of TL (fragment)
  • TLExpression Construction
  • Macro.
  • Macro SequenceMacro.
  • Construction Trivialization
  • Variable
  • Application
  • Abstraction.
  • Trivialization "" Concept
  • "" PrimitiveValue
  • "" Construction.
  • Concept UpperCaseAtom
  • "" "(" UpperCaseAtom ArgList ")".
  • ...

26
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)

27
Example
  • Every prime number is odd. (not true)
  • Ontology (part)
  • TIL analysis
  • o? ?xo? oPrime x oOdd x
  • TL notation
  • (All \xInteger(Impl (Prime x) (Odd x)))

Name TIL type TL type
Prime (??) (Integer-gtBool)
Odd (??) (Integer-gtBool)
All, ? (?(??)) ((Integer-gtBool)-gtBool)
Impl, ? (???) (Bool,Bool-gtBool)
28
Example
  • The highest mountain is in Asia.
  • TIL analysis
  • ?w?toInwt ?w?toHighestwt oMountainwtwt oAsia
  • TL notation
  • \w\t(In_at_w,t ((\w\t(Highest_at_w,t Mountain_at_w,t)
    w) t) Asia)

Name TIL type TL type
Highest (?(??))?? ((Indi-gtBool)-gtIndi)_at_
Mountain (??)?? (Indi-gtBool)_at_
In (???)?? (Indi,Indi-gtBool)_at_
Asia ? Indi
29
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.

30
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.

31
Ontology for the Example
Concept TL type
TheDriver Indi
TheDispatcher Indi
TheTrainStation Indi
Pull-in Indi
Near (Indi,Indi-gtBool)_at_
Arrange (Indi,Bool_at_-gtAction)
Park (Indi,Indi-gtBool)_at_
32
Communication
  • Driver
  • call for proposal
  • \xIndi(Arrange TheDispatcher
  • \w\t(And
  • (Park_at_w,t TheDriver x)
  • (Near_at_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

33
Communication
  • Dispatcher
  • propose
  • (\xIndi(Arrange TheDispatcher
  • \w\t(And
  • (Park_at_w,t TheDriver x)
  • (Near_at_w,t TheTrainStation x)))
  • (Pull-in
  • (Position
  • "ltgmlPolygongt
  • ltgmlouterBoundaryIsgt
  • ltgmlLinearRinggt
  • ltgmlcoordinatesgt
  • 0,0 100,0 100,100 0,100 0,0
  • lt/gmlcoordinatesgt
  • lt/gmlLinearRinggt
  • lt/gmlouterBoundaryIsgt
  • lt/gmlPolygongt")))

34
Communication
  • Driver
  • Accept proposal
  • (same content as the last one)

1 Call for proposal
Dispatcher
2 Propose
Car Agent
3 Accept proposal
35
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

36
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

37
Connecting GIS and Multi-agent systems
38
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

39
Environment perceiving
40
Environment built in a vector layer
Creation of infrastructure agents
Geo Database
Vector geodata export to geodatabase
41
Agent Based Environment
42
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

43
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

44
Implementation environment
User Interface (JUMP, GRASS, 3D)
Database Agent
ACL
ACL
Geo Database
Other Agents
ACL
45
Application screenshots
46
Application video
47
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

48
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

49
MAS Development Process
  • Tools that support this development process
  • standard software process and methodology
  • UML tools with some extensions Behavior
    Activity Diagram
  • etc.

50
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

51
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.

52
Agents Behaviors
  • What is the Behavior of an Agent?
  • We have to specify
  • everything that an Agent can do,
  • including Agents 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 Agents classification
  • simple reactive behavior
  • simple proactive behavior
  • hybrid behavior (combined reactive and proactive
    behavior)
  • The Behavior is defined by Processes within the
    Agents life

53
Agents Processes
  • Process is a tool for describing Agents
    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

54
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

55
Internal Structure of Agents
Process may have different control flows defined
by Realizations
Process defined in the global repository
Only one possibility to connect the Agents
message passing
56
Activity Diagram Extension
57
Activity Diagram Extension
58
Realizations of Process
  • Realization describes an algorithm of
    transforming Inputs into Outputs depending on a
    current situation (Agents 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

59
Metamodel of MAS Model
60
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

61
Behavior Reconfiguration
  • Agents 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.

62
Behavior Reconfiguration
63
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 algorithm
  • selection of applicable Realizations from a given
    Process set
  • selection of the most suitable Realization
  • execution of the selected Realization
  • Tools for support of the reconfiguration
  • simple branching based on conditions
  • logical tools
  • Artificial Intelligence, Expert Systems

64
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

65
Selection of a Realization
  • Modified reconfiguration algorithm
  • specification of the set of process Realizations
    based on the process approach
  • defining a set of applicable Realizations for a
    given Process based on the process approach
  • selection of the most suitable Realization from a
    defined set based on the logical approach
  • 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.

66
Selection of a Realization
  • Process and Logical approach together

67
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

68
AgentStudio
69
Future Architecture of AgentStudio
70
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

71
  • 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
Write a Comment
User Comments (0)
About PowerShow.com