Title: MULTIAGENT SYSTEMS
1MULTI-AGENT SYSTEMS
2- Multi-Agent Systems (MAS)
- (Intelligent Agent Systems)
- Software systems in which program modules are
given autonomy and intelligence and which
collaborate to attain system objectives - MAS are major part of Distributed Artificial
Intelligence (DAI) - Fastest growing area in Computer Sciences
- Rapidly being applied to real-life technological
problems (air traffic control, battle
simulation, manufacturing, supply chain
management, etc.)
3- Multi-Agent Systems are a major component in the
developing paradigm of Intelligent Systems - There is a new paradigm emerging which will
transform society as radically as the emergence
of steam power and the consequent Industrial
Revolution. The synergy of advanced
telecommunications, distributed computing,
autonomous machines, artificial intelligence,
virtual reality and other areas is creating and
shaping this new paradigm of Intelligent Systems.
4- Intelligent Agents
- An intelligent agent is a software entity which
exhibits, in some significant measure, autonomy,
intelligence, and environmental awareness, and
which interacts with its environment to achieve
internal goals. - Co-operation with other agents
- Software Hardware?
- (Agents or Holons or Autonomous XXX?)
5- Why Agents?
- More usable and understandable structure (e.g.
spaghetti code vs structure modules). - (Almost) essential in large distributed systems
where all subsystems need to be continually
interchanging information to collectively
achieve or to maintain some desired state - (e.g. highly coupled subsystems)
- (cf. human case of multi-disciplinary research
team)
6Agent Languages Agent Languages An agent
language is a language for programming software
or hardware agents or agent systems. It should
provide for at least some structural agent
features and may also allow agency attributes to
be directly programmed. It may be incorporated
in a development environment with user-friendly
editors, browsers, etc. which facilitate the
programming. Most existing agent languages are
deliberative (e.g. AGENTO, PLACA, CONCURRENT
METAM, APRIL, MAIL) often related closely (or
less so) to agent theory and logic. Some agent
languages, e.g. ABLE, are reactive languages.
7- Concurrent Object Languages
- a self-contained concurrently executing object,
with some internal state that is not directly
accessible to the outside world, responding to
messages from other such objects, is very close
to the concept of an agent - there are numerous concurrent object languages
and these have often been used for programming
agent systems - systems using concurrent objects involve Actor
model (Hewitt, 1977 Agha, 1986), ABCL system
(Yonezawa, 1990), (Briot, 1992)
8- Shoham (Shoham, 1990, 1993) - Agent-Oriented
Programming - a new programming paradigm, based on a societal
view of computation - uses the intentional systems approach
- three components
- - a logical system for defining agents mental
state - - an interpreted programming language
- - an agentification process, for compiling
agent programs
9- third component not yet developed (but might
follow situated automata paradigm) - Shohams prototype AOP language is the AGENT0
system - logical component of AGENT0 is a logic with
three modalities belief, commitment and
ability - AGENT0 programming language specifies an agent
as capabilities (what agent can do), initial
beliefs and commitments, and commitment rules - each commitment rule has a message condition,
a mental condition, an action
10- the message condition is matched against
received messages and the mental condition is
matched against beliefs - if both conditions are satisfied the rule fires
and agent commits to the rules action - actions are private (internal execution of
subroutine) or communicative (message sending) - three types of message request and
unrequest to carry out or not perform an
action, and the inform message for sending
information - request/unrequest messages usually cause agents
commitments to be modified - inform messages change agents beliefs
11- Knowledge Representation and Reasoning
- Introduction
- Data is a set of simple descriptions
information comprises interpretations of data,
and knowledge is information about information. - Meta-knowledge is knowledge about knowledge.
- The process of using knowledge to create further
knowledge is reasoning.
12- Knowledge Representations
- Numerous ways in which knowledge can be
represented. - A fundamental notion in knowledge representation
is that knowledge comprises object (entities)
and relationships between these (cf.
connectionism). - Different knowledge representations use
different symbolic representations of the
objects and the relationships. - Each such symbolic representation is associated
with a particular way in which the symbols can
be manipulated. - The common types of knowledge representation
are logic- based semantic networks frames
object-oriented scripts.
13- Production Rule System
- Can solve problems using its stored knowledge
(this essentially is the definition of a KBS). - Questions the user for additional information,
where needed. - Provides answers if the user asks why the system
asked a question. - Can provide an explanation of how it derived its
conclusions.
14 Knowledge Base Rules Facts
Working Memory
SHELL
Inference Engine Inference Control
Knowledge Acquisition Sub-System
Explanation Sub-System
User Interface
Expert Knowledge Engineer
User
Architecture of a Knowledge-Based Expert System
15- Knowledge Base
- In a production rules system, the
domain-specific knowledge is stored in the
knowledge base in the form of rules and facts. - Each rule consists of a premise and a
conclusion. - The premise is often called the condition and
the conclusion is often called the action. - The general form of a production rule is
- IF (Premise) THEN (Conclusion)
- e.g.
- IF ((John age 27) and (John not married) and
(John no kids) - THEN (John more taxable).
- Each fact in the knowledge base can be regarded
as a reduced form of a rule e.g. - THEN (John likes Kate).
16- Inference Engine
- The two basic functions of the inference engine
are inferencing and control. - Inferencing is a procedure (process) by which
some conclusion/s can be deduced from one or
more premises, or vice versa - The commonest basis for inferencing is the rule
of deductive logic called modus ponens. - IF A
- THEN B
- IF A THEN B
17Inference Engine The inference engine works in a
recognize-act cycle 1. It recognizes (by
matching) which rules in the knowledge base can
be satisfied by information in the working memory
(WM) (e.g. such as conclusions recorded as true
from previous cycles). 2. It decides which of
the applicable rules should be used (conflict
resolution). 3. It applies the rule (using
inferencing) and adds information to WM or
deletes an earlier item from WM, then goes back
to step 1. The general strategy embodied in
steps 1 and 2 for selecting eligible rules and
deciding which to apply is part of the control
strategy.
18Model-Based Architecture (from Jennings, 1993)
19Alternative Approaches Reactive
Architectures Reactive Architectures A
reactive architecture to be defined as one that
does not include any kind of central symbolic
world model, and does not use complex symbolic
reasoning. These are based on stimulus-response
mechanism. This pattern is easy to see in
Subsumption and in Spreading Activation, but not
in Situated Automata (but it is there in
sophisticated form).
20- Brooks (Brooks, 1986, 1990, 1991b, 1991a) -
Behaviour Languages - behaviour based subsumption architecture
- underlying concepts
- 1. Intelligent behaviour can be generated
without explicit representations of the kind
that symbolic AI proposes. - 2. Intelligent behaviour can be generated
without explicit abstract reasoning of the
kind that symbolic AI proposes. - 3. Intelligence is an emergent property of
certain complex systems.
21(No Transcript)
22- Burmeister et al (Burmeister and Sundermeyer,
1992 Haddadi, 1994) - COSY - a hybrid BDI-architecture
- developed for a multi-agent testbed (DASEDIS)
- the architecture has five main components
sensors, actuators, communications, intention,
cognition - sensors are for (non-communicative) perceptual
input - actuators carry out (non-communicative) actions
- communications component sends messages
23(No Transcript)
24- intention component has long-term goals,
attitudes, responsibilities and the like the
control elements taking part in the reasoning
and decision-making of the cognition component
(Haddadi, 1994) - cognition component mediates between intentions
and beliefs and selects appropriate action/s - cognition component contains the knowledge base
of beliefs, and three (procedural) components - - script execution
- - protocol execution
- - reasoning, deciding, and reacting
- a script is a stereotypical plan for achieving a
goal
25- a protocol is a stereotypical dialogue for a
cooperation framework (e.g. contract net) - reasoning, deciding and reacting component
- - maintains an agenda containing active scripts
- - a script can be (goal-driven) invoked to
satisfy an intention or (data-driven) involved
in response to current situation - - a filter component which selects scripts to
execute
26(No Transcript)
27What Kinds of Agents? Knowledge Agent Expert in
an area of knowledge (human or artificial) Knowled
ge Server Artificial agent with major
capabilities for storing and retrieving
knowledge (eventually reasoning). Interface
Agent Intelligent assistant.
28Coach or Tutor Agent Intelligent coach or
tutor. Mediator Agent Coordinates other agents
and resolves conflicts. Knowledge Management
Agent High-level coordination of knowledge
activities for an individual or collaborative
group (e.g. Mediator). Information Search
Agent Travelling searcher, e.g. knowbots,
infobots.
29Directory Agent Points when queried Where is
XXX? Mentor Agent For higher level expertise or
strategy. Autonomous Agents Hardware
Software e.g. Autonomous vehicles, robots,
etc. Other Agents Citation and document
retrieval Dictionaries Atlases (Geographic
Information Systems) etc. etc.
30COORDINATION, COOPERATION, NEGOTIATION AND
PLANNING Coordination, Cooperation and
Negotiation are aspects of group or joint
activity of agents. Planning can be an
individual activity of an agent, but in a group
it is normally desirable that the plans be
coherent and contribute towards the achievement
of goals or objectives. The focus in this part
of the course will therefore be how can agents
work together towards the achievement of
objectives.
31 NOTE 1. The following draws significantly from
the text OHare, G.M.P. and Jennings, N.R.,
Foundations of Distributed Artificial
Intelligence, John Wiley, 1996. 2. References
cited in the following sections, unless otherwise
indicated, may be found in that
volume. 3. Unless otherwise indicated, quotations
are from this source.
32- COORDINATION
- Coordination is a mechanism for ensuring that
agents activities retain some desired
relationship/s (sequence, complementarity,
etc.). - Control is the extent to which coordination
information must be implemented by a recipient
agent. - The range of control is from none to total.
Control is inversely related to autonomy (for
the recipient agent, no control corresponds to
total autonomy, and being totally controlled
corresponds to zero autonomy.
33- The fundamental coordination mechanisms are
- - Mutual adjustment
- Agents share information and resources to
achieve a common goal, adjusting their
behaviour according to the behaviour of the
other agents. No agent has prior control and
decision making is joint. Coordination in peer
groups and markets is usually by mutual
adjustment. - - Direct supervision
- One agent has some degree of control over
others and can control information, resources,
and behaviour. Often established through
mutual adjustment (e.g. following acceptance
of employment or a contract).
34 - Coordination by standardization Standard
procedures are established for agents to
follow. In mutual adjustment, are implemented
by acceptance. In direct supervision, are
implemented through (mandatory)
requests. - Mediated coordination A mediator
acts as a facilitator (e.g. finds/routes
information, etc.), a broker (a go-between
and advisor on resource negotiations, etc.),
and a supervisor (exercising some degree of
direct supervision). The first role is
mandatory, but the others are optional. A
mediator facilitates or brokers mutual
adjustment between agents and may also use
direct supervision.
35 - Coordination by reactive behaviour Agents
react to particular stimuli (situations) with
specific behaviours (actions). With
appropriately selected or evolved
stimuli-behaviour groupings and distributions,
system-level patterns of coordinated
behaviour emerge which contribute to the
achievement of common or system goals.
36- Coordinated Systems
- Mechanisms
- Mutual adjustment operates through peer-to-peer
interactions Direct supervision uses the
master-slave approach (in pure case, no
peer-to-peer interactions allowed) A mediator
facilitates or brokers mutual adjustment between
agents and may exercise some degree of
supervision. Reactive coordination depends on
appropriate combinations of stimuli-behaviour
patterns. - Coordinated Groups and Organization Structure
- Mutual adjustment can work well in small groups
but the number of information links and amount
of information increases rapidly with size.
37- Large groups can be effectively divided into
sub-groups if most of the information exchange
can occur in the subgroups. - Effective coordination of subgroups requires
each to have a coordinator/supervisor/mediator,
who work together in one or more coordination
groups. - Each coordination group as well as each
lower-level sub group can be internally
coordinated either by mutual adjustment, or
direct supervision, mediation, or reactive
behaviour. - A pure hierarchy of the groups results if direct
supervision is the only coordination mechanism
used. - A (pure) heterarchy of agents results if only
mutual adjustment is used as the mechanism, with
no groups existing. - Other intermediate forms of organization result
from the use of hierarchies/heterarchies a
hierarchy of mediated groups, etc.
38- Organization, Information, and Coordination
- An organization is composed of organizational
entities whose coordination is implemented
through information flows and exchanges - Organizational Entities
- - Tasks, parts, machines, tools,
----- (what) - - Functions, processes, ----- (how)
- - Schedules, schedulers, ----- (when)
- - Locations, destinations, ----- (where)
- NOTE All of these organizational entities can be
represented by agents, in a multi-agent system.
39- Information
- - Properties, status, -----
- - Conflicts, problems, -----
- - Goals, objectives, -----
- - Structures, membership, -----
- - Relationships, dependencies, -----
- - etc.
- Coordination
- - mutual adjustment
- - direct supervision
- - coordination by standardization
- - mediated coordination
- - reactive coordination
40NOTE The structure of the organization can be
based on one or more of the organizational
entities, the information infrastructure, or
the coordination mechanisms.
41- COOPERATION
- Of the five coordination mechanisms considered,
only two (mutual adjustment, mediated
coordination) allows for agents to have autonomy,
i.e. the freedom to make choices and determine
their own actions. Agents which have some degree
of autonomy can cooperate with other such agents
on tasks and activities, for their own or mutual
benefit. - Advantages of Cooperation
- Complete tasks quicker through shared effort
- By sharing resources, achieve tasks otherwise
not possible - Make use of complementary capabilities
- Avoid harmful interactions
42- Modes of Cooperation
- accidental not intended
- unilaterally intended one agent intentionally
helps another - mutual cooperation two or more agents
intentionally collaborate - Degrees of Cooperation
- Fully cooperative (benevolent) Agents always
attempt to assist other agents that request or
need their help - Antagonistic Agents do not cooperate with
others and may even try to block their goals - Partly cooperative Agents sometimes or to some
extent will assist other agents
43- NEGOTIATION
- The process of improving agreement (reducing
inconsistency and uncertainty) on common
viewpoints or plans through the structured
exchange of relevant knowledge (Durfee, 1989) - Bargaining (promising something in exchange for
something else), bidding (offering a service
or capability at a specific price), and
contracting (committing to provide a service or
capability at a specific price) may be part
of the negotiation process. - Prior to negotiation an agent needs to
identify a resource or service it requires but
cannot supply and then it needs to identify an
agent/s which it believes potentially could.
44- Negotiation Agent contacts other agents and
identifies its need or requests resource or
service (often under specified conditions)
other agent/s identify what can be supplied
under what conditions initiating agent/s
accepts conditions supplying agent/s commit
to provide resource or service. - - In single-stage negotiation, initiating agent
makes a request and the respondent accepts or
rejects this. - - In multi-stage negotiation, agents iterate
through more than one stage of
offer/counter-offer. - - Negotiation protocols a structured procedure
for one or more stages of the negotiation
process.
45- Contract Net Protocol Agents coordinate their
activities through contracts to accomplish
specific goals. An agent acting as a manager
decomposes its contract (the task or problem it
was assigned with) into subcontracts to be
accomplished by other potential contractor
agents. For each subcontract, the manager
announces a task to the network of agents.
Agents receive and evaluate the announcement.
Agents with appropriate resources, expertise,
and information reply to the manager with bids
that indicate their ability to achieve the
announced task. The manager evaluates the bids
received and awards the task to the most suitable
agent, called the contractor. Finally, manager
and contractor exchange information together
during the accomplishment of the task. (Moulin
and Chaib-Draa (Course Text)
46- In Contract Net, a contractor sends status
(interim) reports, then final report (task
completion) to manager. The manager may
terminate a contract prematurely. Idle agents
may broadcast their availability. - Basic contract net model does not consider
interacting tasks (e.g. two agents each need
all of an available resource several agents
all need a resource or another agents help at
or about the same time) - Possible approaches to interacting tasks
- 1. Agents negotiate directly on resolving
problem. - 2. A mediator coordinates the interaction to
reduce or eliminate the conflict, or
negotiates with agents on resolving it.
47 3. The agents not only plan how to accomplish
their tasks/goals but communicate these to
others and negotiate potential conflicts,
modifying plans accordingly. NOTE (a) Approac
h 3 is proactive. Approaches 1 and 2 can be
simply reactive ways of dealing with a conflict
problem after it has become evident (e.g.
through conflicting interactions), or can be
negotiation approaches used in 3s pro-active
procedures. (b) Above considers negative
interactions of tasks, i.e. conflicts.
Interactions of tasks can also be positive, by
providing beneficial synergies. While that can
be accidental, it can also be an advantage of
using planning.