ict619 intelligent systems topic 8: intelligent agents
TRANSCRIPT
ICT619 Intelligent SystemsICT619 Intelligent Systems
Topic 8: Intelligent AgentsTopic 8: Intelligent Agents
ICT619 S2-05ICT619 S2-05 22
Intelligent AgentsIntelligent Agents
What is an intelligent agent?What is an intelligent agent? Why intelligent agents?Why intelligent agents? What intelligent agents can do for usWhat intelligent agents can do for us Characteristics of a good agentCharacteristics of a good agent Types of agentsTypes of agents Building intelligent agentsBuilding intelligent agents Intelligent agents in E-CommerceIntelligent agents in E-Commerce Intelligent agent design - state-of-the-art Intelligent agent design - state-of-the-art
and futureand future
ICT619 S2-05ICT619 S2-05 33
What is an intelligent agent?What is an intelligent agent?Underlying concept - Underlying concept - An autonomous computational entity designed to perform a An autonomous computational entity designed to perform a
specific task, without direct initiation and continuous specific task, without direct initiation and continuous monitoring on part of the usermonitoring on part of the user
Evolved in the last decade or soEvolved in the last decade or so Distinct from conventional programsDistinct from conventional programs
Additional properties:Additional properties: Some level of intelligence, from fixed rules to learning Some level of intelligence, from fixed rules to learning
engines enabling adaptation to changes in the environment engines enabling adaptation to changes in the environment Acts reactively, but also proactively Acts reactively, but also proactively Social ability - communicates with user, system, other agents Social ability - communicates with user, system, other agents
as required as required Cooperates with other agents to carry out more complex Cooperates with other agents to carry out more complex
taskstasks Agents may move from one system to another to access Agents may move from one system to another to access
remote resources or to meet other agentsremote resources or to meet other agents
ICT619 S2-05ICT619 S2-05 44
What is an intelligent agent? (cont’d)What is an intelligent agent? (cont’d)
““Agents” or “software agents” do not necessarily possess Agents” or “software agents” do not necessarily possess all features of intelligent agentsall features of intelligent agents
Wide range of variation in capabilities, eg, Wide range of variation in capabilities, eg, Some perform tasks individually while others are Some perform tasks individually while others are
cooperativecooperative
Some are mobile- able to move across a network, others Some are mobile- able to move across a network, others are notare not
Some communicate via messages, some don't Some communicate via messages, some don't communicate at all communicate at all
Not all agents learn and adapt themselvesNot all agents learn and adapt themselves Robots are physical agentsRobots are physical agents
ICT619 S2-05ICT619 S2-05 55
Why intelligent agents? Why intelligent agents?
More and more everyday tasks becoming computer-basedMore and more everyday tasks becoming computer-based An increasing number of untrained users using computersAn increasing number of untrained users using computers Current human-computer interfaces require users to initiate Current human-computer interfaces require users to initiate
all tasks and monitor themall tasks and monitor them
Intelligent agents engage in a cooperative process with the Intelligent agents engage in a cooperative process with the user to increase the effectiveness and efficiency of human-user to increase the effectiveness and efficiency of human-computer interaction – the interface agentcomputer interaction – the interface agent
Phenomenal growth in information availabilityPhenomenal growth in information availability Intelligent agents can be a tool for relieving the user of this Intelligent agents can be a tool for relieving the user of this
information overloadinformation overload Intelligent agents can act as personal assistants to the user Intelligent agents can act as personal assistants to the user
to manage informationto manage information
ICT619 S2-05ICT619 S2-05 66
What intelligent agents can do for usWhat intelligent agents can do for us Carry out tasks on the user’s behalfCarry out tasks on the user’s behalf Train or teach the userTrain or teach the user Help different users collaborateHelp different users collaborate Monitor events and proceduresMonitor events and procedures
Specifically, intelligent agents can help us withSpecifically, intelligent agents can help us with Information retrievalInformation retrieval Information filteringInformation filtering Mail managementMail management Recreational activities – selection of books, music, Recreational activities – selection of books, music,
holidaysholidays
ICT619 S2-05ICT619 S2-05 77
What intelligent agents can do for us What intelligent agents can do for us (cont’d)(cont’d)
Information filtering agentInformation filtering agent One type is the selection of articles from a continuous One type is the selection of articles from a continuous
stream to suit particular user needsstream to suit particular user needs
User can create “news agents” and train them by giving User can create “news agents” and train them by giving positive or negative feedback for articles recommendedpositive or negative feedback for articles recommended
The use of key words alone can be restrictiveThe use of key words alone can be restrictive Underlying semantics must be extracted for more Underlying semantics must be extracted for more
effectivenesseffectiveness
ICT619 S2-05ICT619 S2-05 88
What intelligent agents can do for us What intelligent agents can do for us (cont’d)(cont’d)
Electronic mail agent Electronic mail agent Assist users with electronic mailAssist users with electronic mail Learn to prioritize, delete, forward, sort and archive Learn to prioritize, delete, forward, sort and archive
mail messages on behalf of the usermail messages on behalf of the user May use intelligent system techniques like case-based May use intelligent system techniques like case-based
reasoningreasoning Can associate a level of confidence with its action or Can associate a level of confidence with its action or
suggestionsuggestion Use of “do-it” and “tell-me” thresholds set by userUse of “do-it” and “tell-me” thresholds set by user May involve multi-agent collaboration May involve multi-agent collaboration
ICT619 S2-05ICT619 S2-05 99
What intelligent agents can do for us What intelligent agents can do for us (cont’d)(cont’d)
Selection agents for entertainmentSelection agents for entertainment Potential for becoming popular and commercially Potential for becoming popular and commercially
successfulsuccessful
Use “social filtering” – correlation between different Use “social filtering” – correlation between different users to make recommendations on books, CDs, films users to make recommendations on books, CDs, films etc.etc.
E.g., if user E.g., if user AA liked items liked items XX and and YY, and user , and user BB liked liked item item XX and and ZZ, then item , then item ZZ may be recommended for may be recommended for user user AA
ICT619 S2-05ICT619 S2-05 1010
What intelligent agents can do for us What intelligent agents can do for us (cont’d)(cont’d)
Some other current and emerging applications of Some other current and emerging applications of intelligent agents:intelligent agents:
air traffic controlair traffic control air craft mission analysisair craft mission analysis control of telecommunications and network systemscontrol of telecommunications and network systems provision and monitoring of medical careprovision and monitoring of medical care monitoring and control of industrial processesmonitoring and control of industrial processes on-line fault diagnosis and malfunction handlingon-line fault diagnosis and malfunction handling supervision and control of manufacturing environmentssupervision and control of manufacturing environments transactions management in banks and insurance transactions management in banks and insurance
companiescompanies E-commerce, tourismE-commerce, tourism
ICT619 S2-05ICT619 S2-05 1111
Characteristics of a good agentCharacteristics of a good agentCommunicationCommunication Must communicate well with the userMust communicate well with the user Should understand user’s goals, preferences and Should understand user’s goals, preferences and
constraintsconstraints Useful communication requires shared knowledge on Useful communication requires shared knowledge on
language of communication language of communication problem domainproblem domain
Web search enginesWeb search engines accept key words and phrases (some knowledge of the accept key words and phrases (some knowledge of the
language) language) but but understand nothing about the documents they retrieve (no understand nothing about the documents they retrieve (no
domain knowledge)domain knowledge) Solution: provision of machine readable ontology Solution: provision of machine readable ontology
- a definition of a body of knowledge including its - a definition of a body of knowledge including its components and their relationshipscomponents and their relationships
ICT619 S2-05ICT619 S2-05 1212
Characteristics of a good agent (cont.)Characteristics of a good agent (cont.)
ActionAction Agent must be able to take some action and not just Agent must be able to take some action and not just
provide adviceprovide advice Present state of web technology limits capability of Present state of web technology limits capability of
Internet agents Internet agents - no standard interface for agents- no standard interface for agents
As the Internet becomes more agent-friendly, more As the Internet becomes more agent-friendly, more capable agents will emergecapable agents will emerge
AutonomyAutonomy An agent can be much more useful if it can act An agent can be much more useful if it can act
autonomouslyautonomously The right level of autonomy for a task must be foundThe right level of autonomy for a task must be found
ICT619 S2-05ICT619 S2-05 1313
Characteristics of a good agent (cont.)Characteristics of a good agent (cont.)
AdaptationAdaptation Can gain user confidence by learning user preferencesCan gain user confidence by learning user preferences An agent unable to adapt to changing environment, is An agent unable to adapt to changing environment, is
of limited utility. of limited utility.
Adapting to user needs and preferences can be Adapting to user needs and preferences can be achieved by using data mining techniques such as achieved by using data mining techniques such as clusteringclustering
Agent forms clusters of users with similar featuresAgent forms clusters of users with similar features User's expectations can then be anticipated by placing User's expectations can then be anticipated by placing
the user in one of these clusters and analysing the the user in one of these clusters and analysing the clustercluster
ICT619 S2-05ICT619 S2-05 1414
Types of agentsTypes of agents Based on operational characteristics and functional Based on operational characteristics and functional
objectives:objectives: Collaborative agentsCollaborative agents Collaborate to Collaborate to
- integrate information and - integrate information and - negotiate with other agents to resolve conflict- negotiate with other agents to resolve conflict- Provide solutions to inherently distributed problems, e.g., air - Provide solutions to inherently distributed problems, e.g., air
traffic controltraffic control
Reactive agentsReactive agents Act by stimulus-response to the current state of the Act by stimulus-response to the current state of the
environmentenvironment Each reactive agent is simple and interacts with others Each reactive agent is simple and interacts with others
in a basic wayin a basic way Complex patterns of behaviour emerge from collective Complex patterns of behaviour emerge from collective
interaction.interaction.
ICT619 S2-05ICT619 S2-05 1515
Types of agents (cont’d)Types of agents (cont’d)
Interface agentsInterface agents Provide user support and assistanceProvide user support and assistance Cooperate with user in accomplishing some task in an Cooperate with user in accomplishing some task in an
application.application. Interface agents learn: Interface agents learn:
by observing and imitating the user by observing and imitating the user through receiving feedback from the user through receiving feedback from the user by receiving explicit instructions by receiving explicit instructions by asking other agents for advice (from peers) by asking other agents for advice (from peers)
Examples:Examples: Personal assistants performing information filtering, Personal assistants performing information filtering,
mail management.mail management.
ICT619 S2-05ICT619 S2-05 1616
Types of agents (cont.)Types of agents (cont.)
Mobile agentsMobile agents Programs that migrate from one machine to another. Programs that migrate from one machine to another. Execute in a platform-independent execution Execute in a platform-independent execution
environmentenvironment Example, Java applets running on a Java virtual Example, Java applets running on a Java virtual
machine. machine. Practical but non-functional advantages: Practical but non-functional advantages:
Reduced communication costReduced communication cost Asynchronous computing (when you are not Asynchronous computing (when you are not
connected) connected)
ICT619 S2-05ICT619 S2-05 1717
Types of agents (cont.)Types of agents (cont.)
Two types of mobile agents: Two types of mobile agents: One-hop mobile agents (migrates to one other One-hop mobile agents (migrates to one other
place) place) Multi-hop mobile agents (roam the network Multi-hop mobile agents (roam the network
from place to place) from place to place) Example applications: Example applications: Distributed information retrieval Distributed information retrieval Telecommunication network routingTelecommunication network routing
ICT619 S2-05ICT619 S2-05 1818
Types of agents (cont.)Types of agents (cont.)
Information agentsInformation agents Manage information Manage information Manipulate or collate information from many distributed Manipulate or collate information from many distributed
sources. sources. Can be mobile or static. Can be mobile or static. Examples: Examples: BargainFinder compares prices among Internet stores for BargainFinder compares prices among Internet stores for
CDs CDs Jasper works on behalf of a user or community of users and Jasper works on behalf of a user or community of users and
stores, retrieves and informs other agents of useful stores, retrieves and informs other agents of useful information on the WWW. information on the WWW.
Heterogeneous agentsHeterogeneous agents Consist of at least two agents from different agent typesConsist of at least two agents from different agent types Needs agent common language (ACL) for agents to Needs agent common language (ACL) for agents to
communicate.communicate.
ICT619 S2-05ICT619 S2-05 1919
Building intelligent agentsBuilding intelligent agentsTwo main problems to overcome:Two main problems to overcome: CompetenceCompetence
How does agent acquire knowledge needed to decide How does agent acquire knowledge needed to decide when to help the userwhen to help the user what to help the user with, and what to help the user with, and how to help the user?how to help the user?
TrustTrust How to guarantee user comfort in delegating tasks to the How to guarantee user comfort in delegating tasks to the
agentagent
Approaches to building agentsApproaches to building agents1.1. User-programmed agentsUser-programmed agents2.2. Knowledge-based agentsKnowledge-based agents3.3. Machine-learning approachMachine-learning approach
ICT619 S2-05ICT619 S2-05 2020
Building intelligent agents (cont’d)Building intelligent agents (cont’d)
The main problem with The main problem with user-programmeduser-programmed approach approach - requires high level of user competency- requires high level of user competency- user must be able to- user must be able to Recognise opportunity for employing an agentRecognise opportunity for employing an agent Take initiative to create an agent Take initiative to create an agent Impart specific knowledge to agent by codifying it in a Impart specific knowledge to agent by codifying it in a
special languagespecial language Maintain agent’s knowledge by updating rule base with Maintain agent’s knowledge by updating rule base with
timetime
The issue of trust tied up with users’ trust in their own The issue of trust tied up with users’ trust in their own programming skills.programming skills.
ICT619 S2-05ICT619 S2-05 2121
Building intelligent agents (cont.)Building intelligent agents (cont.)
In the In the knowledge-based approach,knowledge-based approach, The agent is endowed with knowledge about The agent is endowed with knowledge about
application and userapplication and user
At run-time, agent uses the knowledge to recognise At run-time, agent uses the knowledge to recognise user’s plans and find opportunities to contribute to user’s plans and find opportunities to contribute to themthem
Example of knowledge-based agent: the UCEgo Example of knowledge-based agent: the UCEgo designed to help users solve problems in using the designed to help users solve problems in using the UNIX operating system. UNIX operating system.
ICT619 S2-05ICT619 S2-05 2222
Building intelligent agents (cont.)Building intelligent agents (cont.)
Problems with knowledge-based approach - Problems with knowledge-based approach - Both competence and trust are issues of concern Both competence and trust are issues of concern
The problem of competence relates to the competence The problem of competence relates to the competence of the knowledge engineerof the knowledge engineer
Knowledge-base is fixed and cannot be customised to Knowledge-base is fixed and cannot be customised to specific user needsspecific user needs
User’s trust is affected as agent is programmed by User’s trust is affected as agent is programmed by someone elsesomeone else
ICT619 S2-05ICT619 S2-05 2323
Building agents – the machine Building agents – the machine learning approachlearning approach
Metaphor of a personal office assistantMetaphor of a personal office assistant Agents start with minimum knowledge and learn Agents start with minimum knowledge and learn
from:from:1.1. Observation and imitation of userObservation and imitation of user2.2. User feedback – direct, indirectUser feedback – direct, indirect3.3. Training by userTraining by user4.4. Other agentsOther agents
User can build up model of agent decision making – User can build up model of agent decision making – more trustmore trust
Agent capable of explanationAgent capable of explanation
ICT619 S2-05ICT619 S2-05 2424
Development of an agent through Development of an agent through learninglearning
ICT619 S2-05ICT619 S2-05 2525
Building agents – the machine Building agents – the machine learning approachlearning approach
Advantages:Advantages: Less work from end-user and developerLess work from end-user and developer Agent customises to user/organisation Agent customises to user/organisation
habits/preferenceshabits/preferences Helps distribute know-how and competence among Helps distribute know-how and competence among
different usersdifferent users
Some examples:Some examples: Agent for e-mail handlingAgent for e-mail handling Agent for meeting schedulingAgent for meeting scheduling Agent for electronic news filteringAgent for electronic news filtering Agent for recommending books, musicAgent for recommending books, music
ICT619 S2-05ICT619 S2-05 2626
Intelligent agents in E-CommerceIntelligent agents in E-Commerce Rapid growth continuing in E-commerceRapid growth continuing in E-commerce Information about products and vendors easily Information about products and vendors easily
accessibleaccessible But transactions are still largely unautomatedBut transactions are still largely unautomated
Six fundamental stages of the buying process:Six fundamental stages of the buying process: Need identificationNeed identification Product brokeringProduct brokering Merchant brokeringMerchant brokering NegotiationNegotiation Purchase and deliveryPurchase and delivery Product service and evaluationProduct service and evaluation
ICT619 S2-05ICT619 S2-05 2727
Intelligent agents in E-Commerce Intelligent agents in E-Commerce (cont’d)(cont’d)
In the need-identification stage, agents can help in In the need-identification stage, agents can help in purchases that are repetitive or predictablepurchases that are repetitive or predictable
Continuously running agents can monitor a set of Continuously running agents can monitor a set of sensors or data streams and take actions when certain sensors or data streams and take actions when certain pre-specified conditions applypre-specified conditions apply
Many agents use rule-based or data mining techniques Many agents use rule-based or data mining techniques to discover patterns in customer behaviour to help to discover patterns in customer behaviour to help customers find productscustomers find products
ICT619 S2-05ICT619 S2-05 2828
Intelligent agents in E-Commerce Intelligent agents in E-Commerce (cont.)(cont.)
In the merchant brokering stage, on-line In the merchant brokering stage, on-line shopping agents can look up prices for a shopping agents can look up prices for a chosen product for a number of merchantschosen product for a number of merchants
Many business-to-business transactions are Many business-to-business transactions are negotiatednegotiated
In web auction, customers are required to In web auction, customers are required to manage their own negotiation strategiesmanage their own negotiation strategies
Intelligent agents can help with thisIntelligent agents can help with this
ICT619 S2-05ICT619 S2-05 2929
Examples of on-line shopping Examples of on-line shopping
framework with agent mediationframework with agent mediation PERSONA PERSONA LogicLogic
FireflyFirefly Bargain Bargain FinderFinder
Auction Auction
BotBot
JangoJango Auction Auction BotBot
T@TT@T
Need Need identificationidentification
Product Product brokeringbrokering
** ** **
Merchant Merchant brokeringbrokering
** ** **
NegotiationNegotiation ** ** **Payment & Payment & deliverydelivery
Service & Service & EvaluationEvaluation
ICT619 S2-05ICT619 S2-05 3030
Examples of on-line shopping framework Examples of on-line shopping framework with agent mediation (cont’d)with agent mediation (cont’d)
Software agents are helping buyers and sellers cope Software agents are helping buyers and sellers cope with information overload and expedite the online with information overload and expedite the online buying processbuying process
Agents are creating new markets (eg, low-cost Agents are creating new markets (eg, low-cost consumer goods) and reducing transaction costsconsumer goods) and reducing transaction costs
Use of agents in e-commerce still at an early stageUse of agents in e-commerce still at an early stage
Visit Visit http://agents.umbc.edu/Applications_and_Software/Aphttp://agents.umbc.edu/Applications_and_Software/Applications/Electronic_Commerce/index.shtmlplications/Electronic_Commerce/index.shtmlfor morefor more
ICT619 S2-05ICT619 S2-05 3131
Intelligent agent design - state-of-the-Intelligent agent design - state-of-the-art and future art and future
Few agents are available with all the desired Few agents are available with all the desired characteristicscharacteristics
Agent technology still in experimental stageAgent technology still in experimental stage
Autonomy and mobility already achievable Autonomy and mobility already achievable Example: Java applets which execute independently Example: Java applets which execute independently
across networksacross networks
But autonomy limited so far in practical use due to the But autonomy limited so far in practical use due to the agent-unfriendliness of the current web technologyagent-unfriendliness of the current web technology
ICT619 S2-05ICT619 S2-05 3232
Intelligent agent design - state-of-the-Intelligent agent design - state-of-the-art and future (cont’d)art and future (cont’d)
A major limiting factor is lack of ontologies essential for A major limiting factor is lack of ontologies essential for effective communicationeffective communication
Building and maintaining ontologies remains a major Building and maintaining ontologies remains a major challenge challenge
Some of the proposed capabilities to be developed in Some of the proposed capabilities to be developed in future intelligent agents include:future intelligent agents include: Learning as well as reasoning, which are characteristics of Learning as well as reasoning, which are characteristics of
machine intelligencemachine intelligence Interacting with the external environment through sensorsInteracting with the external environment through sensors
ICT619 S2-05ICT619 S2-05 3333
REFERENCESREFERENCES Chin, D.,Chin, D., Intelligent Interfaces as Agents. In Intelligent Interfaces as Agents. In Intelligent User Intelligent User
InterfacesInterfaces, J. Sullivan and S. Tyler(eds), ACM Press, New , J. Sullivan and S. Tyler(eds), ACM Press, New York, 1991.York, 1991.
Hendler, J., Hendler, J., Making Sense out of AgentsMaking Sense out of Agents, IEEE Intelligent , IEEE Intelligent Systems, March/April 1999, pp.32-37.Systems, March/April 1999, pp.32-37.
Hendler, J., Hendler, J., Is There an intelligent Agent in Your Future? Is There an intelligent Agent in Your Future? http//www.nature.com/nature/webmatters/agents/agents.htmlhttp//www.nature.com/nature/webmatters/agents/agents.html
Maes, P., Maes, P., Agents that Reduce Work and Information Agents that Reduce Work and Information OverloadOverload, Communications of the ACM, Volume 37 , Issue 7 , Communications of the ACM, Volume 37 , Issue 7 (July 1994), (July 1994), pp.pp. 30-40. 30-40.
Maes, P., Maes, P., Agents that Buy and SellAgents that Buy and Sell, Communications of the , Communications of the ACM, Volume 42 , Issue 3 (March 1999), ACM, Volume 42 , Issue 3 (March 1999), pp.pp. 81-91. 81-91.
Sheth, B. and Maes, P. Evolving Agents for Personalized Sheth, B. and Maes, P. Evolving Agents for Personalized Information Filtering. In Proceedings of the Ninth Conf. on Information Filtering. In Proceedings of the Ninth Conf. on Artificial Intelligence for Applications. IEEE Computer Society Artificial Intelligence for Applications. IEEE Computer Society Press, 1993Press, 1993
UMBC Agent News - UMBC Agent News - http://http://agents.umbc.edu/agentnews/currentagents.umbc.edu/agentnews/current// http://www.agentland.com/http://www.agentland.com/