Agents and Multiagent Systems Chapter 6 Dr Ahmed Rafea Transition - - PowerPoint PPT Presentation
Agents and Multiagent Systems Chapter 6 Dr Ahmed Rafea Transition - - PowerPoint PPT Presentation
Agents and Multiagent Systems Chapter 6 Dr Ahmed Rafea Transition from AI to IA There are many alternative artificial intelligence techniques for knowledge representation , reasoning and learning. The specific functions and
Transition from AI to IA
- There are many alternative artificial
intelligence techniques for knowledge representation , reasoning and learning.
- The specific functions and requirements of
an intelligent agent are the prime determinant of which AI technique should be used.
Knowledge representation
- Knowledge representation is a crucial
issue.
- What our agent is expected to do and in
what domain, will have a significant impact
- n the type of knowledge representation
we should use.
Reasoning
- The amount of intelligence required by an
agent , in terms of the size of the knowledge base and sophistication of the reasoning algorithms , is significantly impacted by the degree of autonomy and mobility the agent has .
- Mobile agents place special requirements
- n the security of the knowledge base it
travels through the network.
Learning
- Whether learning is a desirable function
depends on the domain the intelligent agent will work in , as well as the environment.
- Learning is most useful when an agent is
used in complex environments to perform repetitive tasks , or when the agent must adapt to unknown situations.
Autonomous Intelligent Agents
Requirements for Autonomous Intelligent Agents include:
- Perception
- Taking Action
Perception
- In order for a software agent to take some
intelligent action , it first has to be able to perceive what is going on around it.
- An intelligent agent uses its sensors as a
source of information.
- A fundamental part of perception is the
ability to recognize and filter out the expected events and attend to the unexpected ones.
Taking Action
- Intelligent Agents use effectors to take actions
either by sending messages to other agents or by calling application programming interfaces or system services directly.
- If our agent takes an action directly under its
control, we can probably consider it done. However, when we are dealing with intermediaries , whether other agent or unknown systems, then some extra precautions and checking are probably in order.
Multiagent Systems
- Multiagent systems are applications in
which many autonomous software agents are combined together to solve large problems.
- The RoboCup challenge is an example of
the current state-of-the-art of multivalent systems , in which teams of autonomous agents compete in a simulated soccer tournament.
Blackboards
- Blackboard is the oldest multiagent system
architecture used as a problem-solving technique.
- The Blackboard is a data structure that is
used as the general communication mechanism for the multiple knowledge sources and is managed and arbitrated by a controller.
Blackboards
- As each agent works on its part of the
problem, it looks to the blackboard to pick up new information posted by other agents , and it, in turn, posts its results to the Blackboard.
- Blackboard systems are used as a
communication mechanism when building single large applications and want to modularize the knowledge bases.
Communication
- An environment where agents with very
different structures and with no knowledge
- f a centralized background can work
together, the agents will need to communicate with each other.
- Communication can be :
- Directly to each other
- Through an interpreter or facilitator.
Communication
- To be able to communicate, a language is
needed.
- There is a level of basic language which is the
syntax and format of the messages and there is a deeper level, the meaning or semantics.
- For the semantics to be easily understood , a
shared vocabulary of words and their meanings is needed. This shared vocabulary is called an
- ntology.
- The most widely used agent communication
language (ACL) is Knowledge Query and Manipulation Language (KQML).
Knowledge Query and Manipulation Language
- Knowledge Query and Manipulation Language (KQML) provides a
framework for a set of independent agents to communicate and cooperate
- n a problem using messages called per formatives.
– Directives: commands or requests – Representatives: facts or beliefs – Commissives: promises or threats
- KQML uses ontologies to ensure that two agents are communicating in the
same language
- KQML messages encode information at three different architectural levels:
content, message and communication. An example of a KQML message from agent joe asking about the price of a share of SUN stock might be encoded as:
(ask-one :sender joe
- -comm. level
:content (real price = sun.price())
- -content level
:receiver stock-server
- -comm. level
:reply-with sun-stock
- -comm. level
:language java
- -message level
:ontology NYSE-TICKS)
- -message level
Agent Standards
- Standards are becoming more important
as agents become a large part of the electronic commerce infrastructure.
- Two major efforts of standardization are:
– The Foundation for Intelligent physical Agents (FIPA) that is focused primarily on agent-level issues. – The Object Management Group (OMG) that is focused on object-level interoperability and management
FIPA & OMG
- FIPA is dominated by computer and
telecommunications companies and is focused primarily on agent-level issues.
- OMG is the standards body that created
the Common Object Request Broker Architecture (CORBA) distributed object protocol and tends to focus on object-level interoperability and management.
Co-operating Agents
- Co-operation among agents allows a community
- f specialized agents to pool their capabilities to
solve large problems but with the additional cost
- f communication overhead.
- Distributed systems management, electronic
commerce and multi agent design systems are three application areas in which co-operating agents have been applied.
- It is likely that a combination using the team
structure and roles to limit communications , along with distributed planning techniques , will provide the best solution to building multiagent teams.
Competing Agents
- Competition between agents will occur as soon
as intelligent agents are deployed by individuals
- r companies with different agendas and those
agents interact in the e-commerce environment
- Intelligent agents will be used to provide
advantages for individuals and businesses.
- Negotiation protocols, such as Contract Net ,
auctions and bargaining, are used to allow agents to compete for business.
Agent Software Engineering Issues
- Designing multiagent systems is similar to
- bject-oriented but requires some additional
analysis and modeling techniques.
- A common approach for designing agents and
multiagent systems is to define roles for team members.
- While agent applications are becoming
increasingly popular, there have not been many proposals for agent-oriented methodologies for analysis, design, and software development.
Designing Agents
Two Popular methods are:
- The agent modeling technique for systems of
- agents. This approach looks to the problem from
two perspectives: an external and internal one.
– External: The agents themselves (agent Model) and their interactions (interaction model) – Internal: Relationship with other agents, a goal, and a plan to achieve the goal
- CoMoMas extension to the CommonKADS
knowledge engineering methodology.
Multi Agent Interaction Models
- Model 1:
Requesting Agent Facilitator Service Agent
1-Request 2-Request 3-Response 4-Response
Multi Agent Interaction Models
- Model 2
Requesting Agent Facilitator Service Agent
1-Request 2-Request 3-Response
Multi Agent Interaction Models
- Model 3
Requesting Agent Facilitator Service Agent
1-Request 2- Address of service Agent 3-Request 4-Response