A Study of Rule Engine Component Based on Dynamic Programming
Naijing Hu · Journal of Chinese Computer Systems · 2006
The paper proposes a rule engine component based on dynamic programming of backward reference.The algorithms, in the paper, use state-saving. After each reference, the state (results) of the matching process is saved in reference tree memories. After the next change to reason, many or most of these results are usually unchanged, so avoids a lot of recomputation by keeping these results around in between reference tree. The second important feature of the algorithms is its sharing of nodes between productions with similar conditions. Different kinds of sharing occur in different parts of the network. There can be sharing within the systems processes.The algorithms improve the efficiency of rule-based systems, and are higher efficiency than both forward RETE algorithm and pure backward reference algorithm.