Tuesday, October 9, 2007

What are Advocate Agents?

The goal of our Advocate Agents project is to research, develop, and use highly personalized agents to complement the cogitative limitations of the human mind to facilitate the decision making process (including the gathering of information and recommendation of actions). These agents shall work in a collaborative manner with a user to accomplish his or her goals. To work effectively and efficiently with a human user they have to learn their interests, habits, and preferences (as well as those of his or her communities) (Maes1994b). In an online shopping scenario advocate agents will be able to generate recommendations as to what to buy (product-brokering) and from whom to buy (merchant-brokering) based on customer criteria.

There has been much research published on personalization and recommendation agents regarding customer preference modeling (Schafer, Konstan et al. 2001) as they have become more prevalent in the Internet. Currently there are three main streams of research dependent on how customer preferences are modeled: vector similarity (collaborative and content-based filtering), probability (Bayesian), and association (correlation between user and item). The shortcomings of these researches are that they have agents for clusters of people, i.e. recommendations to a specific user based on the preferences of many different users (such as Movielens.umn.edu and Amazon.com), rather than tailor to the needs of an individual user. So far, the agent has always been on the server side (e.g. an online store) rather on the client side. As a consequence, these agents are not always acting for the better good of the customer. The retail agents are trying to convince the customers to buy more products than might be necessary for him. Furthermore, these agents have little insight on your real preferences, since they can only observe actions on their site related to their competence. We envision advocate agents, residing on the client side, which always supports and promotes the best interests of its master.

These advocate agents shall not just "simply" facilitate product or merchant search, they "get to know their master," meaning the human decision maker through initial profiling (sex, age, nationality, preferences, etc) and by observing the behavior of the decision maker while visiting an online retail site (time spent, links clicked, dates visited, website visited before, etc). Based on this information agents should recommend actions (buy this product, buy from this merchant, read this article, etc), and execute autonomously some of the decisions the consumer delegated to it (make a dentist appointment, buy airline ticket, bid on eBay.com, etc). In addition to reducing information overload customers that use software recommendation agents reduce effort, and improve the effectiveness and efficiency of their decision making (Haeubl and Trifts 2000). These agents will represent the preferences of the consumer as his or her highly tailored "software copy" in the Internet. An integral part of the advocate agents is the learning component which allows them to improve their performance from experience over time. The user's reaction of an advocate agent suggestion is recorded for long term behavioral analysis and fed back in real time to the agents as well.

We hypothesize that over time a human decision maker will delegate more and more decisions to an advocate agent. There is a switching point for the adaptation of new technologies by the individual users, and it is usually based on how smoothly the new technology integrates in daily life and how useful it is. In the first phase of this project we envision a non-intrusive proactive agent which will work according to the user preferences and gives suggestions even if it has no immediate assignment. Examples of pro-activeness include looking for new trends, latest news, informing about interesting ongoing auctions, such as eBay.com, good deals, etc.


hong said...

Several points:
1. The concept is rather user-centric, in contrast to the supplier-centric sale's agent. I suggest to emphasis this difference to the tradition concept.

2. Have you considered the language for the agents to communicate with their peers, which is an important aspect of information acquisition, prior to learning.

3. One must have capability: context-awareness, this could be achieved through some location-based services.

4. privacy and security issues.

Hong Chen

Dr. Data Dictionary said...


I believe that your overview of the mission is excellent. I am especially interested in several aspects of our project:


I believe that intelligent agents are analogous to race cars. They have the power to do inference on various data sets and find new information that is relevant to the consumer. But agents today are like cars doing laps on little islands. These islands are Ontologies that they understand. But since web sites with microformats are rare today. Interlinked Ontologies and metadata registries are even more rare. Were I live (in Minnesota) there are only two organizations that publish their metadata and the semantics of that metadata in a machine readable format. I believe we will be stuck driving our agents around on small islands until standards like xhtml, microformats, Ontologies and interlinked Ontologies become standard. Until this happens our efforts will be mostly academic. But when these standards start to appear the impacts will be revolutionary beyond most people’s expections.


…agents [on retail web sites] are not always acting for the better good of the customer.

This is very true. When you search for books on amazon.com, Amazon is always suggesting other Amazon products that might be of interest to you. It is certainly not in the interest of their stockholders to point out that bookpool.com has the same book for 50% less. One of our first value statements is that in order for users to trust our services we must provide vendor neutral recommendations.

In the era of net neutrality and Comcast selectively filtering packets based on their shareholders interests. (see


This implies that computation must be done on a local system and all incoming data streams must be secure. It is easy to imaging Comcast filtering our agent data stream to make their video download service appear to get better ratings.

Client Implementation

We envision advocate agents, residing on the client side, which always supports and promotes the best interests of its master.

I also agree that the client implementation is the best place to put a true advocate agent. The user’s own computer is usually the most trusted resource that the user controls. When I think of the of the web “client” today I think we think of the web browser. I am a big user of FireFox (I only use IE under duress) and I am also a big fan of the thousands of plug-ins and add-ons that FireFox has. These range from little items like debuggers to high-impact additions like the XForms extensions and tools like MIT’s Simile Piggy Bank.

Piggy Bank is an interesting model. Like Google Gears, it goes way beyond just adding a few menus to the browser. It is an entire database-backed application. As you surf the web it builds a library of RDF statements and can do joins between data sets gathers from various sites. I believe that extensions to Piggy Bank and their ilk will form the first real round of useful consumer-driven agents. They may not run within the memory space of our browser but to be widespread must be as easy-to-install as browser add-ons. Configuration of our agents on the other had is another story. If we run as a FireFox add-on we will need a team of experienced XUL and XForms developers.

Economic Models for Advocate Agents

We know that there are many services today that help the users find things on the internet (like search engines) but those services are very synchronous. For every request a user initiates from a client the services send back some useful results. These results are interspersed with add banners that fund the services. Without the eyeballs viewing the results (and the ads near them) the services would not survive.

Agents search services on the other had don’t have a mature economic model. There are few fee-for service web-services targeted at agents. If agents today try to perform searches using Google it would violate the Google appropriate use policy. Agents will need to find new economic models for search if they are to be deployed in the real world.

- Dan

Arun Batchu said...

> Client side agents
Like Hong Chen, yourself and Dan have pointed out, the advocacy we propose is for the user, *aggregated* over a wide range of *local* activities, of which 'browsing' is a key one.

>> Browsing analytics
Given the key impact of browsing on advocate agents, I agree with Dan that one of the key places to put the agent is in the browser space. The browser these days is where key innovations are happening. Combined with RESTful services the combination is very powerful and can power non-programmers (aha!) and hence opens up any innovation to be adopted quickly.
> Browser agents
Browser agents can be a Firefox plugin, which is not difficult to build, especially given that there are excellent (and many) plugins that are open source and already inspecting HTTP streams as well as analyzing user behavior.If not from scratch, like Dan pointed out, we could leverage an existing plugin to 'observe' and 'act on' patterns.
> Collaborating agent
The browser agent could in essence at some level collect, disseminate "what is going on" to other collaborating agents, derive insights and be proactive with suggestions. The agent could indicate its 'insights' or advocacy :) to the user by some visual, non-intrusive indication or behavior via the browser's UI affordances such as icons, status bar, windows...whatever.
Here is where to start: https://addons.mozilla.org/en-US/firefox/browse/type:7

Wolf Ketter said...

Hi Dan,

Thanks for the excellent categorization of the problem!

I totally agree with your viewpoint on semantics, but I also think there are plenty of possibilities that we are able to work on even though semantics is not mainstream yet, but we can contribute our share :) We could for example have our project web site with microformats, have an agent ontology, and code the page in XHTML :) We can start building bridges, at some point there is a critical mass, and all is flowing, like the Internet was many years back.

Yes, this is important because almost all recommendation agents out there are not neutral even they claim to be...

Client Implementation
This is an integral part of any advocate agent, it has to reside on the client side or in "client space" - it also could be able to cooperate with "Buddies" in social networks. This is a new critical point in my mind! So far we have agents that gather tons of information process and filter it somehow and then present the information to you, another angle to the story is that you have Buddies that you trust in certain areas very much like Fashion, Entertainment devices, Photography, etc why doesn't contact an advocate agent these first and then take a button-up approach instead of top-down? Then it would get for instance one TV recommended from a trusted source, a buddy, and then identifies the features it likes and then refines the search from there? This might be more efficient. Thoughts?

Economic Models for Advocate Agents
Well, I guess an economic model can easily be build for economic agents as well. If these agents are really mimicking human behavior then once in a while following some add might not be a bad thing... you might get something out of this. An agent can be forced to process a certain amount of ads, or pay a very small amount to be quicker, these small amounts might force you to do some trade-offs... or if you use a "service market place" then there could be information agents who sell you packages of information, maybe processed and tailored to your needs? They would act as a mediator.



Sarah said...

I am very interested in this work with different actors, I like the treatment that some ndado me by telephone and are not persistent, that is the key to that many people will be encouraged and buy so we all benefit! like when I sold viagra online to me is the best recommendation given to me!