Optimizing Semantic Reasoning on Memory-Constrained Platforms Using the RETE Algorithm

  • William Van WoenselEmail author
  • Syed Sibte Raza Abidi
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10843)


Mobile hardware improvements have opened the door for deploying rule systems on ubiquitous, mobile platforms. By executing rule-based tasks locally, less remote (cloud) resources are needed, bandwidth usage is reduced, and local, time-sensitive tasks are no longer influenced by network conditions. Further, with data being increasingly published in semantic format, an opportunity arises for rule systems to leverage the embedded semantics of semantic, ontology-based data. To support this kind of ontology-based reasoning in rule systems, rule-based axiomatizations of ontology semantics can be utilized (e.g., OWL 2 RL). Nonetheless, recent benchmarks have found that any kind of semantic reasoning on mobile platforms still lacks scalability, at least when directly re-using existing (PC- or server-based) technologies. To create a tailored solution for resource-constrained platforms, we propose changes to RETE, the mainstay algorithm for production rule systems. In particular, we present an adapted algorithm that, by selectively pooling RETE memories, aims to better balance memory usage with performance. We show that this algorithm is well-suited towards many typical Semantic Web scenarios. Using our custom algorithm, we perform an extensive evaluation of semantic, ontology-based reasoning, using our custom RETE algorithm and an OWL2 RL ruleset, both on the PC and mobile platform.


RETE OWL2 RL Rule-based reasoning OWL reasoning Reasoning optimization 


  1. 1.
    Maghsoud-Lou, E., Christie, S., Abidi, S.R., Abidi, S.S.R.: Protocol-driven decision support within e-referral systems to streamline patient consultation, triaging and referrals from primary care to specialist clinics. J. Med. Syst. 41, 139 (2017)CrossRefGoogle Scholar
  2. 2.
    Jafarpour, B., Abidi, S.S.R., Abidi, S.R.: Exploiting semantic web technologies to develop owl-based clinical practice guideline execution engines. IEEE J. Biomed. Heal. Inform. 20, 388–398 (2014)CrossRefGoogle Scholar
  3. 3.
    The National Center for Biomedical Ontology: BioPortal.
  4. 4.
    SNOMED International: SNOMED-CT.
  5. 5.
    Calvanese, D., Carroll, J., De Giacomo, G., Hendler, J., Herman, I., Parsia, B., Patel-Schneider, P.F., Ruttenberg, A., Sattler, U., Schneider, M.: OWL2 Web Ontology Language Profiles, 2nd edn.
  6. 6.
    Van Woensel, W., Roy, P.C., Abidi, S.R., Abidi, S.S.R.: A mobile and intelligent patient diary for chronic disease self-management. In: Studies in Health Technology and Informatics, pp. 118–122 (2015)Google Scholar
  7. 7.
    Tai, W., Keeney, J., O’Sullivan, D.: Resource-constrained reasoning using a reasoner composition approach. Semant. Web. 6, 35–59 (2015)Google Scholar
  8. 8.
    Bobed, C., Yus, R., Bobillo, F., Mena, E.: Semantic reasoning on mobile devices: do androids dream of efficient reasoners? Web Semant. Sci. Serv. Agents World Wide Web 35, 167–183 (2015)CrossRefGoogle Scholar
  9. 9.
    Apache: Apache Jena.
  10. 10.
  11. 11.
    Van Woensel, W., Al Haider, N., Ahmad, A., Abidi, S.S.R.: A cross-platform benchmark framework for mobile semantic web reasoning engines. In: Mika, P., et al. (eds.) ISWC 2014. LNCS, vol. 8796, pp. 389–408. Springer, Cham (2014). Scholar
  12. 12.
    Carroll, J., Herman, I., Patel-Schneider, P.F.: OWL 2 Web Ontology Language RDF-Based Semantics, 2nd edn.
  13. 13.
    Motik, B., Horrocks, I., Kim, S.M.: Delta-reasoner: a semantic web reasoner for an intelligent mobile platform. In: Proceedings of the 21st International Conference Companion on World Wide Web, pp. 63–72. ACM, New York (2012)Google Scholar
  14. 14.
    Meditskos, G., Bassiliades, N.: DLEJena: a practical forward-chaining OWL 2 RL reasoner combining Jena and Pellet. Web Semant. 8, 89–94 (2010)CrossRefGoogle Scholar
  15. 15.
  16. 16.
    Bishop, B., Bojanov, S.: Implementing OWL 2 RL and OWL 2 QL rule-sets for OWLIM. In: Dumontier, M., Courtot, M. (eds.) OWLED. (2011)Google Scholar
  17. 17.
    Seitz, C., Schönfelder, R.: Rule-based OWL reasoning for specific embedded devices. In: Aroyo, L., et al. (eds.) ISWC 2011. LNCS, vol. 7032, pp. 237–252. Springer, Heidelberg (2011). Scholar
  18. 18.
    Hitzler, P., Krötzsch, M., Parsia, B., Patel-Schneider, P.F., Rudolph, S.: OWL 2 Web Ontology Language Primer, 2nd edn.
  19. 19.
    O’Connor, M., Das, A.: A pair of OWL 2 RL reasoners. In: OWL: Experiences and Directions Workshop 2012 (2012)Google Scholar
  20. 20.
    Documentation: Shared RETE Memory.
  21. 21.
    Schneider, M., Mainzer, K.: A conformance test suite for the OWL 2 RL RDF rules language and the OWL 2 RDF-based semantics. In: 6th International Workshop on OWL: Experiences and Directions (2009)Google Scholar
  22. 22.
    Miranker, D.P.: TREAT: A Better Match Algorithm for AI Production Systems (Long Version). University of Texas at Austin, Austin (1987)Google Scholar
  23. 23.
    Ishida, T.: An optimization algorithm for production systems. IEEE Trans. Knowl. Data Eng. 6, 549–558 (1994)CrossRefGoogle Scholar
  24. 24.
    Miranker, D., Depena, R., Jung, H., Sequeda, J.F., Reyna, C.: Diamond: a SPARQL query engine, for linked data based on the rete match. In: Artificial Intelligence Meets the Web of Data Workshop, Co-located at ECAI (2012)Google Scholar
  25. 25.
  26. 26.
    Hanson, E.N.: The design and implementation of the ariel active database rule system. IEEE Trans. Knowl. Data Eng. 8, 157–172 (1996)CrossRefGoogle Scholar
  27. 27.
  28. 28.
    Friedman-Hill, E.J.: Jess - RETE Algorithm.
  29. 29.
    Matentzoglu, N., Bail, S., Parsia, B.: A snapshot of the OWL web. In: Alani, H., et al. (eds.) ISWC 2013. LNCS, vol. 8218, pp. 331–346. Springer, Heidelberg (2013). Scholar
  30. 30.
    Kim, T., Park, I., Hyun, S.J., Lee, D.: MiRE4OWL: mobile rule engine for OWL. In: Proceedings of the 2010 IEEE 34th Annual Computer Software and Applications Conference Workshops, pp. 317–322. IEEE Computer Society, Washington, D.C. (2010)Google Scholar
  31. 31.
    Ali, S., Kiefer, S.: μOR – a micro OWL DL reasoner for ambient intelligent devices. In: Abdennadher, N., Petcu, D. (eds.) GPC 2009. LNCS, vol. 5529, pp. 305–316. Springer, Heidelberg (2009). Scholar
  32. 32.
    Kim, T., Park, I., Hyun, S.J., Lee, D.: MiRE4OWL: mobile rule engine for OWL. In: 2010 IEEE 34th Annual Computer Software and Applications Conference Workshops, pp. 317–322. IEEE (2010)Google Scholar
  33. 33.
    Matheus, C.J., Baclawski, K., Kokar, M.M.: BaseVISor: a triples-based inference engine outfitted to process RuleML and R-Entailment rules. In: Second International Conference on Rules and Rule Markup Languages for the Semantic Web, pp. 67–74 (2006)Google Scholar
  34. 34.
    Hanson, E.N., Bodagala, S., Chadaga, U.: Trigger condition testing and view maintenance using optimized discrimination networks. IEEE Trans. Knowl. Data Eng. 14, 261–280 (2002)CrossRefGoogle Scholar
  35. 35.
    Komazec, S., Cerri, D.: Towards efficient schema-enhanced pattern matching over RDF data streams. In: 1st International Workshop on Ordering and Reasoning (OrdRing 2011) (2011)Google Scholar
  36. 36.
    Hanson, E., Hasan, M.S.: Gator: an optimized discrimination network for active database rule condition testing. Technical report TR-93-036, University of Florida, December 1993Google Scholar
  37. 37.
    Wright, I., Marshall, J.: The execution kernel of RC++: RETE*, a faster RETE with TREAT as a special case. Int. J. Intell. Games Simul. 2(1), 36–48 (2003)Google Scholar

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Faculty of Computer ScienceDalhousie UniversityHalifaxCanada

Personalised recommendations