- A.I. has discovered many requirements and corresponding solution techniques that are shared by the different intelligent activities. This has led to the development of specialized tools, sometimes called A. I. Architectures, that provide a generic paradigm in which a large class of distinct intelligent applications can be implemented” lo. These architectures take the form of a software system that can be customized with knowledge about a domain in order to produce an intelligent problem solver in that domain. Most successful A. I. applications built to date have started from one of these generic A. I. architectures.
- A.I. architectures commonly have four principal components. A Knowledge Representation Language is provided that allows some of the types of knowledge described in the previous section to be formally specified. A Knowledge Compiler then transforms these knowledge specifications into an operational form, e.g., executable programs and data. Finally, A Knowledge Applier automatically organizes the operationalized chunks of knowledge produced by the compiler in response to each specific problem situation. The process of developing applications within the framework is supported by some specialized development tools that allow the application implementer to effectively observe and explore the functioning of his nascent system.
The task of building an A.I. application with one of these architectures is exactly that of identifying and representing the knowledge required to carry out the desired intelligent problem-solving within the paradigm provided by the architecture. This task is sometimes called Knowledge Engineering. Much of an applied A. I. is concerned with effective techniques for engineering knowledge in this sense in some particular A. I. architecture.
The State of the Field
The state of the practical application side of A. I. is commonly overestimated. This situation is probably caused by two primary factors: overextrapolation from some limited A. I. successes, and the occurrence of very ambitious terminology at the heart of A.I. jargon (e.g., “knowledge”, “problem-solving”, “learning”, etc.). To summarize the state of the field in this environment of excessive expectations, we begin by making some statement about what the field cannot yet do.
In general, successful A. I. applications today are extremely limited both in the scope of the domain in which they operate and in the depth of problem-solving of which they are capable. For example, almost all successful applications exhaustively explore their search space; i.e., they start with some knowledge expressed in the form of “if-then” rules and then they derive all possible consequences of these rules and select a solution. This technique, as described above, is severely limited in the range of applications for which it is feasible.
For some specific examples of A. I. goals that are not yet attained:
- No A.I. system can analyze general visual sense taken from everyday life and successfully identify even the most important objects within those scenes.
- No A. I. system can successfully understand connected text, even in small subject domains. Systems have been developed that understand specific passages, but no systems understand even a small subset of the cases that might be expected to occur in an actual application.
- No A. I. system can carry on an intelligent conversation even in a restricted domain of discourse.
- No A.I. systems can robustly solve any class of problems that require intelligent exploration of a search space in a knowledge rich domain. (There are systems (e.g., Chess players) that do a reasonable job of searching an extremely limited domain, and there are systems (e.g., data-base interfaces) that cope with extensive knowledge but that do very little problem-solving search.)
Turning away from lofty goals not yet attained, there are some significant things that be done today:
- It is possible to build systems that successfully analyze visual scenes in highly constrained domains (e.g., the so called “blocks world” in which all the objects are simple geometric solids constructed from planes).
- It is possible to process single-sentence natural language data-base requests robustly.
- It is possible to solve some important knowledge-rich applications by exhaustive exploration of a search space (e.g., specialized areas of medical diagnosis or computer system configuration).
- It is possible to intelligently explore a search space in a knowledge-limited environment (e.g., Chess playing).
To concretize the statements about A. I. applications that are achievable now, and to justify some of the excitement that A. I. is receiving today, we conclude this discussion with a listing of some of the more successful A.I. applications:
- R1 was originally developed at Carnegie-Mellon University as an A.I. application that configures Digital’s VAl (computers based on the requirements of individual al VAX purchasers. R1 was later taken over by Digital, extended, and renamed XCON. This system configures VAX’s substantially better than the human’s that originally did the task manually.
- Prospector was developed at the Stanford Research Institute. It analyzes geological data to identify likely sources of natural resources. Its most highly acclaimed success is the identification of a large molybdenum deposit in the U.S. Northwest that had been missed by human geologists.
- PUFF is an A.I. application developed in the Heuristic Programming Project at Stanford University that does diagnosis of Pulmonary disorders. This system has been shown to attain the level of expertise of specialists in its (limited) domain. It is in actual use as an automated consultant at a major hospital in San Francisco.
- STP is an interactive A.I. application that was developed originally at the California Institute of Technology. (S t P is now undergoing further refinement and extension at Inference Corporation.) S t P allows professional applied mathematicians and engineers to represent and solve symbolic mathematical problems on a computer. SXP carries out many of the lower level operations automatically and is capable of automatically solving many important classes of problems. This system has been sold commercially and is used today to significantly enhance the productivity of professionals in this domain.
- Eurisko is a research system developed at Stanford University and the Xerox Palo Alto Research Center in the area of automated discovery. Among its impressive accomplishments is the discovery of a new fundamental circuit for 3-dimensional VLSI design