skip to main content
research-article

RecRules: Recommending IF-THEN Rules for End-User Development

Published:05 September 2019Publication History
Skip Abstract Section

Abstract

Nowadays, end users can personalize their smart devices and web applications by defining or reusing IF-THEN rules through dedicated End-User Development (EUD) tools. Despite apparent simplicity, such tools present their own set of issues. The emerging and increasing complexity of the Internet of Things, for example, is barely taken into account, and the number of possible combinations between triggers and actions of different smart devices and web applications is continuously growing. Such a large design space makes end-user personalization a complex task for non-programmers, and motivates the need of assisting users in easily discovering and managing rules and functionality, e.g., through recommendation techniques. In this article, we tackle the emerging problem of recommending IF-THEN rules to end users by presenting RecRules, a hybrid and semantic recommendation system. Through a mixed content and collaborative approach, the goal of RecRules is to recommend by functionality: it suggests rules based on their final purposes, thus overcoming details like manufacturers and brands. The algorithm uses a semantic reasoning process to enrich rules with semantic information, with the aim of uncovering hidden connections between rules in terms of shared functionality. Then, it builds a collaborative semantic graph, and it exploits different types of path-based features to train a learning to rank algorithm and compute top-N recommendations. We evaluate RecRules through different experiments on real user data extracted from IFTTT, one of the most popular EUD tools. Results are promising: they show the effectiveness of our approach with respect to other state-of-the-art algorithms and open the way for a new class of recommender systems for EUD that take into account the actual functionality needed by end users.

References

  1. Pierre A. Akiki, Arosha K. Bandara, and Yijun Yu. 2017. Visual simple transformations: Empowering end-users to wire Internet of Things objects. ACM Transactions on Computer-Human Interaction 24, 2, Article 10 (April 2017), 43 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Sarabjot Singh Anand, Patricia Kearney, and Mary Shapcott. 2007. Generating semantically enriched user profiles for web personalization. ACM Transactions on Internet Technology 7, 4, Article 22 (Oct. 2007). Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. C. Bizer and T. Heathand T. Berners-Lee. 2009. Linked data—The story so far. International Journal on Semantic Web and Information System 5, 3 (2009), 1--22.Google ScholarGoogle ScholarCross RefCross Ref
  4. Leo Breiman. 2001. Random forests. Machine Learning 45, 1 (Oct. 2001), 5--32. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Julia Brich, Marcel Walch, Michael Rietzler, Michael Weber, and Florian Schaub. 2017. Exploring end user programming needs in home automation. ACM Transaction on Computer-Human Interaction 24, 2, Article 11 (April 2017), 35 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Iván Cantador, Alejandro Bellogín, and Pablo Castells. 2008. A multilayer ontology-based hybrid recommendation model. AI Communications 21, 2--3 (April 2008), 203--210. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Vint Cerf and Max Senges. 2016. Taking the Internet to the Next Physical Level. IEEE Computer 49, 2 (Feb. 2016), 80--86. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. F. Corno, L. De Russis, and A. Monge Roffarello. 2017. A semantic web approach to simplifying trigger-action programming in the IoT. Computer 50, 11 (Nov. 2017), 18--24.Google ScholarGoogle ScholarCross RefCross Ref
  9. Fulvio Corno, Luigi De Russis, and Alberto Monge Roffarello. 2019. A high-level semantic approach to end-user development in the Internet of Things. International Journal of Human-Computer Studies 125 (2019), 41--54.Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Allen Cypher. 1991. EAGER: Programming repetitive tasks by example. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI’91). ACM, New York, NY, 33--39. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Jose Danado and Fabio Paternò. 2014. Puzzle: A mobile application development environment using a jigsaw metaphor. Journal of Visual Languages 8 Computing 25, 4 (2014), 297--315. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. G. Desolda, C. Ardito, and M. Matera. 2017. Empowering end users to customize their smart environments: Model, composition paradigms, and domain-specific tools. ACM Transaction on Computer-Human Interaction (TOCHI) 24, 2, Article 12 (April 2017), 52 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Anind K. Dey, Timothy Sohn, Sara Streng, and Justin Kodama. 2006. iCAP: Interactive prototyping of context-aware applications. In Proceedings of the 4th International Conference on Pervasive Computing (PERVASIVE’06). Springer-Verlag, Berlin, 254--271. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. A. R. D’Souza, D. Yang, and C. V. Lopes. 2016. Collective intelligence for smarter API recommendations in python. In 2016 IEEE 16th International Working Conference on Source Code Analysis and Manipulation (SCAM). 51--60.Google ScholarGoogle Scholar
  15. Ekwa Duala-Ekoko and Martin P. Robillard. 2011. Using Structure-Based Recommendations to Facilitate Discoverability in APIs. Springer, Berlin, 79--104.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Ignacio Fernández-Tobías, Iván Cantador, Marius Kaminskas, and Francesco Ricci. 2011. A generic semantic-based framework for cross-domain recommendation. In Proceedings of the 2Nd International Workshop on Information Heterogeneity and Fusion in Recommender Systems (HetRec’11). ACM, New York, NY, 25--32. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Yoav Freund, Raj Iyer, Robert E. Schapire, and Yoram Singer. 2003. An efficient boosting algorithm for combining preferences. Journal of Machine Learning Research 4 (Dec. 2003), 933--969. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. J. Friedman, T. Hastie, and R. Tibshirani. 2010. Regularization paths for generalized linear models via coordinate descent. Journal of Statistical Software 33, 1 (2010), 1--22. http://www.jstatsoft.org/v33/i01/.Google ScholarGoogle ScholarCross RefCross Ref
  19. Z. Gantner, L. Drumond, C. Freudenthaler, S. Rendle, and L. Schmidt-Thieme. 2010. Learning attribute-to-feature mappings for cold-start recommendations. In Proceedings of the 2010 IEEE International Conference on Data Mining (ICDM’10). IEEE Computer Society, Washington, D.C., 176--185. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Zeno Gantner, Steffen Rendle, Christoph Freudenthaler, and Lars Schmidt-Thieme. 2011. MyMediaLite: A free recommender system library. In Proceedings of the 5th ACM Conference on Recommender Systems (RecSys’11). ACM, New York, NY, 305--308. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Andrés Garcí-a silva, Oscar Corcho, Harith Alani, and Asunción Gómez-pérez. 2012. Review: Review of the state of the art: Discovering and associating semantics to tags in folksonomies. The Knowledge Engineering Review 27, 1 (Feb. 2012), 57--85. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. G. Ghiani, M. Manca, F. Paternò, and C. Santoro. 2017. Personalization of context-dependent applications through trigger-action rules. ACM Transactions on Computer-Human Interaction (TOCHI) 24, 2, Article 14 (April 2017), 33 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Birte Glimm, Ian Horrocks, Boris Motik, Giorgos Stoilos, and Zhe Wang. 2014. HermiT: An OWL 2 reasoner. Journal of Automated Reasoning 53, 3 (Oct. 2014), 245--269. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Will Haines, Melinda Gervasio, Aaron Spaulding, and Bart Peintner. 2010. Recommendations for end-user development. In Proceedings of the ACM RecSys 2010 Workshop on User-Centric Evaluation of Recommender Systems and Their Interfaces (UCERSTI).Google ScholarGoogle Scholar
  25. Mostafa Hamza and Robert J. Walker. 2015. Recommending features and feature relationships from requirements documents for software product lines. In Proceedings of the 4th International Workshop on Realizing Artificial Intelligence Synergies in Software Engineering (RAISE’15). IEEE Press, Piscataway, NJ, 25--31. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Benjamin Heitmann and Conor Hayes. 2010. Using linked data to build open, collaborative recommender systems. Artificial Intelligence (2010), 76--81.Google ScholarGoogle Scholar
  27. Matthew Horridge and Sean Bechhofer. 2011. The OWL API: A java API for OWL ontologies. Semantic Web 2, 1 (Jan. 2011), 11--21. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Yifan Hu, Yehuda Koren, and Chris Volinsky. 2008. Collaborative filtering for implicit feedback datasets. In Proceedings of the 2008 8th IEEE International Conference on Data Mining (ICDM’08). IEEE Computer Society, Washington, D.C., 263--272. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Justin Huang and Maya Cakmak. 2015. Supporting mental model accuracy in trigger-action programming. In Proceedings of the 2015 ACM International Joint Conference on Pervasive and Ubiquitous Computing (UbiComp’15). ACM, New York, NY, 215--225. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Ting-Hao K. Huang, A. Azaria, and J. P. Bigham. 2016. InstructableCrowd: Creating IF-THEN rules via conversations with the crowd. In Proceedings of the 2016 CHI Conference Extended Abstracts on Human Factors in Computing Systems (CHI EA’16). ACM, New York, NY, 1555--1562. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Houda Khrouf and Raphaël Troncy. 2013. Hybrid event recommendation using linked data and user diversity. In Proceedings of the 7th ACM Conference on Recommender Systems (RecSys’13). ACM, New York, NY, 185--192. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Jacob Krüger. 2018. When to extract features: Towards a recommender system. In Proceedings of the 40th International Conference on Software Engineering: Companion Proceeedings (ICSE’18). ACM, New York, NY, 518--520. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Ni Lao and William W. Cohen. 2010. Relational retrieval using a combination of path-constrained random walks. Machine Learning 81, 1 (Oct. 2010), 53--67. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Lukas Lerche and Dietmar Jannach. 2014. Using graded implicit feedback for Bayesian personalized ranking. In Proceedings of the 8th ACM Conference on Recommender Systems (RecSys’14). ACM, New York, NY, 353--356. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Henry Lieberman, Fabio Paternò, Markus Klann, and Volker Wulf. 2006. End User Development. Springer, Dordrecht, Netherlands, Chapter End-User Development: An Emerging Paradigm, 1--8.Google ScholarGoogle Scholar
  36. Tie-Yan Liu. 2009. Learning to rank for information retrieval. Foundations and Trends In Information Retrieval 3, 3 (March 2009), 225--331. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Y. Malheiros, A. Moraes, C. Trindade, and S. Meira. 2012. A source code recommender system to support newcomers. In 2012 IEEE 36th Annual Computer Software and Applications Conference. 19--24. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Toshiyuki Masui and Ken Nakayama. 1994. Repeat and predict: Two keys to efficient text editing. In Conference Companion on Human Factors in Computing Systems (CHI’94). ACM, New York, NY, 31--32. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Sean M. McNee, John Riedl, and Joseph A. Konstan. 2006. Being accurate is not enough: How accuracy metrics have hurt recommender systems. In CHI’06 Extended Abstracts on Human Factors in Computing Systems (CHI EA’06). ACM, New York, NY, 1097--1101. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Kim Mens and Angela Lozano. 2014. Source Code-Based Recommendation Systems. Springer, Berlin,, 93--130.Google ScholarGoogle Scholar
  41. Bamshad Mobasher, Xin Jin, and Yanzan Zhou. 2004. Web Mining: From Web to Semantic Web. Springer, Berlin, Chapter Semantically Enhanced Collaborative Filtering on the Web, 57--76.Google ScholarGoogle Scholar
  42. Anh Tuan Nguyen, Michael Hilton, Mihai Codoban, Hoan Anh Nguyen, Lily Mast, Eli Rademacher, Tien N. Nguyen, and Danny Dig. 2016. API code recommendation using statistical learning from fine-grained changes. In Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE 2016). ACM, New York, NY, 511--522. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. X. Ning and G. Karypis. 2011. SLIM: Sparse linear methods for top-N recommender systems. In 2011 IEEE 11th International Conference on Data Mining. 497--506. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Xia Ning and George Karypis. 2012. Sparse linear methods with side information for top-n recommendations. In Proceedings of the 6th ACM Conference on Recommender Systems (RecSys’12). ACM, New York, NY, 155--162. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Tommaso Di Noia, Vito Claudio Ostuni, Paolo Tomeo, and Eugenio Di Sciascio. 2016. SPrank: Semantic path-based ranking for top-N recommendations using linked open data. ACM Transactions on Intelligent Systems and Technology 8, 1, Article 9 (Sept. 2016), 34 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. Sergio Oramas, Vito Claudio Ostuni, Tommaso Di Noia, Xavier Serra, and Eugenio Di Sciascio. 2016. Sound and music recommendation with knowledge graphs. ACM Transactions on Intelligent Systems and Technology 8, 2, Article 21 (Oct. 2016), 21 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Vito Claudio Ostuni, Tommaso Di Noia, Eugenio Di Sciascio, and Roberto Mirizzi. 2013. Top-N recommendations from implicit feedback leveraging linked open data. In Proceedings of the 7th ACM Conference on Recommender Systems (RecSys’13). ACM, New York, NY, 85--92. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Steffen Rendle, Christoph Freudenthaler, Zeno Gantner, and Lars Schmidt-Thieme. 2009. BPR: Bayesian personalized ranking from implicit feedback. In Proceedings of the 25th Conference on Uncertainty in Artificial Intelligence (UAI’09). AUAI Press, Arlington, Virginia, 452--461. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Giovanni Semeraro, Pasquale Lops, Pierpaolo Basile, and Marco de Gemmis. 2009. Knowledge infusion into content-based recommender systems. In Proceedings of the 3rd ACM Conference on Recommender Systems (RecSys’09). ACM, New York, NY, 301--304. Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. W. Shen, J. Wang, and J. Han. 2015. Entity linking with a knowledge base: Issues, techniques, and solutions. IEEE Transactions on Knowledge and Data Engineering 27, 2 (Feb. 2015), 443--460.Google ScholarGoogle ScholarCross RefCross Ref
  51. Yue Shi, Alexandros Karatzoglou, Linas Baltrunas, Martha Larson, Alan Hanjalic, and Nuria Oliver. 2012. TFMAP: Optimizing MAP for top-n context-aware recommendation. In Proceedings of the 35th International ACM SIGIR Conference on Research and Development in Information Retrieval (SIGIR’12). ACM, New York, NY, 155--164. Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. Harald Steck. 2013. Evaluation of recommendations: Rating-prediction and ranking. In Proceedings of the 7th ACM Conference on Recommender Systems (RecSys’13). ACM, New York, NY, 213--220. Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. Zhu Sun, Jie Yang, Jie Zhang, Alessandro Bozzon, Long-Kai Huang, and Chi Xu. 2018. Recurrent knowledge graph embedding for effective recommendation. In Proceedings of the 12th ACM Conference on Recommender Systems (RecSys’18). ACM, New York, NY, 297--305. Google ScholarGoogle ScholarDigital LibraryDigital Library
  54. Blase Ur, Elyse McManus, Melwyn Pak Yong Ho, and Michael L. Littman. 2014. Practical trigger-action programming in the smart home. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI’14). ACM, New York, NY, 803--812. Google ScholarGoogle ScholarDigital LibraryDigital Library
  55. B. Ur, M. Pak Yong Ho, S. Brawner, J. Lee, S. Mennicken, N. Picard, D. Schulze, and M. L. Littman. 2016. Trigger-action programming in the wild: An analysis of 200,000 IFTTT recipes. In Proceedings of the 34rd Annual ACM Conference on Human Factors in Computing Systems (CHI’16). ACM, New York, NY, 3227--3231. Google ScholarGoogle ScholarDigital LibraryDigital Library
  56. Markus Weimer, Alexandros Karatzoglou, and Alex Smola. 2008. Improving maximum margin matrix factorization. Machine Learning 72, 3 (Sept. 2008), 263--276. Google ScholarGoogle ScholarDigital LibraryDigital Library
  57. Qiang Wu, Christopher J. Burges, Krysta M. Svore, and Jianfeng Gao. 2010. Adapting boosting for information retrieval measures. Information Retrieval Journal 13, 3 (June 2010), 254--270. Google ScholarGoogle ScholarDigital LibraryDigital Library
  58. Yao Wu, Christopher DuBois, Alice X. Zheng, and Martin Ester. 2016. Collaborative denoising auto-encoders for top-N recommender systems. In Proceedings of the 9th ACM International Conference on Web Search and Data Mining (WSDM’16). ACM, New York, NY, 153--162. Google ScholarGoogle ScholarDigital LibraryDigital Library
  59. Lina Yao, Quan Z. Sheng, Anne H. H. Ngu, Helen Ashman, and Xue Li. 2014. Exploring recommendations in Internet of Things. In Proceedings of the 37th International ACM SIGIR Conference on Research 8 Development in Information Retrieval (SIGIR’14). ACM, New York, NY, 855--858. Google ScholarGoogle ScholarDigital LibraryDigital Library
  60. Y. Ye and G. Fischer. 2002. Supporting reuse by delivering task-relevant and personalized information. In Proceedings of the 24th International Conference on Software Engineering. ICSE 2002. 513--523. Google ScholarGoogle ScholarDigital LibraryDigital Library
  61. Xiao Yu, Xiang Ren, Yizhou Sun, Quanquan Gu, Bradley Sturt, Urvashi Khandelwal, Brandon Norick, and Jiawei Han. 2014. Personalized entity recommendation: A heterogeneous information network approach. In Proceedings of the 7th ACM International Conference on Web Search and Data Mining (WSDM’14). ACM, New York, NY, 283--292. Google ScholarGoogle ScholarDigital LibraryDigital Library
  62. Yuan Cao Zhang, Diarmuid Ó Séaghdha, Daniele Quercia, and Tamas Jambor. 2012. Auralist: Introducing serendipity into music recommendation. In Proceedings of the 5th ACM International Conference on Web Search and Data Mining (WSDM’12). ACM, New York, NY, 13--22. Google ScholarGoogle ScholarDigital LibraryDigital Library
  63. Cai-Nicolas Ziegler, Sean M. McNee, Joseph A. Konstan, and Georg Lausen. 2005. Improving recommendation lists through topic diversification. In Proceedings of the 14th International Conference on World Wide Web (WWW’05). ACM, New York, NY, 22--32. Google ScholarGoogle ScholarDigital LibraryDigital Library
  64. Yue Shi, Alexandros Karatzoglou, Linas Baltrunas, Martha Larson, Nuria Oliver, and Alan Hanjalic. 2012. CLiMF: Learning to maximize reciprocal rank with collaborative less-is-more filtering. In Proceedings of the Sixth ACM Conference on Recommender Systems (RecSys’12). ACM, 139--146. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. RecRules: Recommending IF-THEN Rules for End-User Development

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in

              Full Access

              • Published in

                cover image ACM Transactions on Intelligent Systems and Technology
                ACM Transactions on Intelligent Systems and Technology  Volume 10, Issue 5
                Special Section on Advances in Causal Discovery and Inference and Regular Papers
                September 2019
                314 pages
                ISSN:2157-6904
                EISSN:2157-6912
                DOI:10.1145/3360733
                Issue’s Table of Contents

                Copyright © 2019 ACM

                Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 5 September 2019
                • Accepted: 1 July 2019
                • Revised: 1 May 2019
                • Received: 1 October 2018
                Published in tist Volume 10, Issue 5

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • research-article
                • Research
                • Refereed

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader

              HTML Format

              View this article in HTML Format .

              View HTML Format