DOI QR코드

DOI QR Code

An Analysis of Existing Studies on Parallel and Distributed Processing of the Rete Algorithm

Rete 알고리즘의 병렬 및 분산 처리에 관한 기존 연구 분석

  • Kim, Jaehoon (Dept. of Information & Communication Engineering, Seoil University)
  • 김재훈 (서일대학교 정보통신공학과)
  • Received : 2019.04.25
  • Accepted : 2019.07.18
  • Published : 2019.07.31

Abstract

The core technologies for intelligent services today are deep learning, that is neural networks, and parallel and distributed processing technologies such as GPU parallel computing and big data. However, for intelligent services and knowledge sharing services through globally shared ontologies in the future, there is a technology that is better than the neural networks for representing and reasoning knowledge. It is a knowledge representation of IF-THEN in RIF or SWRL, which is the standard rule language of the Semantic Web, and can be inferred efficiently using the rete algorithm. However, when the number of rules processed by the rete algorithm running on a single computer is 100,000, its performance becomes very poor with several tens of minutes, and there is an obvious limitation. Therefore, in this paper, we analyze the past and current studies on parallel and distributed processing of rete algorithm, and examine what aspects should be considered to implement an efficient rete algorithm.

현재 지능적 서비스의 핵심 기술은 딥러닝 즉 신경망, 그리고 GPU 병렬 컴퓨팅 및 빅 데이터와 같은 병렬 분산 처리 기술이다. 하지만 미래의 전 세계적으로 공유된 온톨로지를 통한 지능적 서비스 및 지식 공유 서비스에서는 지식의 표현 및 추론을 위하여 신경망보다 더 나은 방법이 있다. 그것은 시맨틱 웹의 표준 규칙 언어인 RIF 혹은 SWRL의 IF-THEN의 지식 표현이며, 이러한 규칙을 rete 알고리즘을 이용하여 효율적으로 추론할 수 있다. 하지만 단일 컴퓨터에서 동작하는 rete 알고리즘의 처리 규칙 수가 100,000개가 될 경우 그 성능이 수 십 분으로 매우 안 좋아지며, 분명한 한계가 존재한다. 따라서 본 논문에서는 rete 알고리즘의 병렬 및 분산 처리에 대한 과거로부터 현재까지의 연구 내용을 정리 분석하며, 이를 통해 효율적인 rete 알고리즘의 구현을 위해 어떤 측면들이 고려되어야 하는지를 살펴본다.

Keywords

References

  1. C. L. Forgy, "Rete: A Fast Algorithm for the Many Pattern/Many Object Pattern Match Problem", Artificial Intelligence, Vol. 19, No. 1, pp. 17-37, Sep. 1982. https://doi.org/10.1016/0004-3702(82)90020-0
  2. J. Choi and Y. Park, "Research Trends in Ontology Reasoning", Communications of KIISE, Vol. 24, No. 12, pp. 47-55, Dec. 2006.
  3. J. Kim, "An Analysis of Uncertainty Problems in Knowledge Sharing Service Using RIF Rules", Journal of KIIT, Vol. 16, No. 9, pp 1-11, Sep. Sep. 2018. https://doi.org/10.14801/jkiit.2018.16.9.1
  4. J. Kim and H. Seo, "Shared Rules: Knowledge Sharing Service by RIF Rules", IEEE BigComp 2019, pp. 156-159, Feb. 2019.
  5. RIF Overview, http://www.w3.org/TR/2010/NOTE-rif-overview-20100622/, [accessed: Apr. 16, 2019]
  6. SWRL: A Semantic Web Rule Language Combining OWL and RuleML, http://www.w3.org/Submission/SWRL, [accessed: Apr. 16, 2019]
  7. Y. Li, W. Liu, B. Cao, J. Yin, and M. Yao, "An Efficient MapReduce-based Rule Matching Method for Production System", Future Generation Computer Systems, Vol. 54, pp. 478-489, Jan. 2016. https://doi.org/10.1016/j.future.2015.03.010
  8. R. Maeda, N. Ohta, and K. Kuwabara, "MapReduce-based Implementation of a Rule System", Studies in Computational Intelligence 513, pp. 197-206, 2014.
  9. J. Urbani, S. Kotoulas, J. Maassen, F. V. Harmelen, and H. Bal, "WebPIE: A Web-scale Parallel Inference Engine using MapReduce", Journal of Web Semantics, Vol. 10, pp. 59-75, Jan. 2012. https://doi.org/10.1016/j.websem.2011.05.004
  10. J. Urbani, S. Kotoulas, J. Maassen, F. V. Harmelen, and H. Bal, "OWL Reasoning with WebPIE: Calculating the Closure of 100 Billion Triples", Lecture Notes in Computer Science, Vol. 6088, pp. 213-227, Jan. 2010. https://doi.org/10.1007/978-3-642-13486-9_15
  11. S. Zhu, H. Huang, and L. Zhang, "A Distributed Architecture for Rule Engine to Deal with Big Data", ICACT 2016, pp. 602-606, Jan. 2016.
  12. W. Lee, S. Bae, and Y. Park, "A Study on Distributed Parallel SWRL Inference in an In-Memory-Based Cluster Environment", Journal of KIISE, Vol. 45, No. 3, pp. 224-233, Mar. 2018. https://doi.org/10.5626/JOK.2018.45.3.224
  13. L. Albert, "Average Case Complexity Analysis of RETE Pattern-Match Algorithm and Average Size of Join in Databases", INRIA Research Report, 1989.
  14. R. B. Doorenbos, "Production Matching for Large Learning Systems", Doctoral Dissertation, Carnegie Mellon University, 1995.
  15. P. Nayak, A. Gupta, and P. Rosenblum, "Comparison of the Rete an Treat Production Matchers for Soar (A Summary)", Proc. of AAAI-88, pp. 693-698, 1988.
  16. T. Dong, J. Shi, J. Fan, and L. Zhang, "An Improved Rete Algorithm Based on Double Hash Filter and Node Indexing for Distributed Rule Engine", IEICE trans. on Information and Systems, Vol. E96-D, No. 12, pp. 2635-2644, Dec. 2013. https://doi.org/10.1587/transinf.E96.D.2635
  17. I. Wright and J. Marshall, "The Execution Kernel of RC++: RETE*, A Faster Rete with Treat as A Special Case", Int. J. of Intelligent Games and Simulation, Vol. 2, No. 1, pp. 36-48, Feb. 2003.
  18. D. Xiao, Y. Tong, H. Yang, and M. Cao, "The Improvement for Rete Algorithm", Proc. of the 2009 First IEEE Int. Conf. on Information Science and Engineering, pp. 5222-5225, Dec. 2009.
  19. S. Kuo and D. Moldovan, "The State of Art in Parallel Production Systems", Journal of Parallel and Distributed Computing, Vol. 15, No. 1, pp. 1-26, May 1992. https://doi.org/10.1016/0743-7315(92)90055-R
  20. A. Gupta, C. L. Forgy, D. Kalp, A. Newell, and M. Tambe, "Parallel OPS5 on the Encore Multimax", Proc. of 1988 Int. Conf. on Parallel Processing, Aug. 1988.
  21. H. G. Okuna and A. Gupta, "Parallel Execution of OPS5 in QLISP", Proc. of The Fourth Conf. on Artificial Intelligence Applications, Mar. 1988.
  22. T. Ishida, "Parallel, Distributed and Multiagent Production Systems", Proc. of the First Int. Conf. on Multi-Agent Systems, pp. 416-422, 1995.
  23. A. Acharya and M. Tambe, "Production Systems on Message Passing Computers: Simulation Results and Analysis", Proc. of 1989 Int. Conf. on Parallel Processing, 1989.
  24. A. Gupta and M. Tambe, "Suitability of Message Passing Computers for Implementing Production Systems", Proc. of AAAI-88, Aug. 1988.
  25. J. Bein and R. King, "MOBY: An Architecture for Distributed Expert Database Systems", Proc. of the 13th VLDB, pp. 13-20, 1987.
  26. S. J. Stolfo, "Five Parallel Algorithms For Production System Execution on the DADO Machine", Proc. of AAAI-84, pp. 300-307, Aug. 1984.
  27. M. A. Kelly and R. E. Seviora, "An Evaluation of DRete on CUPID for OPS5 Matching", Proc. of the 11th Int. Joint Conf. on Artificial intelligence, pp. 84-90, Aug. 1989.
  28. W. Lee, S. Bang, and Y. Park, "Large Scale Incremental Reasoning Using SWRL Rules in a Distributed Framework", Jornal of KIISE, Vol. 44, No. 4, pp. 383-391, Apr. 2017. https://doi.org/10.5626/JOK.2017.44.4.383
  29. H. Wu, J. Liu, D. Ye, J. Wei, and H. Zhong, "Scalable Horn-Like Rule Inference of Semantic Data Using MapReduce", Int. Conf. on Knowledge Science, Engineering and Management, pp. 270-277, 2014.
  30. M. Peters, C. Brink, S. Sachweh, and A. Zundorf, "Rule-based Reasoning on Massively Parallel Hardware", Proc. of the 9th Int. Conf. on Scalable Semantic Web Knowledge Base Systems, pp. 33-48, 2013.
  31. OpenCL, https://www.khronos.org/opencl, [accessed: Apr. 16, 2019]