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:
- diagnosing
- interpreting
- predicting
- instructing
EARLY MODELS
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.BUILDING A KNOWLEDGE BASE
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. APPLYING EXPERTISE: THE INFERENCE
ENGINE
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.