Abstract
The match cost of Rete [8] increases significantly and approximately linearly with the number of rules [2]. A major part of that cost is the eager creation of cross products within the join nodes in an attempt to materialize rule instantiations. This paper builds on the idea of adaptive rules [1] using the unlinking of nodes, segments of nodes and rules to delay join attempts, which helps mitigate some aspects of the linear growth effect. By delaying the evaluation of a rule until after it’s linked and restricting the propagation to a single path, a lazy goal-driven evaluation behaviour is introduced. The algorithm also preserves node sharing by organising the network into segments and paths of segments; with memory now at node, segment and path levels. This paper presents the design and implementation of this work within the popular Open Source Drools rule engine. Drools also provides a baseline Rete implementation, without these enhancements, against which this work can be benchmarked. The evaluation of the results shows positive improvements over Rete, with no downsides.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Acharya, A.: scaling up production systems: issues, approaches and targets 9(01), 67 (1994). https://doi.org/10.1017/s0269888900006603
Acharya, A., Tambe, M.: Collection oriented match (1993)
Brownston, L., et al.: Programming Expert Systems in OPS5. Addison-Wesley Publishing Co. Inc., Reading (1985)
Bassiliades, N., Antoniou, G., Vlahavas, I.: DR-DEVICE: a defeasible logic system for the semantic web. In: Ohlbach, H.J., Schaffert, S. (eds.) PPSWR 2004. LNCS, vol. 3208, pp. 134–148. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30122-6_10
Browne, J.C., et al.: A new approach to modularity in rule-based programming. In: 1994 Proceedings of the Sixth International Conference on Tools with Artificial Intelligence, pp. 18–25. IEEE (1994)
Doorenbos, R.B.: Combining left and right unlinking for matching a large number of learned rules (1994)
Doorenbos, R.B.: Production matching for large learning systems (1995)
Forgy, C.L.: Rete: a fast algorithm for the many pattern/many object pattern match problem. Artif. Intell. 19(1), 17–37 (1982). https://doi.org/10.1016/0004-3702(82)90020-0
McDermott, J., Newell, A., Moore, J.: The efficiency of certain production system implementations (63), 38 (1977). https://doi.org/10.1145/1045343.1045366
Miranker, D.P.: TREAT: a better match algorithm for AI production systems; long version. Technical report, Austin, TX, USA (1987)
Miranker, D.P., Brant, D.A., Lofaso, B.J., Gadbois, D.: On the performance of lazy matching in production systems, pp. 685–692 (1990)
Nayak, P.P., Gupta, A., Rosenbloom, P.S.: Comparison of the rete and treat production matchers for soar, pp. 693–698 (1988)
Perlin, M.: Arc consistency for factorable relations. Artif. Intell. 53(2–3), 340–345 (1991)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer Nature Switzerland AG
About this paper
Cite this paper
Proctor, M., Fusco, M., Sottara, D., Zimányi, T. (2018). Reducing the Cost of the Linear Growth Effect Using Adaptive Rules with Unlinking and Lazy Rule Evaluation. In: Panetto, H., Debruyne, C., Proper, H., Ardagna, C., Roman, D., Meersman, R. (eds) On the Move to Meaningful Internet Systems. OTM 2018 Conferences. OTM 2018. Lecture Notes in Computer Science(), vol 11230. Springer, Cham. https://doi.org/10.1007/978-3-030-02671-4_38
Download citation
DOI: https://doi.org/10.1007/978-3-030-02671-4_38
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-02670-7
Online ISBN: 978-3-030-02671-4
eBook Packages: Computer ScienceComputer Science (R0)