A Model-Based Approach to Investigate Performance Improvements in Rule-Based Expert Systems zyx D. Gulati zyxwvut School of Business, Rider College, Lawrenceville, NJ 08648 Mohan R. Tanniru School of Management, Syracuse University, Syracuse NY 13244 ABSTRACT One of the major issues in the development of large, rule-based expert systems is related to improving their performance efficiency. One way to address this issue is by reducing the number of unsuccessful tries a system goes through before executing a rule to establish a goal or an intermediary fact. On the average, the number of unsuccessful tries can be reduced if the rules that are tried first are those that are expected to execute most frequently, and this can be established by extracting information on the probability distributions of the input parameters. In this paper, a rule base is modeled as a network and simulated to investigate potential performance improve- ments by changing the order used to test zyxwvu the rules. The model of the rule base is also used to investigate performance gains achieved by parameter factorization and premise clause reordering. Subject Areas: Decision Support Systems, Expert Systems, Performance Evaluation, and Rule-based Systems. INTRODUCTION Developments in artificial intelligence (AI) have made it possible to design expert systems that can simulate human expertise in restricted domains. Such systems are capable of representing, storing, and processing knowledge about a sufficiently narrow domain (e.g., medical diagnosis) and generating solutions com- parable to those of an acknowledged expert in that field. They commonly use rules-of-thumb or heuristics to focus on the key aspects of a problem, and do symbolic manipulation of the stored knowledge to reach conclusions zy [15]. Rules, represented in the form of If zyxw ... Then and referred to as productions, are the most popular way of representing and manipulating knowledge in expert systems. Two factors distinguish rules from conditional statements in procedural languages. First, the conditional part of a rule is expressed as a complex pattern rather than a boolean expression. Second, the flow of control (as found in procedural languages) does not pass from one rule to the next in lexical sequence but is determined separately by the interpreter [27]. The advantages of representing knowledge as a set of rules can be attributed to the modularity, flexibility, adaptability, and under- standability of these systems [S]. However, a major unresolved issue for large rule-based expert systems has been the relative inefficiency of their implementation [19]. In fact, when there are a large number of rules in the working memory, such systems can spend more than ninety percent of their run-time in pattern matching (i.e., checking to see if the condition elements of the rules match the facts) zy [9]. As expert systems moved from research to the commercial arena, the size of knowledge bases, expressed in terms of the number of rules and the number of 42