The production system is one in which mutually independent rules communicate with each other through a common database aiming at the solution of a problem. Because of its nature, the production system seems to contain a larger potential parallelism than the procedural program. At present, however, only one rule succeeded in condition matching, is selected and executed, which prevents the full utilization of the parallelism. The aim of this paper is to realize a high‐speed execution of the production system by executing the rules in parallel as far as possible. First, a new execution model is proposed for the production system, where the rules succeeded in condition match are executed in parallel as far as possible. Then the data dependency graph for the production system is introduced, and a method is presented by which more than one rule is analyzed to determine whether or not they can be executed in parallel. A method is presented which applies the result of parallel executability analysis to the parallel execution of the rules on a parallel computer, or the execution scheduling of the rules on a sequential computer. A production system PLANET was constructed which can analyze a program by a parallel execution simulation, and the proposed method was evaluated. It was verified that four to eight rules can be executed in parallel in the range of programs used in the evaluation. By combining the result of this paper with the traditional parallel condition matching, it is expected that a further parallelism can be realized.
ASJC Scopus subject areas
- Theoretical Computer Science
- Information Systems
- Hardware and Architecture
- Computational Theory and Mathematics