[Home] [People] [Projects] [Papers] [Classes]

Image map - text links at bottom

Software Agents

These pages contain information about the research activities underway at the College of Computing, at the Georgia Institute of Technology. The group draws upon resources and individuals from a variety of existing research areas here.

What are Software Agents?

Over the last few years, we have seen significant increases in hardware performance. Software publishers, to make use of this additional computing capacity, have considerably improved the scope of tasks any given program can handle. The once simplistic text based word processor has given way to graphical word processing programs that try to cater to every need an author may have. This naturally has meant an increase in the complexity of software. For the occasional user this has made the task of writing a simple letter quite overwhelming.

Along with the complexity of software has grown the quantity and complexity of the electronic data we come across every day. In the course of modifying a set of graphics files, one would today have to gather the relevant files, write a script, execute it, and inspect the results. This task may be nearly mechanical, in that the user may have to do this several times a week. The task also is centered around an intuitively obvious theme.

Traditional interfaces simply cannot deal with the needs of individuals, both in aiding them to use a program, or to gather and organize data. The cryptic command lines have simply given way to a jungle of menus, icons and interaction methods. Ultimately, the latter is no more flexible than the former when the issue is adapting to the user and the task. This is where software agents have been proposed as an alternate interface.

The premise is that one or more software agents would reside in the user's electronic environment. They would be intimately familiar with the details of the software, the data and the relationship between the two. They would also know something of the goals the user might have when she uses the software, or manipulates the data. A user interacting with the computer would then interact with these agents, which would in turn interact with the underlying software and data. In this idealized situation, the user would thus be fully insulated from the internal mechanisms of the electronic environment. She would work on the data through these agents, which over time would act much like a human assistant, adapting to the needs of the user and taking over more and more of the mundane jobs.

Software agents have been presented in a number of ways, the most common being the dream of the personal butler, a highly personalized assistant, waiting to be called upon. Some commercial software packages include agents that offer guidance to users. Agents as tutors and trainers are not that far removed from these help agents. They have also been described as entities that would act on behalf of the user in routine situations, thus reducing the burden on the user. All of these roles offer a valid descriptions of agents, some of which are compatible with each other, while others are at conflict. A number of efforts are already underway here and elsewhere that are working on these varied aspects. However, there is often little synergy between individual research efforts. At The Agency, we have researchers with a variety of backgrounds involved, looking at the different aspects of software agents. We expect this approach to help us understand better the notion of an agent, in particular that of a software agent.

Opportunities and Challenges

The Agency is composed of researchers from a variety of fields. This gives us an excellent opportunity to work across disciplines. It also raises the issue of what these disciplines have in common and what they have to offer to one another. As presented above, constructing a software agent requires knowledge of at least two disciplies: machine learning and human computer interaction. These communities differ significantly in the issues they address, and the methodology they employ.

At the College of Computing we have the requisite expertise in these different disciplines to make a significant impact. As a group in its infancy in a field that has not yet been defined, we are still trying to find our footing. We have not yet defined the framework within which our research must proceed. This in itself is a significant challenge, and shall require significant time and effort to overcome.

Related Areas

Image map - text links at bottom
[ Home ] [ People ] [ Projects ] [ Papers ] [ Classes ]


Sunil Mishra (smishra@cc.gatech.edu)

Last modified: Thu Oct 1 13:45:50 EDT 1998