lecture 4- agent types

86
LECTURE 4: AGENT TYPES Artificial Intelligence II – Multi-Agent Systems Introduction to Multi-Agent Systems URV, Winter-Spring 2010

Upload: antonio-moreno

Post on 15-Jan-2015

19.048 views

Category:

Technology


2 download

DESCRIPTION

MAS course at URV. Lecture 4, agent types (specially interface agents, information agents, hybrid systems, agentification). Based on diverse resources.

TRANSCRIPT

Page 1: Lecture 4- Agent types

LECTURE 4:AGENT TYPES

Artificial Intelligence II – Multi-Agent Systems

Introduction to Multi-Agent Systems

URV, Winter-Spring 2010

Page 2: Lecture 4- Agent types

Overview

Agent typologyDescription of some types of agents

Collaborative agents (intro)Interface agentsInformation agentsHeterogeneous systems

Agentification mechanisms

Page 3: Lecture 4- Agent types

Agent properties

AutonomyReactivityProactivityCommunicationMobilityReasoningLearning...

[Lecture last week]

Page 4: Lecture 4- Agent types

How to classify agents?

There are many different classifications of agents, depending on the employed criteriaResearchers from BTLab proposed a classification that depends on the properties that are emphasized in a particular agent

The classification is not an exact division !!!

Page 5: Lecture 4- Agent types

Agent classification (BT Lab) (I)

Collaborative AgentsCommunication, autonomy, reasoning

Interface AgentsLearning, autonomy, proactivity

Mobile Agents [recall lecture 3]Mobility

Internet / Information agentsLearning, autonomy, proactivity, mobility

Page 6: Lecture 4- Agent types

Agent classification (BT Lab) (II)

Reactive agents [recall lecture 2]Reactivity

Hybrid agents [recall lecture 2]Reactivity + reasoning (deliberative)

Heterogeneous systemsMulti-agent systems with different types of agents

Page 7: Lecture 4- Agent types

Collaborative Agents (I)

Emphasize autonomy, as well ascommunication and cooperation with other agentsTypically operate in open multi-agent environments => multi-agent systems(MAS)Negotiate with their peers to reach mutually acceptable agreements during cooperative problem solving

Page 8: Lecture 4- Agent types

Collaborative Agents (II)They normally have very limited learningcapabilitiesCollaborative agents are usually deliberativeagents (e.g. based on the BDI model), with some reasoning capabilities

Reactive agents can hardly communicate and collaborate (only through actions that modify the common environment)

[ MAS = second part of the course ]

Page 9: Lecture 4- Agent types

Collaborative Agents: Rationale

To solve problems that are too large for a single centralised agentTo create a system that functions beyond the capabilities of any of its membersTo allow for the interconnecting and inter-operation of existing legacy systemsTo provide solutions to inherently distributed problems

Page 10: Lecture 4- Agent types

Collaborative Agents: Applications

Provide solutions to physically distributed problems

air-traffic control, management of a team of robotsProvide solutions to problems with distributed data sources

different offices of a multi-national businessProvide solutions that need distributed expertise

health care provision (family doctors, nurses, specialists, laboratory analysis, …)

Page 11: Lecture 4- Agent types

HeCaSe2 Architecture

Page 12: Lecture 4- Agent types

Direct manipulation– The computer is merely a

passive entity waiting to execute detailed instructions

– The user gives commands by operations on the interface objects through input devices

– Interface objects represent software functions and objects

Interface Agents– The user and the agent

engage in a cooperativeprocess

– Software agents ‘know’user’s interests and can act autonomously on their behalf

– (sometimes) agents appear as ‘living’ entities with animated facial expression or body language

HCI: Human-Computer Interaction

Page 13: Lecture 4- Agent types

Limitations of direct manipulation (I)

Different causes of operation errors:Inconsistency between user model and system model of a complicated software application causes misunderstanding of system’s functionsInterface contains limited information about the use of the system, such as operation sequencesOverloaded with technical jargons and conventions

Page 14: Lecture 4- Agent types

Limitations of direct manipulation (II)

Limited adaptability, no intelligenceTo suit a wide range of user typesTo adapt to a user’s way of workingTo adapt to changes in user’s preferences

Page 15: Lecture 4- Agent types

Interface Agents (I)

Emphasise autonomy and learning in order to perform tasks for their ownersSupport and provide proactive assistance to a human that is using a particular application or solving a certain problem

Anticipate user needsMake suggestionsProvide advice… without explicit user requests

Page 16: Lecture 4- Agent types

Interface Agents (II)

Limited cooperation with other agentsLimited reasoning and planning capabilitesInterface agent = personal assistant = personal digital assistant = personal agent

Kind of “secretary” that helps the user in his work environment

Page 17: Lecture 4- Agent types

Personal Assistant metaphor (I)

Initially, a personal assistant is not very familiar with the habits and preferences of his employer

It may not be very helpfulIt may even give extra work !

Page 18: Lecture 4- Agent types

Personal Assistant metaphor (II)

With every experience, the assistant learns bywatching how the employer performs tasksreceiving instructions from the employerlearning from other more experienced assistants

Gradually, more tasks that were initially directly performed by the employer can be taken care of by the assistant

Page 19: Lecture 4- Agent types

Problems in building interface agents

Competence: How does an agent acquire the knowledge it needs to decide:

when to help the userwhat to help the user with how to help

Trust: How can we guarantee the user feels comfortable delegating tasks to an agent?

Page 20: Lecture 4- Agent types

Option 1: User-programmed agents (I)

Idea: use a collection of user-programmed rules for processing information related to a particular taskExample: the Oval system (Lay, Malone & Yu, 1988)

The user can develop an e-mail sorting agent by creating a number of rules that process incoming messages and sort them into different folders

Page 21: Lecture 4- Agent types

User-programmed agents (II)

Once created, these rules perform tasks for the user without having to be explicitly invoked by the user with the arrival of each new messageAnalysis:

Competence: not satisfactoryNo adaptivity to new situations

Trust: not a problem in this case, as agents don’t learn and don’t have proactivity

Page 22: Lecture 4- Agent types

Op. 2: Agent with extensive knowledge

Idea: At runtime, the agent uses its knowledge to recognise the user’s intentions and to find opportunities for contributing with help, advices, suggestions, ...Example: the UCEgo system (Chin 1991)

Has a large knowledge base about how to use UnixInfers the goals of the user

Page 23: Lecture 4- Agent types

Agent with extensive knowledge (II)Does reasoning and planning

Volunteer information proactivelyCorrect a user’s misconceptions

Analysis:Competence:

Requires a huge amount of work from knowledge engineerKnowledge is fix once for all, cannot be customised to individual users

Trust: The user may feel loss of control and understanding

Page 24: Lecture 4- Agent types

Option 3: Interface Agents

Agent

User

Application

Other agents

Interaction

Interaction

Observation

Request advice

Help, suggestions User feedback,

instructions, training examples

Page 25: Lecture 4- Agent types

Basic hypothesis

Under certain conditions, an interface agent can acquire (automatically) the knowledge it needs to assist its userRepetition:

The use of the application has to involve a substantial amount of repetitive behaviour either within the actions of one user or among users

Variance:The repetitive behaviour is potentially different for different users

Page 26: Lecture 4- Agent types

Interface Agents: Learning Modes

Learning from the userby observing and imitating the userby receiving positive and negative feedback from the userby receiving explicit instructions from the user

Learning from other agentsasking other agents for advice

Page 27: Lecture 4- Agent types

Interface Agents: Rationale (I)Less work for the end user and for the application developer

Automation of routine activitiesAutomation of tasks that would take a long time to a human user

The agent can adapt, over time, to its user’s preferences and habits

Learn automatically user profiles, adapted to the user needsThe profile of a user can change dynamically

Page 28: Lecture 4- Agent types

Interface Agents: Rationale (II)

Know-how among different users in a community may be shared

Communication and (limited) cooperation between interface agents of different users

Use in applications with repetitive behaviourEven if the behaviour is different for each user

Page 29: Lecture 4- Agent types

Interface Agents: Applications

Mail managementScheduling meetingsNews filtering agentBuying/selling on user’s behalfInternet browsing

Page 30: Lecture 4- Agent types

Example 1: mail management assistant

Delete uninteresting or potentially harmful messagesPrioritize the messages according to their relevanceSort the incoming messages in the appropriate foldersWarn the user when a very important message arrivesForward a message to another user

Page 31: Lecture 4- Agent types

Example 2: meeting scheduler

Learn user preferences on different kinds of meetingsMake a meeting proposalAccept a meeting proposalReject a meeting proposalReschedule a previously agreed meetingNegotiate a meeting time with other agents

Page 32: Lecture 4- Agent types

Problems of personal assistantsSlow learning curve

Agents require many examples before they can make accurate predictions (especially if they cannot be directly trained)No useful assistance during the learning process

Learning from scratchEach agent has to learn on its own, even if there is a bunch of agents dealing with a team of people with similar interests

Difficulty to adapt to completely new situations

Page 33: Lecture 4- Agent types

Information Agents

Software agents that manage the access to multiple, heterogeneous and geographically distributed information sources. Information agents = Internet agentsMain task: proactive acquisition, mediation and maintenance of relevant information for a user/other agents

Page 34: Lecture 4- Agent types

Interest of Information Agents (I)

Need of tools to manage the information explosion of the WWWImpossible manual management

Page 35: Lecture 4- Agent types

Interest of Information Agents (II)

Commercial benefitsProactive, dynamic, adaptive and cooperativeWWW information managerEmbedded in a browser

User benefitsTime and effort to access and analyze dataImprove productivity (more time, better data)

Page 36: Lecture 4- Agent types

Tasks of information agents (I)

Information acquisition and managementProvide transparent access to different information sourcesRetrieve, extract, analyze, summarize and filter dataMonitor information sourcesUpdate relevant information on behalf of the userExamples: DBs, web pages, purchase of information from providers on electronic marketplaces, ...

Page 37: Lecture 4- Agent types

Tasks of information agents (II)

Information synthesis and presentationFuse, merge heterogeneous data

Handle conflicts, contradictions, repetitionsProvide unified, multi-dimensional views on relevant information to the user

Not just a mere list of data from different sources

Page 38: Lecture 4- Agent types
Page 39: Lecture 4- Agent types
Page 40: Lecture 4- Agent types

Tasks of information agents (III)

Intelligent user assistanceLearn automatically user preferencesAdapt dynamically to changes in user preferencesPersonalised presentation of informationUse of intelligent user interfaces

Sometimes with believable, life-like characters

Page 41: Lecture 4- Agent types

Basic skills of an information agent

Page 42: Lecture 4- Agent types

Basic skill types summary

CommunicationWith information sources, with user, with other information agents

CollaborationWith user, with other information agents

KnowledgeOntology management, user profile learning

Information tasksRetrieval, filtering, integration, visualization

Page 43: Lecture 4- Agent types

Information retrieval

Classical view: management of huge volumes of data in centralised, static databasesStandard conversational paradigm

User makes a questionSystem returns the subset of documents that are considered relevant to the queryUser evaluates the returned information itemsUser refines the initial question

Page 44: Lecture 4- Agent types

Benefits of information agents

User may not know how to make a query exactlyAn agent can help to specify the query

System is only reactiveInformation agents can be proactive, anticipating actions that can be beneficial for the user without his explicit command

Systems without memoryAgents can learn the user interests by observing his queries

Page 45: Lecture 4- Agent types

Information retrieval methodsInput

Set of documentsDomain corpus, or the Web

QueryOutput

Subset of the documents relevant to the queryRequirements

Way of representing the info. of a documentWay to measure the relevance of a document with respect to a query

Page 46: Lecture 4- Agent types

Vector space model

N text documents, containing t termsEach document is represented by a t-dimensional vector

Each component of the vector represents the weight of the term in the document

dj = (w1j, w2j, ..., wtj) j in 1..N

Page 47: Lecture 4- Agent types

Assigning weights to terms

TFIDF: Term Frequency Inverse Document Frequency

The weight of a term in a document measures the relevance of that term to represent the documentwij =tfij * log (N / dfi)

tfij = number of appearances of term i in document jN = total number of documentsdfi = number of documents in which term i appears[e.g. a term that appears in all docs. has weight 0]

Page 48: Lecture 4- Agent types

SimilarityThe similarity between two documents (or a query q and a document dj) is computed with the cosine of the angle formed by the two term vectors (scalar product divided by the product of the norms)

Page 49: Lecture 4- Agent types

Example

Page 50: Lecture 4- Agent types

Preprocess: StopwordsFiltering out words with very low discrimination values, to reduce the size of vector termsHighly frequent words without individual meaning

ArticlesPrepositionsConjunctionsAdverbs...

Page 51: Lecture 4- Agent types

Preprocess: StemmingStemming is the process of reducing a given word to its grammatical rootGroup words with common semantics Reduce size of vector termsAdd flexibility to user queriesStem = portion of a word left after removal of its affixes (i.e. prefixes, suffixes)

Computing / computer / computers / computation / compute / computes / uncomputable => stem: comput

Page 52: Lecture 4- Agent types

Preprocess: Index building

Page 53: Lecture 4- Agent types
Page 54: Lecture 4- Agent types

IR measures: PrecisionPrecision:

Relevant Documents Irrelevant Documents

Search Space

Relevant Search Results All Search Results

All Search ResultsAll Search Results

Page 55: Lecture 4- Agent types

IR measures: RecallRecall:

Relevant Documents Irrelevant Documents

Search Space

Relevant Search Results All Relevant Documents

All Search ResultsAll Search Results

Page 56: Lecture 4- Agent types

Precision vs recallPrecision

Of the documents that have been retrieved, how many of them are good?High precision: the system does not select bad documents

RecallOf all the good documents, how many of them have been retrieved?

High recall: the system does not discard good documents

Normally not computable in open environments like the Web

Page 57: Lecture 4- Agent types

Tradeoff between precision and recallSystem returns 1 very good document:

100% precision, very low recallSystem returns all documents:

100% recall, very low precision

Page 58: Lecture 4- Agent types

Searching for information on the Web

Option 1: Web search enginesProcess text of web pages (stopwords, stemming)Compute terms vector for each pageStore, for each page, the terms that have a weight over a certain threshold

Page 59: Lecture 4- Agent types

Web search engines (II)

Build an inverted index (term pages), to be used in the queriesContinuous Web crawling, analysis of web pages and updating of indexes

This approach requires a very high level of resources and bandwidth

Page 60: Lecture 4- Agent types

Example: Google – see Wired article

Around 24 data centres all around the worldAround 450,000 servers 200 petabytes of hard disk storage – enough to copy the entire Net dozens of times –

Petabyte= 10 ^15 bytes4 petabytes of RAMReceives 100 million queries a dayCollective input-output bandwidth around 3 petabits per second

Page 61: Lecture 4- Agent types

Drawbacks of web search engines

User has to specify a concrete queryThey typically return a huge number of hitsProblems of natural language ambiguityThe results are not structured in any way (list)The search engine does not learn anything about the user

Not adaptiveSame behaviour for each user

Page 62: Lecture 4- Agent types

Searching for information on the Web

Option 2: Information agentsLearn (automatically) the preferences of the user => user model, user profile

By supervising the user activitiesBy receiving explicit information/instructions/feedback from the user

Adapt the behaviour to the user preferences

Page 63: Lecture 4- Agent types

Example: LetiziaAgent developed at MIT (Lieberman, 1997)Helps the user when he is browsing the web to look for information

The agent is actually embedded in the browserLetizia monitors the behaviour of the user while browsing through InternetObserves the user’s actions and makes some reasoning on themGradual automatic discovery of the user interests

Page 64: Lecture 4- Agent types

Some heuristics in Letizia (I)

If the user saves a bookmark, that shows interest in the content of the current pageIf the user follows a link, that shows a potential interest in the content of the linked pageIf he comes back from a page, that probably shows that the page was not interesting after all

Page 65: Lecture 4- Agent types

Some heuristics in Letizia (II)

If the user follows a link in the middle of a web page, that probably indicates that he was not interested in the previous linksIf a user spends many time in a web page, or returns often to a certain page, he is probably interested in its contentIf the user makes an explicit query to a web search engine, the used terms describe information in which he is interested

Page 66: Lecture 4- Agent types

User profileLetizia uses the previous heuristics to discover pages in which the user is interestedAnalyzing the content of these pages, the agent may discover the terms that appear with more frequency

Analysis similar to TFIDFThose terms can be used to represent the user profile[agents, multi-agent systems, tennis, Davis Cup]

Page 67: Lecture 4- Agent types

Relevant properties

The profile is made automaticallyWithout bothering/interrupting the userWithout explicit instructions or information from the user

The profile is updated automatically, when the interests of the user change

Example: new job, new family status

Page 68: Lecture 4- Agent types

Web browsingStandard web browsing

Basically depth-first searchFollow a link from the current page, then a link from that page, etc.Sometimes the user can go back to the previous page to try another link, or select a bookmark

It may be difficult for the user to find something, even if it is only 3-4 clicks away

Page 69: Lecture 4- Agent types

Letizia web browsingLetizia conducts a concurrent breadth-first search rooted from the user's current position

Page 70: Lecture 4- Agent types

Automatic link suggestionsWhile the user reads a page, Letizia analyzes the pages linked to it, in a depth-first fashionIt can discover which of those pages (at several levels of distance) can be interesting to the user

Content related to the user interests contained in his profile

It can also discover dead linksLetizia can suggest to the user links to be followed in the current page

Page 71: Lecture 4- Agent types

Letizia recommendation

Page 72: Lecture 4- Agent types

Heterogeneous systems

Homogeneous system: all agents belong to the same type (e.g. a group of collaborative agents)Heterogeneous multi-agent system

Set of 2 or more agents that belong to 2 or more different types

Page 73: Lecture 4- Agent types

Heterogeneous system: Rationale

Join different existing programs/applications (not necessarily based on agent technology) in a single agent-based system

Legacy systemsNo need to re-program all the applications to integrate them within a MASThe union can give an added value

Page 74: Lecture 4- Agent types

Agentification

Ways to transform a standard application into an “agent” that can be integrated and participate in a multi-agent system of collaborative agents to help to solve complex distributed tasks

Page 75: Lecture 4- Agent types

Option 1: Translator / Transductor

“Bridge” between the application and the other agentsTakes the messages of other agents, and translates them to the program communication protocol (and the other way round)

Application

TranslatorOther agents

ACL

Application data format

Page 76: Lecture 4- Agent types

Advantages

The code of the application does not have to be modifiedWe only need to know the inputs/outputs of the applicationThe same translator can be used to agentify different applications/resources

Access to an Oracle databaseAccess to a CLIPS rule-based system

Page 77: Lecture 4- Agent types

Option 2: Wrapper

Add code to the application so that it can communicate with the agents of the MAS

Implies a direct manipulation of the internal data structures of the application

Wrapper Other agents

ACL

Application

Page 78: Lecture 4- Agent types

Comments on wrappers

Positive aspectsMore computationally efficient than translators

Negative aspectsWe need access to the application source codeIt may not be easy to understand/modify the code of a complex applicationA wrapper is not reusable as a translator

One wrapper for each program to be agentified

Page 79: Lecture 4- Agent types

Option 3: Re-code the application

Re-write the original program as an agent

Application

New agent application

Other agents

ACL

Page 80: Lecture 4- Agent types

Comments on re-writing

Negative aspectsMuch more work than the previous optionsIt does not seem really an “agentifying” mechanism

Positive aspectThe resulting agent could be designed to work in a much more efficient way, without external/internal translations between formats

Page 81: Lecture 4- Agent types

Architectures for heterogeneous systems

Flat systemEach agent can talk directly to any other agent

Federated systemThere are special agents (facilitators), that manage

the connection of the system with the environment, andthe communication between the agents

Page 82: Lecture 4- Agent types

Federated systems

Agents do not communicate directly, but through facilitatorsFacilitators help agents to find other agents in the system that provide some services

Without having to ask all other agents

Facilit.

Ag.Ag.Ag.Ag.Ag.

Facilit.

Computer 1 Computer 2

Page 83: Lecture 4- Agent types

Example: RETSINA

Page 84: Lecture 4- Agent types

RETSINA agentsInterface agents: input/output, learn from user actionsTask agents: encapsulate task-especific knowledge, used to perform/request services to/from other agents/humans

They can coordinate their activitesMiddle agents: infrastructure service (e.g. they know the services provided by other agents)Information agents: monitor and access one or more information sources

Page 85: Lecture 4- Agent types

Final comment

This classification is not intended to be either exhaustive or a very strict division of agents

Mobile information agentsCollaborative interface agentsCollaborative heterogeneous system

An agent can fall, to a certain degree, in different categories

Page 86: Lecture 4- Agent types

Readings for this week

Article on Software Agents (Nwana, BT Lab)Link to Letizia at MITKlusch: Information agent technology for the Internet: a surveyWired (Oct06) article: The information factoriesExtra information on RETSINA