COMP310 MultiAgent Systems

19
COMP310 MultiAgent Systems Chapter 10 - Applications

Transcript of COMP310 MultiAgent Systems

Page 1: COMP310 MultiAgent Systems

COMP310 MultiAgent Systems

Chapter 10 - Applications

Page 2: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 10

Application Areas

• Agents are indicated for domains where autonomous action is required.

• Multiagent systems are indicated for domains where:

• control, data, expertise are distributed;

• centralised control isimpossible or impractical;

• processing nodes havecompeting/conflictingviewpoints or objectives.

2

Some Applications

• Interface Agents

• Internet Agents

• E-commerce Agents

• Mobile Agents

Page 3: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 10

Interface Agents

• The idea is to move away from the direct manipulation paradigm that has dominated for so long.

• Agents sit ‘over’ applications, watching, learning, and eventually doing things without being told — taking the initiative.

• Pioneering work at MIT Media Lab (Pattie Maes):

• news reader;

• web browsers;

• mail readers.

3

Page 4: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 10

Nicholas Negroponte’s Vision

4

“...The ‘agent’ answers the phone, recognises the callers, disturbs you when appropriate, and may even tell a white lie on your behalf. The same agent is well trained in timing, versed in finding opportune moments, and respectful of idiosyncrasies...” (p150)

“... If you have somebody who knows you well and shares much of your information, that person can act on your behalf very effectively. If your secretary falls ill, it would make no difference if the temping agency could send you Albert Einstein. This issue is not about IQ. It is shared knowledge and the practice of using it in your best interests...” (p151)

“...Like an army commander sending a scout ahead . . . you will dispatch agents to collect information on your behalf. Agents will dispatch agents. The process multiplies. But [this process] started at the interface where you delegated your desires...” (p158)

(From Being Digital, 1985)

Knowledge Navigator

Page 5: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 10

Email Reading Assistants

• MAXIMS (Pattie Maes, 1994) ‘...learns to prioritize, delete, forward, sort, and archive mail messages on behalf of a user ...’

• Works by ‘looking over the shoulder’ of a user, and learning about how they deal with email.

• Each time a new event occurs (e.g., email arrives), MAXIMS records the situation → action pairs generated.

• Situation characterised by features of event:

• sender of email; recipients; subject line; etc.

• When new situation occurs, MAXIMS matches it against previously recorded rules.

5

Page 6: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 10

Email Reading Assistants

• Predicts user action, and generates a confidence level.

• Confidence level compared against two thresholds: “tell me” and “do it”:

• Rules can be “hard coded”; even get help from other users.

• MAXIMS has a simple ‘personality’, (a face icon), communicating its ‘mental state’ to the user.

6

confidence < “tell me” agent gets feedback

“tell me” < confidence < “do it” agent makes suggestions

confidence > “do it” agent acts

Page 7: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 10

Agents on the Internet

• It is not easy to find the right information (even with the help of search engines).

• Systematic searches are difficult:

• human factors: we get bored by slow response times, find it difficult to read the WWW rigorously, get tired, miss things easily, misunderstand, get sidetracked;

• organizational factors: structure on the net is superficial — no standards for home pages, not (yet) semantic markup to tell you what a page contains;

• The sheer amount of information presented to us leads to ‘information overload’.

• What we want is a kind of ‘secretary’:

• someone who understood the things we were interested in, (and the things we are not interested in), who can act as ‘proxy’, hiding information that we are not interested in, and bringing to our attention information that is of interest.

• We cannot afford human agents to do these kinds of tasks (and in any case, humans get suffer from the drawbacks we mentioned above).

• So we write an agent to do these tasks.

7

Page 8: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 10

Other Examples

• Tour Guides

• The idea here is to have agents that help to answer the question ‘where do I go next’ when browsing the WWW.

• Such agents can learn about the user’s preferences in the same way that MAXIMS does, and rather than just providing a single, uniform type of hyperlink actually indicate the likely interest of a link.

• Indexing Agents

• Indexing agents will provide an extra layer of abstraction on top of the services provided by search/indexing agents such as GOOGLE and LYCOS.

• The idea is to use the raw information provided by such engines, together with knowledge of the users goals, preferences, etc., to provide a personalised service.

8

Page 9: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 10

Other Examples

• FAQ Finders

• The idea here is to direct users to FAQ documents in order to answer specific questions.

• Since FAQS tend to be knowledge intensive, structured documents, there is a lot of potential for automated FAQ servers.

• Expertise Finders

• Suppose I want to know about experts in intelligent agents.

• Current WWW search tools would simply take the words “intelligent” “agents” and search on them.

• This is not ideal: GOOGLE has no model of what you mean by this search, or what you really want.

• Expertise finders ‘try to understand the users wants and the contents of information services’, in order to provide a better information provision service.

9

Page 10: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 10

Agents for E-Commerce• Another important rationale for internet agents is the potential

for electronic commerce.

• Most commerce is currently done manually. But there is no reason to suppose that certain forms of commerce could not be safely delegated to agents.

• Examples:

• find the cheapest copy of MS Office from online stores;

• flight from Manchester to Dusseldorfwith veggie meal, window seat, plus hotel, taxis, entertainment, restaurants.

10

First and Second Generation E-Commerce Systems

First generation: comparison shopping agents.

Examples:

• 1995: Bargain Finder from Andersen;

• 1997: Jango from NETBOT.

• 2003: Froogle from GOOGLE

Second-generation: negotiation, brokering, . .

Page 11: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 10

Case Study: Jango

• Jango (Doorenbos et al, Agents 97) is good example of e-commerce agent.

• As many WWW sites are different, Jango/ShopBot exploits several regularities in merchant WWW sites:

• navigation regularity:

• sites designed so that products easy to find

• corporate regularity:

• sites designed so that pages have same look’n’feel;

• vertical separation:

• merchants use whitespace to separate products.

• Two key components of Jango/ShopBot:

• learning vendor descriptions;

• comparison shopping;

11

Jango’s Long Term Goals

1. Help user decide what to buy.

2. Finding specs and reviews of products.

3. Make recommendations.

4. Comparison shopping for best buy.

5. Monitoring “what’s new” lists.

6. Watching for special offers & discounts.

Page 12: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 9b

Case Study: Telescript• TELESCRIPT was a language-based environment for constructing mobile

agent systems.

• TELESCRIPT technology is the name given by General Magic to a family of concepts and techniques they have developed to underpin their products.

• There are two key concepts in TELESCRIPT technology:

12

Places

Places are virtual locations occupied by agents. A place may correspond to a single machine, or a family of machines.

Agents

Agents are the providers and consumers of goods in the electronic marketplace applications that TELESCRIPT was developed to support.

• Agents are interpreted programs, rather like TCL.

• Agents are mobile — they are able to move from one place to another, in which case their program and state are encoded and transmitted across a network to another place, where execution recommences.

• In order to travel across the network, an agent uses a ticket, which specifies the parameters of its journey:

• destination;

• completion time.

Page 13: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 9b

Why Mobile Agents?

• Why mobile agents?

• low-bandwidth networks or limited data rates

• efficient use of network resources.

• There are many issues that need to be addressed when building software tools that can support mobile agents. . .

• security for hosts and agents;

• heterogeneity of hosts;

• dynamic linking.

13

Page 14: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 9b

Mobile Agents

Mobile Agents

14

client process

client process

mobile agent

Remote Procedure Calls

client process

server process

Page 15: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 9b

Case Study: Telescript

• Agents can communicate with one-another:

• if they occupy different places, then they can connect across a network;

• if they occupy the same location, then they can meet one another.

15

Page 16: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 9b

Case Study: Telescript

• TELESCRIPT agents have an associated permit, which specifies:

• what the agent can do (e.g., limitations on travel);

• what resources the agent can use.

• The most important resources are:

• ‘money’, measured in ‘teleclicks’ (which correspond to real money);

• lifetime (measured in seconds);

• size (measured in bytes).

• Agents and places are executed by an engine.

• An engine is a kind of agent operating system — agents correspond to operating system processes.

• Just as operating systems can limit the access provided to a process (e.g., in UNIX, via access rights), so an engine limits the way an agent can access its environment.

16

Page 17: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 9b

Case Study: Telescript

• Engines continually monitor agent’s resource consumption, and kill agents that exceed their limit.

• Engines provide (C/C++) links to other applications via application program interfaces (APIs).

• Agents and places are programmed using the TELESCRIPT language:

• pure object oriented language, apparently based on SMALLTALK;

• interpreted;

• two levels — high (the ‘visible’ language), and low (a semi-compiled language for efficient execution);

• a ‘process’ class, of which ‘agent’ and ‘place’ are sub-classes;

• persistent;

• General Magic claim that the sophisticated built in communications services make TELESCRIPT ideal for agent applications!

17

Page 18: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 9b

Case Study: Telescript

• Summary:

• a rich set of primitives for building distributed applications, with a fairly powerful notion of agency;

• agents are ultimately interpreted programs;

• no notion of strong agency!

• likely to have a significant impact (support from Apple, AT&T, Motorola, Philips, Sony).

• not heard of anyone who has yet actually used it!

18

Page 19: COMP310 MultiAgent Systems

Copyright: M. J. Wooldridge & S.Parsons, used with permission/updated by Terry R. Payne, Spring 2013COMP310: Chapter 10

Summary

• These slides have introduced the notion of agent applications, and in particular:

• Interface agents

• Information agents

• Agents for e-commerce

• Next time, we will return to the notion of multi-agent systems, and in particular, interactions between agents in a multi-agent system.

19

Class Reading (Chapter 10):

“Agents that reduce work and information overload”, P.Maes. In Communications of the ACM, Vol 37 (7), 1994, pp30-40.

This first article provides a summary of the use of agents for assisting users using applications such as mail etc.“Applications of Distributed Artificial Intelligence in Industry”, H.V.D.Parunak. In Weiss,G.ed.: Multiagent Systems,1999, pp377-421

This article gives an overview of the use of agents in industry from one of the pioneers of agent applications.