High-speed implementations of rule-based systems
- 1 May 1989
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Computer Systems
- Vol. 7 (2) , 119-146
- https://doi.org/10.1145/63404.63405
Abstract
Rule-based systems are widely used in artificial intelligence for modeling intelligent behavior and building expert systems. Most rule-based programs, however, are extremely computation intensive and run quite slowly. The slow speed of execution has prohibited the use of rule-based systems in domains requiring high performance and real-time response. In this paper we explore various methods for speeding up the execution of rule-based systems. In particular, we examine the role of parallelism in the high-speed execution of rule-based systems and study the architectural issues in the design of computers for rule-based systems. Our results show that contrary to initial expectations, the speed-up that can be obtained from parallelism is quite limited, only about tenfold. The reasons for the small speed-up are: (1) the small number of rules relevant to each change to data memory; (2) the large variation in the processing requirements of relevant rules; and (3) the small number of changes made to data memory between synchronization steps. Furthermore, we observe that to obtain this limited factor of tenfold speed-up, it is necessary to exploit parallelism at a very fine granularity. We propose that a suitable architecture to exploit such fine-grain parallelism is a shared-memory multiprocessor with 32-64 processors. Using such a multiprocessor, it is possible to obtain execution speeds of about 3800 rule-firings/set. This speed is significantly higher than that obtained by other proposed parallel implementations of rule-based systems.Keywords
This publication has 9 references indexed in Scilit:
- Multicomputers: message-passing concurrent computersComputer, 1988
- Applications of the Connection MachineComputer, 1987
- Data parallel algorithmsCommunications of the ACM, 1986
- Dynamic decentralized cache schemes for mimd parallel processorsACM SIGARCH Computer Architecture News, 1984
- The 801 MinicomputerIBM Journal of Research and Development, 1983
- A parallel execution model of logic programsPublished by Association for Computing Machinery (ACM) ,1983
- The VLSI Design Automation Assistant: Prototype SystemPublished by Institute of Electrical and Electronics Engineers (IEEE) ,1983
- Rete: A fast algorithm for the many pattern/many object pattern match problemArtificial Intelligence, 1982
- R1: A rule-based configurer of computer systemsArtificial Intelligence, 1982