Expert systems are computer applications that combine computer equipment, software, and specialized information to imitate expert human reasoning and advice. As a branch of artificial intelligence, expert systems provide discipline-specific advice and explanation to their users. While artificial intelligence is a broad field covering many aspects of computer-generated thought, expert systems are more narrowly focused. Typically, expert systems function best with specific activities or problems and a discrete database of digitized facts, rules, cases, and models. Expert systems are used widely in commercial and industrial settings, including medicine, finance, manufacturing, and sales.
As a software program, the expert system integrates a searching and sorting program with a knowledge database. The specific searching and sorting program for an expert system is known as the inference engine. The inference engine contains all the systematic processing rules and logic associated with the problem or task at hand. Mathematical probabilities often serve as the basis for many expert systems. The second component—the knowledge database—stores necessary factual, procedural, and experiential information representing expert knowledge. Through a procedure known as knowledge transfer, expertise (or those skills and knowledge that sustain a much better than average performance) passes from human expert to knowledge engineer. The knowledge engineer actually creates and structures the knowledge database by completing certain logical, physical, and psychosocial tasks. For this reason, expert systems are often referred to as knowledge-based information systems. By widely distributing human expertise through expert systems, businesses can realize benefits in consistency, accuracy, and reliability in problem-solving activities.
Businesses may or may not differentiate between a decision support system (DSS) and an expert system. Some consider each one, alternately, to be a subcategory of the other. Whether or not they are one in the same, closely related, or completely independent is frequently debated in trade and professional literature. Like expert systems, the DSS relies on computer hardware, software, and information to function effectively. The debatable distinction, however, between an expert system and a DSS seems to lie in their practical applications. Decision support systems are used most often in specific decision-making activities, while expert systems operate in the area of problem-solving activities. But this distinction may be blurry in practice, and therefore investigation of an expert system often implies research on DSS as well.
Four interactive roles form the activities of the expert system:
The systems accomplish each of these by applying rules and logic specified by the human expert during system creation or maintenance or determined by the system itself based on analysis of historical precedents. Instruction, in particular, emerges as a result of the expert system's justification system. Synthesizing feedback with various combinations of diagnostic, interpretative and predictive curriculum, the expert system can become a finely tuned personal tutor or a fully developed and standardized group class. Computer-aided instruction (CAI) thrives as a field of inquiry and development for businesses.
Early expert systems appeared in the mid-1960s as an offshoot of research in artificial intelligence. Many early systems (GPPS and DENDRAL at Stanford University, XCON at Digital Equipment Corp., and CATS-1 at General Electric) pioneered the concept of a computer expert. But one, MYCIN, most clearly introduced two essential characteristics of an expert system: modularity and justification. MYCIN was developed at Stanford University as an expert system to aid in the diagnosis of bacterial meningitis. As it was developed, MYCIN emerged as a product of modular design with a facility to explain its own advice. Modular design refers to the concept and practice of developing software as stand-alone sets of programming code and informational materials. Each set connects as a module or self-contained capsule to other modules. This idea of modular design led to the further advance of expert shells. An expert shell program simplifies the development of an expert system by providing preexisting inference engines and module knowledge database components. The frontward and backward chaining effects of MYCIN (its ability to recount the steps it took to arrive at any recommendation) still influence the design of expert systems. As a result, the ability to explain or justify is a standard facility of commercially produced expert systems and programs. Perhaps the most important discovery for MYCIN and other early expert systems was the importance of the human expert in the expert system.
The basic role of an expert system is to replicate a human expert and replace him or her in a problem-solving activity. In order for this to happen, key information must be transferred from a human expert into the knowledge database and, when appropriate, the inference engine. Two different types of knowledge emerge from the human expert: facts and procedural or heuristic information. Facts encompass the definitively known data and the defined variables that comprise any given activity. Procedures capture the if-then logic the expert would use in any given activity. Through a formal knowledge acquisition process that includes identification, conceptualization, formalization, implementation, and testing, expert databases are developed. Interviews, transactional tracking, observation, case study, and self-reporting choices are common means of extracting information from a human expert. Using programmatic and physical integration of logic, data, and choice, expert systems integrate the examination and interpretation of data input with specific rules of behavior and facts to arrive at a recommended outcome.
When an expert system must choose which piece of information is an appropriate answer to the specific problem at hand, uncertainty is intrinsic; thus, uncertainty is an underlying consideration in the overall conceptualization, development, and use of an expert system. One popular treatment of uncertainty uses fuzzy logic. Fuzzy logic divides the simple yes-no decision into a scale of probability. This extension of probability criteria allows the expert system to accommodate highly complex problems and activities in an attempt to more closely model human expert assistance and interaction. Probabilities of uncertainty vary from system to system based on the kind of information being stored and its intended uses.
In its diagnostic role, an expert system offers to solve a problem by analyzing yes or no with the likelihood of correctly identifying a cause of a problem or disturbance. By inferring difficulties from past observations, the expert system identifies possible problems while offering possible advice and/or solutions. Diagnostic systems typically infer causes of problems. Applications include medicine, manufacturing, service, and a multitude of narrowly focused problem areas. As an aid to human problem solving, the diagnostic system or program assists by relying on past evidence and problems. By inferring descriptions from observations rather than problems, the expert system takes an interpretive rather than diagnostic role. Interpretive systems explain observations by inferring their meaning based on previous descriptions of situations. The probability of uncertainty is quantified as the likelihood of being an accurate representation. In a predictive role, the expert system forecasts future events and activities based on past information. Probabilities of uncertainty are emphasized as chances or the likelihood of being right. Finally, in an instructive role, the expert system teaches and evaluates the successful transfer of education information back to the user. By explanation of its decision-making process, supplemental materials, and systematic testing, the instructive system accounts for uncertainty by measuring the likelihood that knowledge transfer was achieved. Regardless of the role of an expert system or how it deals with uncertainty, its anatomy is still similar. The inference engine forms the heart of the expert system. The knowledge base serves as the brain of the expert system.
The inference engine chums through countless potential paths and possibilities based on some combination of rules, cases, models, or theories. Some rules, such as predicate logic, mimic human reasoning and offer various mathematical arguments to any query. A decision tree or branching steps and actions synthesize probability with rules and information to arrive at a recommendation. Probabilities mirror the human expert's own experience with an activity or problem. Other models or cases structure some systematic movement through a problem-solving exercise in different ways. Case-based reasoning uses specific incidents or models of behavior to simulate human reasoning. Other inference engines are based on semantic networks (associated nodes and links of association), scripts (preprogrammed activities and responses), objects (self-contained variables and rule sets), and frames (more-specialized objects allowing inheritance). In all cases, the inference engine guides the processing steps and expert information together in a systematic way.
The knowledge database provides the fuel for the inference engine. The knowledge database is composed of facts, records, rules, books, and countless other resources and materials. These materials are the absolute values and documented evidence associated with the database structure. If-then procedures and pertinent rules are an important part of the knowledge database. Imitating human reasoning, rules or heuristics use logic to record expert processing steps and requirements. Logic, facts, and past experience are woven together to make an expert database. As a result of knowledge transfer, significant experiences, skills, and facts fuse together in a representation of expertise. This expert database, or knowledge-based information system, is the foil for the inference engine. As such, the knowledge database must be accurately and reliably conceived, planned, and realized for optimum performance. Additionally, the knowledge database must be validated and confirmed as accurate and reliable. Expert databases containing inaccurate information or procedural steps that result in bad advice are ineffective and potentially destructive to the operation of a business. When, however, the inference engine and knowledge database synchronize correctly, businesses may realize gains in productivity and decreases in costs.
Expert systems capture scarce expert knowledge and render it archival. This is an advantage when losing the expert would be a significant loss to the organization. Distributing the expert knowledge enhances employee productivity by offering necessary assistance to make the best decision. Improvements in reliability and quality frequently appear when expert systems distribute expert advice, opinion, and explanation on demand. Expert systems are capable of handling enormously complex tasks and activities as well as an extremely rich knowledge-database structure and content. As such, they are well suited to model human activities and problems. Expert systems can reduce production downtime and, as a result, increase output and quality. Additionally, expert systems facilitate the transfer of expertise to remote locations using digital communications. In specific situations, ongoing use of an expert system may be cheaper and more consistent than the services of a human expert.
Some benefits of an expert system are direct. Loma Engineering reduced its staff requirements from five engineers to a 1.5 equivalent by using an expert system to customize machine specifications. Other benefits are less direct and may include improved managerial functions. The Federal Aviation Administration uses the Smartflow Traffic Management System to better coordinate air traffic activities. The American Stock Exchange also put expert systems to use in monitoring insider trading. Hospitals use expert systems to interpret patient data through a large database of drug knowledge in order to identify harmful drug interactions and other problems. Thanks to one New England hospital system, doctors don't even have to be at the computer to get the results: if the system discovers a problem as new data is analyzed, it can automatically send a message to the doctor's pager. In manufacturing, expert systems are common and successful as well. Expert systems can track production variables, tabulate statistics, and identify processes that don't match the expected patterns, signaling potential problems. Moreover, integrated expert systems can immediately notify the appropriate person to correct a problem in the manufacturing process.
The costs of expert systems vary considerably and often include post-development costs such as training and maintenance. Prices for the software development itself range from the low thousands of dollars for a very simple system to millions for a major undertaking. For large companies and complex activities, sufficiently powerful computer hardware must be available, and frequently programming must be done to integrate the new expert system with existing information systems and process controls. Additionally, depending on the application, the knowledge database must be updated frequently to maintain relevance and timeliness. Increased costs may also appear with the identification and employment of a human expert or a series of experts. Retaining an expert involves the potentially expensive task of transferring expertise to a digital format. Depending on the expert's ability to conceive and digitally represent knowledge, this process may be lengthy. Even after such efforts some expert systems fail to recover their costs because of poor design or inadequate knowledge modeling. Expert systems suffer, as well, from the systematic integration of preexisting human biases and ignorance into their original programming.
Using an expert shell—a kind of off-the-shelf computer program for building an expert application—is one way to reduce the costs of obtaining an expert system. The expert shell simplifies the expert system by providing preprogrammed modules and a ready-to-use inference engine structure. A number of companies provide expert shells that support business and industrial operations, including those conducted in Internet environments.
Davenport, Thomas H., and Lawrence Prusak. Working Knowledge: How Organizations Manage What They Know. Boston: Harvard Business School Press, 1997.
Liebowitz, Jay, ed. The Handbook of Applied Expert Systems. Boca Raton, FL: CRC Press LLC, 1998.
Menduno, Michael. "Software That Plays Hardball." Hospitals & Health Networks, 20 May 1998.
Turban, Efraim, and Jay E. Aronson. Decision Support Systems and Intelligent Systems. Upper Saddle River, NJ: Prentice Hall, 1998.
Winkler, Connie. "Redrawing Design Process Cuts Repetition at Loma." Software Management, April 1994, 101-103.