A model based approach to investigate performance improvement in production systems

Devendra Gulati · 1992

Developments in Artificial Intelligence 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, such as medical diagnosis, and generating solutions comparable to those of an acknowledged expert in the field. Production/rule-based architectures are the most popular medium for representing and manipulating knowledge in expert systems. A major unresolved issue for large rule-based expert systems is their relative inefficiency of implementation. Forward-chaining production systems although used extensively in artificial intelligence are quite slow compared to conventional programming languages. Furthermore, such systems lack an explicit control structure. A pure production system is solely event driven, i.e. rule firing can only be achieved based on the state of the working memory. No explicit control on the invocation of rules means that the desired goal state may be reached via a tortuous path through the search space, resulting in very low system efficiency. The current research explores a model-based simulation approach to infer control knowledge, and how this knowledge can be used to explicitly structure the invocation of productions so as to improve their efficiency. Modeling a rule base as a network and simulating the firing of rules over many trials provides information on which paths in the network get invoked more frequently, and this knowledge is then used to structure the order in which rules are evaluated so as to make the pattern-matching process more efficient. The simulation model is also used to investigate performance gains achieved by dynamic rule ordering, parameter factorization, and reordering of premise clauses in a rule. The modeling and simulation approach is not a substitute for better knowledge representation techniques or superior indexing algorithms for improving performance. However, it can be most effective when the knowledge base is relatively stable and the system developer can only control the priority of rule evaluation.

Read the paper · More papers on PaperTik