Brain Waves "Viewpoint" November 1986 AI EXPERT by Alex Jacobson, President, Inference Corporation Expert systems technology enables computer to use human expertise, judgments and knowledge to solve business problems in an emulation of the way human experts do. There is considerable evidence to suggest that this technology, when applied to a well- focused, sufficiently well-defined domain of interest (e.g., authorization of a specific type of credit card, diagnosing of faults in a specific piece of equipment, scheduling of a specific fleets of vehicles in a specific geographic area or configuring of a specific set of machines on a specific factory floor) can provide human workers who operate in the targeted domain with computer support at levels of performance equal to or better than the best human experts in the domain. The benefit of this capability is to enable computers to formulate decisions, to draw conclusions and to propose actions in response to the wide variety of unstructured or poorly structured problems with which only humans could contend heretofore. As a result, this technology makes it possible for computers to do the same sorts of tasks that professionals and white collar workers presently do in the work force --a necessary accomplishment if these workers are to receive automation. The significance of these capabilities is more far reaching than the technical content, per se, implies. The reason is that expert systems technology has matured at a time when the computer industry as a whole is moving through a major transition. The computer industry has, over the past 30 years, fulfilled much of its promise in automating clerical level functions (typing drafting, bookkeeping, inventory management, listings, records keeping etc.). Business and industry is now focusing attention on strategic uses of computers in mission-critical applications. These applications, a prime example of which is the American Airlines Saber System, can provide a major competitive edge to companies able to conceive and to implement them. White collar workers implement business strategies, hence it is this segment of the work force that will be targeted for computer automation as strategic uses of computers are undertaken in business. Expert systems technology is a critical component for delivering this automation to the professional, technical and administrative workers who implement mission-critical applications in business and industry. This propitious timing between a new capability (i.e., expert systems) and a new requirement (i.e., mission- critical applications of computers) explains the unusual sense of importance that is attributed to expert systems technology throughout the world. Expert systems technology is primarily targeted for use in applications software and in software tools that support the development and operation of applications and systems software. The fundamental difference between an expert system and a traditional application program is that such an expert system is rich in knowledge about the solution of problems in the application domain in which the expert system operates; whereas traditional applications are rich in the procedural knowledge that instruct the computer how to process data to solve the problems in the domain in question. It is this richness in knowledge that makes expert systems an enabling technology for the use of computers in mission-critical applications. Nevertheless, expert systems contain procedural knowledge with which to instruct the computer and traditional applications contain knowledge about the problem solving. It is the higher density and the greater extent of knowledge about problem solving that distinguishes expert systems from traditional applications programs, and provides them with their unusual functional power. This fundamental difference leads to all of the basic differences in the underlying tools, technology and programming methodologies (i.e., knowledge engineering) that set the practice of expert systems apart from that of conventional software engineering. In order to elicit deep and extensive knowledge about problem solving in any but most straightforward industrial task areas, it is necessary for the software engineer to develop the expert system by means of an iterative or evolutionary development process. The reason is that humans cannot divulge the deep and subtle levels of knowledge about their problem solving expertise that industrial class expert systems require, and are able to use effectively in a straightforward debriefing process. Rather, it is necessary that the software engineering methodology be capable of supporting a development regimen that permits knowledge obtained by debriefing to be built into an operating partial application so that areas of mission knowledge (i.e., knowledge not accessible by straightforward interview) can be identified and then added to the partial application to create a more complete, yet, perhaps still partial application, which can then be used to find still less accessible areas of germane knowledge which in turn can be added to the system, and so on. This method of evolving the expert system into existence is called "bottom- up-discovery", and is the distinguishing feature of knowledge engineering. Expert systems tools contain the AI technology required to support the process of knowledge engineering for building expert systems. They contain the structures required to store a variety of different types of knowledge paradigms, an inferencing engine that permits this knowledge to be used as the system evolves even though the knowledge is added to the system incrementally, systems software that allows the knowledge engineering to browse, modify, add, delete, understand or otherwise manipulate the knowledge in the evolving knowledge base, and tools to assist the knowledge engineer to build the expert system including the user interface of the resulting expert systems. These tools serve the purpose of accelerating the pace with which this new technology can be effectively applied. Expert systems technology is basically a software technology. While it has almost exclusively been developed in Lisp, and, in recent years, Lisp machines, like all other software technologies it is intrinsically portable to other languages and to other classes of computers. This is of vital importance. To realize their full potential, expert systems must fulfill their role in mission-critical applications. This requires that expert systems operate effectively and efficiently in conjunction with existing computer environments. Hardly any of these existing environments support Lisp or incorporate Lisp machines. Since expert systems technology is portable, it is clear that it must be ported to mainstream computers and connected to mainstream software at the levels of traditional languages, systems software and applications programs. This requirement cannot be evaded -- nor need it be. Finally, there is the question of culture. Expert systems are computer applications that arise from a technology culture that is substantively different from the culture that has created traditional computer applications. Cross culture communication is always difficult. It will be no different in this instance. It promises to be one of the more formidable obstacles to commercialization of expert systems. Not only does the applications programming community face the challenge of assimilating this new technology, but business operations management as well as end-users also must become both familiar and comfortable with expert systems and their implications as these systems move into the front office. Management faces the challenge of managing business practices in which the underlying logic of the practice has been made explicit for the first time and for which accountability of performance is documented with the scrupulousness of which only computers are capable. End-users who have never before used computers must become comfortable with these new mechanical assistants -- no simple task given the anxiety often incurred by computers in people who have no predilection for machines. Although these obstacles are formidable, they can and will be transcended. The benefits of industrial scale expert systems to the businesses that employ them promise to be too great for these transitional burdens to be anything but passing challenges. DP/MIS workers, end-user computing programmers, applications software vendors, all will benefit from their efforts to adopt this new technology. Therefore, expert systems software will inevitably lose its singular name and become "just another" commercial software technology as the computer industry continues to support the growth of business throughout the world. commercial software technology as the computer industry continues to support the growth of business