Intelligent agents will be a vehicle for other AI-related technologies

Steve Schoepke     steven_h_schoepke@fanniemae.com
The greatest potential repercussion that could result from the emergence of intelligent agents in mainstream computing will be the furnishing of a vehicle for other AI-related technologies to also emerge as viable application components. The deployment of technologies in the areas of pattern recognition, neural nets, planning algorithms, cognition, learning and adaptation may usher in an era of "intelligent objects" (i.e., non-autonomous agents) being embedded within production-level applications. This possibility spawns new potential for changes in the way that applications and their domains will be viewed, developed, and deployed.

Current Technology: Static and Stalled

Even though there exists an ever-expanding myriad of products in computing, the current offerings appear to be the rehashing of, and increasingly complex variations of, currently available concepts and technologies: OOA/OOD/OOP, internet and cyberspace, distributed processing, network computing, parallel processing, etc. The improved features and performance of these new products may enhance the current use of the above technologies, but none really represent revolutionary principles. This trend may continue its course for some time, until the laws of diminishing returns places selective pressure on the field to pursue a change in paradigms and associated product offerings.

Current Development Paradigms: Static and Stalled

In the same manner, current development paradigms have followed the same path as above, and are also subject to the same limitations. Whether strictly structured or object-oriented, there exists hard-coded paths of execution and transition states, high maintenance costs, slow turnaround time of new versions, static behavior based on concrete and anticipated environmental conditions, rigid and often catastrophic response to unanticipated conditions, the constant requirement of manual intervention, etc. The presence of procedural and if-then-else logic has traditionally provided a catalyst for the advancement of computing, but eventually may present itself as an obstacle to progress. Again, limitations and diminishing returns of the paradigms may usher in something revolutionary.

Inevitability of Intelligent and Flexible Applications

From a metaphorical viewpoint, it's obvious that the evolution of organic life has progressed from the static and reactive (single-celled organisms) to the deliberate (complex organisms and their use of tools, ability to be creative and to solve problems, etc.). It also seems obvious that there is no reason why the evolution of silicon-based "life" (i.e., a loose definition for software applications) shouldn't follow the same path. We are merely in an early phase of this process. Accordingly, there will be a need to build flexibility of execution and self-adjustment into an application that can accommodate unforeseen environmental variables. The presence of: increases in complexity and steepening of learning curves associated with applications, shortages of talented personnel, increasing demands made upon application software, increasing expense in time and labor required to maintain future applications, etc. may all act as catalysts for intelligent objects to be embedded within applications.

Future Selection Pressures for New Paradigms

As the state of diminishing returns becomes obvious, the pressure for the deployment of embedded intelligent objects will have to accommodate the transition from static to adaptive execution of an application. The notion of hard-coded and anticipated functioning may have to be replaced by notions of a "path of evolution" of behavior. This would involve the use of a "looser" specification description that could accommodate the flexibility of adaptation and planning: describing tendencies and future directions of behavior as opposed to strict paths of execution. Specifications such as "Processes backlog of 30/60/90 past due accounts using credit history data, generates and assigns finance charges" could be replaced by "Manages the resolution of past due accounts drawing from perceived contributing factors and choosing the optimal resolution based on iterative experience." The language used should probably be limiting only in the sense that the tendency or path of evolution can be identified, but the actual behavior cannot. There will have to be milestone "checkpoints" and behavioral constraints applied at various point in the application's lifetime, merely to ensure the prevention of dangerous or counter-productive behaviors. Eventually, much of the application's behavior would be self-selecting. Controls can be embedded that delete undesired behaviors. Along with design, analysis, and behavior patterns, the notion of "patterns of evolution" in software applications should be explored.

In the same vein, as the intelligent object evolves in its behavior, its relationship with other entities in the application may change, as well as its overall functional role. As a result, a traditionally design tool may be forced to mutate according to this path of evolution. This may require the periodic addressing of both the initial and the ongoing positioning of the intelligent object in the application's design framework. If such objects do eventually emerge, the E-R diagrams, functional specifications, state transition diagrams, event traces, object models, etc. will have to be viewed in a different light and altered in an ongoing manner in order to accommodate these evolving objects. The notion of spontaneous or unanticipated change in a current, statically designed application brings forth notions of system crashes and resume updating. However, in the future, this may be the norm rather than the exception.

There may exist a parallel change that's required in the mind-set of the developer and user population. Both groups will have to "step back" and not only understand the concept of an intelligent object, but also the implications for the future. Incorporation of BDI, behavior patterns, and other AI-related capabilities offered by intelligent agents and objects may have to be rephrased in more mainstream-like terminology: Metaphorical comparisons can be drawn between beliefs and object states, intentions and execution paths, etc. Those areas that cannot be framed in such a manner should be described using as many familiar terms as is possible. This will enhance the possibilities of acceptance and understanding from an audience that may not be familiar with AI concepts.

Conclusion

The evolution of organic life itself should be a baseline of how AI-related technologies should be viewed, integrated into mainstream applications, accounted for and described in design and analysis documents, and maintained in a production environment. In other words, how we as humans (with capabilities of learning and adaptation) would be designed using current and future techniques and tools.



Position Paper. International Workshop on Agent-Oriented Information Systems (AOIS'99). See  http://www.AOIS.org