GimmeHop: A recommender system for mobile devices using ontology reasoners and fuzzy logic
Introduction
In our daily lives, we typically use a significant number of mobile applications (apps), for example to receive updated information about the weather or the traffic. This is possible because of the ever increasing computing capabilities of mobile devices, and the almost pervasive connectivity that the current wireless networks provide us with.
Because semantic technologies have proved to be very useful in many applications [4], enhancing such applications to enjoy the advantages of semantic technologies has been suggested. In particular, ontologies have become a de-facto standard for knowledge representation. Using ontologies for the knowledge representation of smart apps will have several benefits, such as improving knowledge sharing, reusing and maintenance, decoupling of the knowledge from the application, or discovering implicit knowledge.
Semantic reasoners are software implementations providing an automatic discovery of implicit knowledge that can be logically inferred from ontology axioms. This is possible because ontology languages, such as the standard language for ontology representation OWL 2 (Web Ontology Language) [11], have logical foundations. To do semantic reasoning on mobile devices, it is possible to use local, remote, or hybrid approaches [3]. Unfortunately, the use of semantic reasoners in apps is still rather challenging [5], [58].
While ontologies and semantic web technologies have proved to be very useful in many applications, there are many real world domains with imprecise and vague knowledge. In such scenarios, fuzzy extensions of the ontologies with elements of fuzzy logic and fuzzy set theory have been explored [60]. This way, for example, it would be possible to consider places which are close to the current user location, obtained using the sensors of the mobile device.
However, all the previous techniques have been explored in an isolated way. Unfortunately, the integrated management of ontologies, fuzzy logic, and semantic reasoners on mobile devices has not received enough attention. In particular, semantic reasoning is usually not performed on the local device but on an external server, requiring good connectivity and leading to some privacy risks. In this paper, we describe an application for mobile devices combining fuzzy logic and semantic reasoners. In particular, we present a semantic beer recommender system called GimmeHop, aiming at providing users with good recommendations about beers. We think that this kind of applications is particularly interesting these days: more foreign beers are imported by many stores and bars, the number of artisan beers is growing significantly, and users are willing to try new beer styles, thanks in large part to the phenomenon of home-brewing.
An important issue when managing big amounts of real data is that quite often there is missing information, i.e., entities for which the values of some attributes are unknown. In this paper, we use quantifier-guided aggregation [56] to provide recommendations even in cases of incomplete information.
The remaining of this paper is organized as follows. Section 2 provides some background on fuzzy logic and fuzzy ontologies. Then, Section 3 describes our recommender system, paying special attention to the use of fuzzy ontologies and the management of data on mobile devices. Next, Section 4 reports an evaluation of the quality of the linguistic labels and the recommendations, but also of the performance of the system. A detailed comparison our contribution with other previous work can be found in Section 5. Finally, Section 6 sets out some conclusions and ideas for future work.
Section snippets
Background
This section overviews some basics notions on fuzzy logic (Section 2.1) and fuzzy ontologies (Section 2.2) that will be used in the rest of this paper. Readers who are familiar with these subjects might jump ahead directly to the next section.
GimmeHop system
This section describes our beer recommender system. Section 3.1 starts by describing the fuzzy ontology. Then, Section 3.2 describes the architecture, used technologies, offered services, algorithms, user interface and some relevant implementation details.
Evaluation
In this section we firstly report our evaluation of the quality of the linguistic labels (Section 4.1), then an evaluation of the running time (Section 4.2) and the traffic data (Section 4.3). Finally, we discuss the overall behaviour of the system with the help of some sample queries (Section 4.4).
Related work
This section reviews some related work. Our aim is to highlight our contribution with the previous work on the domain, fuzzy ontologies, and semantic apps. We also overview the previous work on semantic reasoners to motivate not having used a reasoner specifically built for mobile devices.
Beer ontologies. There is a previous effort to build a Beer ontology.7 However, the ontology only contains 19 beer types and 9 beers. Another limitation
Conclusions and future work
In this paper we have presented GimmeHop, a recommender system for Android mobile devices, using fuzzy ontologies and semantic reasoners. GimmeHop is a proof of concept showing that fuzzy logic, semantic technologies, and both local and remote reasoning can be combined in mobile applications.
The application domain, beers, is a hot topic which is receiving a notable attention in the last years. In fact, two local companies are interested in the results of our project.
GimmeHop is able to deal
Acknowledgement
I. Huitzil was partially funded by Universidad de Zaragoza - Santander Universidades (Ayudas de Movilidad para Latinoamericanos - Estudios de Doctorado). I. Huitzil and F. Bobillo were partially supported by the projects TIN2016-78011-C4-3-R (AEI/FEDER, UE), JIUZ-2018-TEC-02 (Fundación Ibercaja y Universidad de Zaragoza), and DGA/FEDER.
We are very grateful to Professor Miguel Delgado for many useful lessons along the years. In particular, he was a pioneer in (among many other things) promoting
References (60)
- et al.
Semantic reasoning on mobile devices: do androids dream of efficient reasoners?
J. Web Semant.
(2015) - et al.
Fuzzy ontology representation using OWL 2
Int. J. Approx. Reason.
(2011) - et al.
The fuzzy ontology reasoner fuzzyDL
Knowl.-Based Syst.
(2016) - et al.
A flexible architecture for distributed knowledge based systems with nomadic access through handheld devices
Expert Syst. Appl.
(2005) - et al.
A fuzzy ontology for semantic modelling and recognition of human behaviour
Knowl.-Based Syst.
(2014) - et al.
A fuzzy-ontology-oriented case-based reasoning framework for semantic diabetes diagnosis
Artif. Intell. Med.
(2015) - et al.
A fuzzy extension of the semantic building information model
Autom. Constr.
(2015) - et al.
Gait recognition using fuzzy ontologies and kinect sensor data
Int. J. Approx. Reason.
(2019) - et al.
Managing uncertainty and vagueness in description logics for the semantic web
J. Web Semant.
(2008) - et al.
A linguistic mobile decision support system based on fuzzy ontology to facilitate knowledge mobilization
Decis. Support Syst.
(2016)