Expert systems are artificial intelligence (AI) tools that capture the expertise of knowledge workers and provide advice to (usually) non-experts in a given domain. Thus, expert systems constitute a subset of the class of AI systems primarily concerned with transferring knowledge from experts to novices.
Knowledge representation systems, also called expert systems, are computerized models that capture the knowledge of one or more human experts and store it in the framework that is most appropriately suited to the reasoning processes that the experts use in their problem-solving behavior. Such systems are created by a specialized systems analyst called a knowledge engineer, whose task is to interview the expert and/or observe his problem-solving behavior, then determine the most appropriate form(s) of knowledge representation to model the expert's problem-solving techniques. This process, called knowledge acquisition, is perhaps the most difficult and time-consuming aspect of expert systems development. It requires both technical and people skills on the part of the knowledge engineer, who must establish rapport with the domain expert, maintain a productive relationship during the interviewing process, and recognize the required mapping from the expert's explanations to the appropriate knowledge representation. The knowledge engineer then encodes the expert's knowledge into a knowledge base, which is a repository of the expert's knowledge in a particular representational structure. Some of the most common knowledge representations are described below.
In addition to the knowledge base, an expert system includes an automated reasoning mechanism called an inference engine that performs calculations and/or logical processes to produce the results of a particular problem-solving session. The explanation facility of an expert system provides the user with an explanation of the reasoning process that was used to achieve the conclusion or recommendation. Each knowledge representation has a corresponding inference technique. Three very common knowledge representations are rule-based systems, frame-based systems, and case-based systems.
The types of problems that AI systems try to solve are often fraught with uncertainties. Sometimes experts are uncertain about the conclusions they may draw based on the facts that are presented to them. In addition, the facts themselves may not be clear-cut; they may be in error, incomplete, or ambiguous. Thus, AI systems must have the ability to reason and draw some inference even in the face of such uncertainties. AI systems do this in many ways. Two common approaches are described below.
This approach to uncertainty combines probability with logic. It enhances rule-based systems with probability-like numbers that represent the confidence in either a fact
If the engine will not start but it will turn over, then the injection system is bad.
In some cases the facts are uncertain. Suppose the user is uncertain whether the engine starts or whether it turns over. If the user is 70 percent sure that the engine does not start and 80 percent sure that the engine turns over, then the conclusion of a bad injection system will be uncertain as well. A typical inference with this uncertainty is to multiply the two probabilities. In this case, 70 percent times 80 percent results in 56 percent confidence that the injection system is bad.
Furthermore, the rule itself may be uncertain. An expert may be only 60 percent sure that an unstartable engine that turns over implies a bad injection system. In this case, even if the user were 100 percent sure that the engine does not start but does turn over, the confidence in the conclusion of a bad injection system would be only 60 percent.
The inference process propagates the uncertainties through to the conclusions, so that the expert system tells the user not only what its recommendation is, but also the level of confidence in the recommendation.
An example of an expert system using rules can be found in the Department of Veterans Affairs within their OneVA initiative, which seeks to improve service by implementing improved information technology. A component of this initiative is the creation of an "expert system for the determination of potential benefits." This expert system utilizes a rule-based approach that analyzes customer data to determine proper eligibility levels.
Consider the question "Is this item expensive?" Here, "expensive" implies that the item costs a good deal of money. But how does one determine if an item is expensive? What is expensive to one person may be quite inexpensive to another. This is a case of linguistic ambiguity, where one word may have different meanings depending on context.
Fuzzy logic deals with linguistic ambiguity by mapping precise values (e.g., price, temperature, age in years) onto imprecise concepts (e.g., expensive, cold, young) via a membership function. The imprecise concept is called a fuzzy set, and the membership function measures the degree to which a precise value belongs in the fuzzy set.
Consider Figure 1, which shows three fuzzy sets related to the price of a product: inexpensive, moderate, and expensive. The membership functions are the solid and dashed lines in the graph. The X-axis shows the crisp value (actual price) and the Y-axis shows the degree of membership of a particular crisp value in each of the fuzzy sets. The price of $10 has 100 percent membership in the inexpensive set and 0 percent membership in each of the others. By contrast, the $100 price has 100 percent membership in the expensive set and 0 percent in the others. The $50 price has some degree of membership in all of the sets; it has 100 percent membership in the moderate set, but also some small degree of membership in both the others.
Consider this rule:
If the price is expensive then do not buy the product.
Such a rule will not fire at all if the price is $10. It will fire with 100 percent strength if the price is $100. It will fire with a much lower strength if the price is $50. This is the main idea behind fuzzy logic systems.
Fuzzy logic systems are used in many applications. They are commonly embedded in control systems, such as regulating automatic braking systems in cars and autofocusing in cameras.
Expert systems are applied in banking and finance, forecasting, security, manufacturing, marketing, and many other business areas and industries. Specifically, areas such as loan applications, fraud detection, inventory management, enterprise resource planning, and supply chain management find useful applications of expert systems. Significant growth is expected for the foreseeable future. According to Metaxiotis and Psarras in Industrial Management & Data Systems, France, Germany, Italy, and the United Kingdom are countries in which a high rate of growth is expected in the development of expert systems.
SEE ALSO: Artificial Intelligence
Revised by Hal P. Kirkwood , Jr.
Bertino, E., G.P. Zarri, and B. Catania. Intelligent Database Systems. Boston: Addison-Wesley, 2001.
Jackson, P. Introduction to Expert Systems. Boston: Addison-Wesley, 1998.
Leondis, C.T. Expert Systems: The Technology of Knowledge Management for the 21 Century. vols. 1–6. Amsterdam: Elsevier Academic Press, 2001.
Metaxiotis, K., and J. Psarras. "Expert Systems in Business: Applications and Future Directions for the Operations Researcher." Industrial Management & Data Systems 103, no. 5/6 (2003): 361–68.