Mindswap Weblog

Where are all the agents (long form)

by James Hendler

I decided to turn my short screed from this blog into an editorial for IEEE Intelligent Systems - Below is a preprint of the editorial - I welcome comments (in the blog, as letters to the editor, or via email) - Jim Hendler

====================
Where are all the Agents?

Intelligent Readers,

Something occurred to me recently. In the late 1990s, many of us believed we were at a time where the large-scale deployment of agent-based computing was right around the corner. In the early 2000s, a lot of US and other international research funding was focused on making this happen. This magazine and many others had hugely popular special issues on Agents, and academic conferences on agent-based computing were abuzz, with many of us “old timers” beginning to believe that the time had really come. But now, looking at what is hot on the Web, in IT development, and in VC circles, I find myself shaking my head and wondering, “Where are all the agents?”

I was personally very involved in this agent buzz. Starting in late 1998, I took a few years out of my usual academic life to spend time working at the US Defense Advanced Research Projects Agency (DARPA). Specifically, I went to DARPA to help develop and enhance the funding profile in Agent-Based Systems. I’d been working in the Agents community for well over a decade at that point, and DARPA felt it would be useful to bring in an academic researcher to help move work in the area forward. During the course of my time at DARPA, I helped to run tens of millions of dollars of government funding for research in this area, making me for a time the largest funder of agent-systems research in the US, and probably the world.

When I started at DARPA, I took over running the “Control of Agent Based Systems” (CoABS) program, which had been started before I got there by Tom Garvey and Doug Dyer among others. The goal of this program was focused on the creation of software infrastructure to help create large-scale deployment of agent-based programs. Over the course of the next couple of years, the program changed to focus on developing middle ware for agent-based systems — essentially an interoperability program aimed at making different agent architectures work together.

The reason for this redirection was that at that time, there were a number of different agent frameworks being explored, and several relatively successful architectures. However, these systems did not play very well together, and it was clear that for agent systems to be successful in the real world, we would need to assume more heterogeneity. Creating an infrastructure that would let these different agent systems find and register services callable by other agent systems. Thus, the individual agent architectures could be used to wrap existing systems for use as agents, to provide the “autonomy” needed for specific applications, and to provide essentially services, but when the systems did not have the needed capabilities, they could find services offered by other agent systems and link to them.

Our solution to this was to create the “CoABS Grid,” which was a middleware package to provide functionality to allow agent applications to communicate together and for legacy systems to be wrapped to communicate like agents (i.e. to provide services for other agent-based systems also using the Grid). The Grid code was based on JINI, which at the time was clearly the best choice for such middleware development, and to a large degree the CoABS grid validated many ideas behind current service-oriented middleware architectures. To date, the Grid has been used in both military and commercial systems (and software that has developed from the Grid is now available from Global Infotek, Inc. under the name “Intelligent Services Layer” or ISL).

Perhaps more importantly, many of the ideas behind the grid have become popular in the Web Services framework. The idea of “wrapping” software to provide services that can be invoked remotely by other systems is the core of this approach, and the middleware approaches pioneered in CoABS and other research has been adopted by industry as a key software development concept. Instead of needing proprietary technology to wrap legacy systems, there’s SOAP, WSDL and a stack of service languages that have become standards. The registry of services, the “choreography” of multiple service providers, and other ideas that were coming out of the research community in the late 1990s are now mainstream. In short, the interoperability infrastructure needs of the agent community are now provided by mainstream software approaches.

While at DARPA, I also realized that a second problem with the existing agent systems was that even with the infrastructure, interoperability at the data level was still difficult. Agent-based systems were clearly being constricted in development by the same knowledge-engineering bottleneck that has been the choke point for so much of the widespread application of expert and intelligent systems. Trying to overcome this led to the creation of the DARPA Agent Markup Language (DAML) program. My concept was that if we could make knowledge sharable and easily distributed (linkable came later) then we could make it so agents could not only share services, but also vocabularies.

This was not a totally new idea at DARPA. Earlier programs had tried to develop standards for knowledge interchange, and the Knowledge Query Manipulation Language (KQML) appeared to create some of the groundwork for the needs of such a language. The primary innovation in DAML was to base these earlier ideas in new Web languages so as to enhance ease of deployment, and to simplify some of the representational commitments and provide some common tools, to make ontology development easier. The DAML program also sought to develop a “de facto” standard for these Web ontologies, and EU and US government funding agencies jointly created a committee to develop such a language. This language, DAML+OIL, was published in December 2000, and within a couple of years had created enough interest that industrial, academic and governmental participants agreed to standardize the language under the auspices of the World Wide Web Consortium. The resulting Web Ontology Language, OWL, became a standard in February of 2004, and has become one of the key languages for the Semantic Web.

So here’s what I realized. The key obstacles to the wider deployment of agent-based systems were identified early on as a need for interoperability and intercommunications.
We now have Web Service standards, supported by the largest software development and support companies, which provide for many of the interoperability needs we identified. We also have the Semantic Web seeing wide deployment and support from some of the larger data providing companies. Open source toolkits and tens of thousands of ontologies in OWL are now available to make domain engineering easier. We have many large Web providers that make access to their systems available through some sort of service interface or in easily programmable ways, so access to service providers abounds. Technologies transitioning from research to industry also include data access for Semantic Web resources, rule-based Web languages, and even expressive logics for the high end KR needs of some applications.

What we don’t seem to have is agent-based systems in any serious way!

While it is clear there is still an active research community in agents, I see no evidence for the imminent widespread use of this technology such as we were promising a decade ago! The main agent conference, AAMAS, seems to be doing fine in terms of attendance, and the applications track has a fair amount of interesting work, but very few papers are published that actually talk about any sort of real-world deployment. The Web site that was being used as a primary portal for the Agent community, AgentWeb, seems to have last been updated somewhere around 2005, and the bulk of the papers I can find published since then are filled with all kinds of wonderful theory, but not much on deployed applications. In fact, looking back over the special issues on agents that we’ve been publishing in this magazine every couple of years, I see few if any papers that report on systems that have been fielded “in the wild,” large-scale or not.

So what happened? When I began my work on the Semantic Web, agents were a key motivation. In fact, if you look back at the widely cited paper that Tim Berners-Lee, Ora Lassila and I published on the Semantic Web article in Scientific American when we started working together (May 2001- it’s been a while!) you’ll see agents was clearly a theme. The rest of the ideas in that paper are now seeing widespread deployment, but I ask again:

Where are all the agents?

— Jim Hendler

13 Responses to “Where are all the agents (long form)”

  1. Peter McBurney Says:

    Jim –

    The short answer to your question is: The agents are all busy doing stuff! You’re just not looking for them in the right places! I think your question arises because most of us, since we all consumers, can only readily imagine Business-to-Consumer (B2C) applications of new technologies. Yet, the most compelling applications of agent technologies were always, are now, and will always be, in B2B domains, out-of-sight of most consumers.

    The latest weekly statistics from the New York Stock Exchange, for instance, state that in the week of 9-13 April 2007, some 31.7% of shares traded on the NYSE by volume were program-traded. Most of these will be trades undertaken by software agents. In some weeks, this proportion has been much higher. In fact, the NYSE’s definition of program trading may undercount the actual proportion of stock transactions due to software agents. See the NYSE press release here: http://www.nyse.com/press/1177066052223.html

    As another B2B example from finance, in January this year Barclays Capital launched an automated foreign exchange currency fund, a software program which buys and sells forex automatically. This fund joins existing automated hedge funds from Merrill Lynch and Goldman Sachs. Such efforts will only proliferate now that the US Securities and Exchange Commission (SEC) has begun to annotate EDGAR, its database of company information.

    And with respect to your reference to a portal called “AgentWeb”: Do you mean AgentLink? http://www.agentlink.org/

    The European Commission, in its infinite wisdom, decided that the agents R&D community was sufficiently well-established in Europe not to require further funding from the EC, despite two applications we made for continuation. The most recent AgentLink project, AgentLink III, therefore came to an end in December 2005. We may make further applications under the latest funding Framework Programme, FP7. In the interim, there are many, more-specific, agent-related projects being funded by the EC and national research agencies in Europe, across a range of application domains.

    – Peter McBurney
    University of Liverpool, UK
    Administrative Co-ordinator, AgentLink III

  2. Sam Chance Says:

    Hi Jim,

    You may recall some time ago seeing a presentation (or two!) by me called Semantic Service Oirented Architecture (SSOA). At that time you asked me if I had heard of CoABS, and I told you I used CoABS in my thesis work at the Naval Postgraduate School.

    Well, SSOA is alive and well and I now have a demonstration system. Teaming with several Independent Software Vendors, we have have assembled an event driven, autonomic, organic SOA framework within which we will employ agents to abstract end users further away from technology and allow them to focus on business operations. To be sure, agents will receive queries or directives from humans and will automatically assemble and execute adaptive, re-usable workflows.

    If you are able, please consider attending the DoDIIS Worldwide 2007 conference next week in Chicago, and I will readily provide you a SSOA demo and roadmap. If you are unable to make it next week, I stand ready to meet with you at your convenience.

    For the record, work at SAIC and we have teamed with the likes of Paremus, SoftPro Technologies, Agent Logic, Siderean Software, Kapow Technologies, Dynamics Research Corporation, and Global Infotek.

    The agents are coming, and SSOA will help usher them into mainstream!

  3. Jose Vidal Says:

    I ramble on about this topic at:

    http://www.multiagent.com/where-semantic-agents

  4. James Hendler Says:

    Jose - I like what you put on your website, doesn’t have a place there for comments - the one thing I would disagree with is that I never argues for agents as things that download ontologies and theorem prove — perhaps the best piece I’ve written on what I think an agent could be is at http://www.nature.com/nature/webmatters/agents/agents.html - a bit out of date, but I’m still waiting….
    -Jim H.

  5. Yihong Ding Says:

    Dear Professor Hendler,

    I have some humble comments, maybe naive, but please allow me.

    Agents are becoming latent. This is my observation. As you have pointed out in your article, the old agent infrastructure has been gradually replaced by the newer service-oriented architecture. The functions of machine agents have been decomposed into various web services. As a result, explicit agents disappears, while at the same time implicit agent components become popular everywhere. On the basis of the current SOA, agents on old definition can be resurrected any time by composing available web services properly only if someone is willing to do so.

    If we view the entire dream of producing intelligent agents as a divide-and-conquer procedure, we are now in a phase of dividing. Originally, we had tried to solve the problem as a whole and we failed. So we now are trying to decompose the problem into small pieces. Until now it is so far so good. With the prevalence of web services and SOA, we may sooner or later move to the phase of integrating our divided components, which will compose these agent components back to the purpose-driven agents as we had dreamed for long time. It is definately not trivial and it might even fail. But at least, this is what the whole world is trying.

    In summary, this is my final answer to your question on where agents are now—they have been broken up into pieces and waiting for the reassembling.

    Yihong Ding

  6. Jose Vidal Says:

    First, sorry, only users that take the time to create an account (and pass the captcha) can post comments on multiagent.com. Too much spam!

    Anyway, I’m kinda lost. In the nature article you mention you do talk about agents having ontologies and using inferencing. You also posit that the agent must be:

    “It must be communicative: able to understand your goals, preferences and constraints. It must be capable: able to take options rather than simply provide advice. It must be autonomous; able to act without the user being in control the whole time. And it should be adaptive; able to learn from experience about both its tasks and about its users preferences.”

    The only way I know to do the first two, communicative+capable, is by doing some heavy duty inferencing using a large knowledge base. Also, I note that your requirements there do sound a lot like general AI.

    I guess my question is, can you provide an example of an agent that meets your criteria above but is not intelligent? is not C3PO?

  7. James Hendler Says:

    Jose -guess it gets into a lot of narrow uses of words - I concede your main point - the thing I was responding to was your words “using a theorem prover to deduce new facts and thus create new connections among the data” which implies a particularly methodology that I don’t tend to endorse — I think a lot can be done with weak methods, heuristics, datamining, statistics, etc - so I just didn’t mean it was completely logic-based.

    More importantly, the key thing in my mind is that these things can work within a narrower domain than “general knowledge” and thus we may not be talking heavy duty inferencing on large knowledge bases. I often retreat to a phrase I’ve used often (see my “Dark side of the Semantic Web” blog) - a little semantics goes a long way… basically, with a lot of data and a small amount of inferencing, one may be able to solve a lot of problems and do a lot of “intelligent” things (note the scare quotes, I don’t want to get into discussion of what that word means).

    Hope the helps clarify
    -JH

  8. Lotzi Boloni Says:

    Jim

    I think that I agree with you that the “intelligent software agents”, as envisioned in the mid-1990s are not around. My story here is that I myself moved from the “intelligent software agents” field - I wrote one of the “also-run” agent systems (Bond) in 1998-2000, to embodied agents. I don’t think that this is a desertion: I am still doing negotiation, strategies, communication etc.

    As you were asking for feedback, here are my thoughts on it:

    1. Business interests vs. agents
    —————————————————

    Many of the original visions assumed personal assistant agents which look up opportunities, compare prices and so on. This assumes providers who are willing to provide interfaces which allow this. There is a strong business case against this.

    * Many services on the web are advertising supported. This advertising would be lost on the personal assistant agent.
    * Many companies spend extensively on marketing, sales, presentation and so on. All these departments have a strong interest to present their message directly to the consumer.
    * Many of the envisioned personal assistant agents were in fact creating a personalized “service product”: for instance a travel package integrating services from multiple. The companies consider their right to create such packages - and they have extensive networks of collaboration agreements for this.
    * Many companies add “friction” to their dealings with consumers in order to prevent direct price comparisons. The first element here is to prevent agents obtaining the exact parameters of a product.

    Now of course, all this has nothing to do with technology. If Expedia and the likes would open up their interfaces, the creation of personal agents would be straightforward. If the evolution of the web would have moved to a multitude of small providers, as it seemed to be in the mid 1990’s, the interests of those would be to encourage users to package their services through personal service agents. But it turned out that the web became the domain of quasi-monopolistic providers, and their interest is to implement the packaging of the services themselves.

    Again, if the web would have moved towards a micro-payment model, there would be more support for user-side agents. But as it worked out as a mostly advertising supported system, there is a strong disincentive for companies to enable user-side agents - in fact, we are doing things like web aggregation and rss collections on the server side! This would have been the typical domain of user side agents!

    2. The agents in the physical world
    —————————————————

    I think that we are less and less interested in software for software’s sake anymore (agents or not). Ok, we have things like text editors, spreadsheets and compilers and so on, but there is relatively few radical new developments in those fields.

    The current trend seems to be about software which has a strong interaction with the world: such as communication, pictures, movies, music, or, of course robots, sensors and actuators. We are also using the internet for business interaction, but as I was arguing, the current business environment does not favor user side agents there.

    Once you exclude the personal assistant type agents, few interesting _purely software_ agent opportunities remain.

    However, as soon as we place the agents in the physical world (or even simulated physical worlds such as Second Life), suddenly the applications are all around. Of course we have another problem: many of the assumptions we made while assuming a purely software world are not valid, and there is an annoying number of entrenched technologies we need to adapt to. And there is also the previous work by developers who had implemented what would amount to naive agent implementations.

    But for autonomous entities in the physical world the business logic would work differently. There is no business pressure _against_ agents. Physical products are rarely advertising supported. Companies do not appear to have interests to control the interactions of physical devices they sold to customers. In fact there seems to be a significant interest to enable useful interactions between physical devices - and these will need to be done at the local level, between the devices themselves - it can not be done in a centralized way on the server side.

    Thus: I believe that software agents will remain a niche product, at least as long as the business case is against them. I have strong hopes for embodied agents, both as an application case, as well as a testing ground for new technology (and why not, theories).

  9. Jose Vidal Says:

    Ok, I think we are in agreement that a little semantics goes a long way. For me, this statement is still a hypothesis (but one I favor). I do see a lot of semantic web companies starting up with promises of aggregating a large companies’ databases.

    Sometimes, this is as simple as matching one SQL table’s “userid” with another table’s “user-id”. I think some of them do bits of inferencing (logical and probabilistic) as in “Joe’s office is in building 7″ and “building 7 is in MA” then its likely that “joe lives in MA”. Still, I do agree that this is a first step. Hopefully, there will be a market for these systems. The first such systems will undoubtedly use very simple, special-case, hardwired rules. It is only the second generation of companies, if they ever appear, who will try to use more general inferencing methods.

    Also note that these companies do not use agents. They are solely concerned with providing a service: aggregating their customer’s databases. As always, we first solve the problem centrally and then we think about the distributed solution.

    Boloni:

    I think Lotzi’s view of the business case against agents has been true, but the situation is changing. Right know the most popular websites: amazon, google, flickr, facebook, etc., all offer REST backends and there is a wide proliferation of mashup websites that use those backends. In effect, people are acting as agents and aggregating content from various backends to serve a need.

    The question is: can we develop agents that build these mashups automatically? Yes, definitely, but it is NOT going to be easy. Mashing together say flickr and google maps still requires a lot of human-level intelligence.

  10. James Hendler Says:

    Jose - your response to Lotzi Boloni is exactly right - the so called Web 3.0 folks are starting to build large, annotated, machine readable and Web queriable back ends - I look forward to the day when these things can be taken better advantage of by computer agents!

  11. Frank Dignum Says:

    Jim,
    You are not the only one who is wondering where the agents have gone. Observing the fact that agent technology has not moved into main stream computing is not difficult. However, finding out the cause of this is more demanding.
    Let me start with some general remarks on AI research and computing. My impression is that many people doing AI research are looking for cutting edge technology. Developing technology that is intelligent, adaptive, learning, natural, etc. The main concern in this type of research is how close we can get to human performance rather than how close we can get to main stream computing. This connection of AI techniques with the rest of computing science is of little interest to people doing AI research. This is not to say that it is not important! However, one needs other researchers with interests in software engineering issues to bridge this gap.
    With agent technology a similar division of interests is visible. The people that are interested in the theoretical issues do not care about the efficiency of the systems and standardization of results. In the other hand, the people doing agent oriented software engineering care little about being faithful to BDI theory. They want to engineer products that are usable by non-agent people.
    Although the basic ideas about software agents are quite intuitive and appealing they are far from fully developed. Therefore the theory does not give software engineers enough ground to base their implementation decisions on. Lacking any back-up from theory these people made their own decisions based on pragmatic considerations. This led to many different agent programming platforms and languages. Because people put emphasis on different aspects of the agent systems the platforms and languages also differ in many aspects and are hard to use together. Let alone that a standard could be developed. Two efforts to alleviate this problem were coming from DARPA through the CoABS project and from FIPA through its standardization efforts of agent interfaces. Unfortunately the CoABS software never made its way outside the US. The fact that it is now commercialized does not make it easier to use it as standard infrastructure. The FIPA ACL has become a defacto standard for agent communication. However, the relation with other communication standards on web services coming up in the W3C consortium is unclear. Therefore it is difficult for industry to start using this standard as it does not link to existing software standards used in industry.
    So, what would help is a standard agent platform or language that can be used in conjunction with other existing software. This sounds quite simple. However, I bet most people would at this moment disagree about which components should be part of such a standard platform. Why is that? Mainly because agent theory did not solve a number of central issues and people are avoiding tackling them.
    Some of those problems are:
    - Balancing pro-active and reactive behavior in a principled way.
    - How can agents behave social? I.e. which social concepts should be included in the theory?
    - Where does intelligence go? Into the reasoning or into the interaction or in both? How is that determined, designed, implemented?
    - How can we combine learning and adaptivity with reasoning?

    But probably most important is that the agent community does not seem to have a way to discuss these questions and give some general direction to the research.

    The above does not mean that nothing good happens in agent research. There are efforts to integrate agents and web services. It would be good if the results of these efforts would be available for the whole community.
    Also in the area of using ontologies some progress is being made. Recent work is published on the negotiation of ontologies on a by-need basis. Relatively simple protocols are used to exchange concepts in such a way that all communication that is needed to perform some joint task is enabled.
    Research on game theoretic issues could be used to design the interaction patterns in multi-agent systems in a way that leads to optimal behavior.

    So, the message I have is mixed. Some good things are happening and should be made more clear to the outside world. However, a number of very important issues are left unsolved and no concerted effort seems to be underway to address them.
    Unless we face these issues we will loose momentum and people (read: industry) start loosing trust in agent technology.

  12. Where are all the agents (long form) » SHARING IDEA WEBLOG Says:

    […] Original post by Mindswap Weblog and software by Elliott Back   « Sewing the Seeds (of Innovation) | The Web OS vs. The Desktop OS »   […]

  13. Fatmah BaOthman Says:

    Thank you for your interaction with us and for including all members in this topic. Since I received your email, I have been collecting all related materials you have written in order to learn more about your interests. In your opinion, what is the best paper you have read-written in this regard?.

    In short, I think for the next coming years, the focus should be turned into collective intelligence to empower a single agent technology. I am personally interested in this type of systems, not necessarily limited to robotic.

    The growth of an emerging virtual society within elife is not a choice anymore; throughout the globe every wise person understands that virtual presence is as important as real life existence. There is no doubt that the world is going to witness the promised paradigm shift, if -we-researchers are given the necessary support and were able to collaborate in organized patterns. I believe we will be able to deliver at least 90% of what have been promised in the past decades.

    In case you have any requirements for future publication, please let me know.

Leave a Reply

MINDSWAP is a W3C member