=Paper=
{{Paper
|id=None
|storemode=property
|title=Mini-ME: the Mini Matchmaking Engine
|pdfUrl=https://ceur-ws.org/Vol-858/ore2012_paper5.pdf
|volume=Vol-858
|dblpUrl=https://dblp.org/rec/conf/ore/RutaSSGL12
}}
==Mini-ME: the Mini Matchmaking Engine==
https://ceur-ws.org/Vol-858/ore2012_paper5.pdf
Mini-ME: the Mini Matchmaking Engine
M. Ruta, F. Scioscia, E. Di Sciascio, F. Gramegna, and G. Loseto
Politecnico di Bari, via E. Orabona 4, I-70125 Bari, Italy
E-mail: m.ruta@poliba.it, f.scioscia@poliba.it, disciascio@poliba.it,
gramegna@deemail.poliba.it, loseto@deemail.poliba.it
Abstract. The Semantic Web of Things (SWoT) is a novel paradigm,
blending the Semantic Web and the Internet of Things visions. Due to
architectural and performance issues, it is currently impractical to use
available reasoners for processing semantic-based information and per-
form resource discovery in pervasive computing scenarios. This paper
presents a prototypical mobile reasoner for the SWoT, supporting Se-
mantic Web technologies and implementing both standard (subsumption,
satisfiability, classification) and non-standard (abduction, contraction)
inference tasks for moderately expressive knowledge bases. Architectural
and functional features are described and an experimental performance
evaluation is provided both on a PC testbed (w.r.t. other popular Se-
mantic Web reasoners) and on a smartphone.
1 Introduction
The Semantic Web of Things (SWoT) is an emerging paradigm in Information
and Communication Technology, joining the Semantic Web and the Internet
of Things. The Semantic Web initiative [5] envisions software agents to share,
reuse and combine data available in the World Wide Web, by means of machine-
understandable annotation languages such as RDF1 and OWL2 , grounded on
Description Logics (DLs) formalisms. The Internet of Things vision [11] pro-
motes pervasive computing on a global scale, aiming to give intelligence to ordi-
nary objects and physical locations by means of a large number of heterogeneous
micro-devices, each conveying a small amount of information. Consequently, the
goal of the SWoT is to embed semantically rich and easily accessible metadata
into the physical world, by enabling storage and retrieval of annotations from
tiny smart objects. Such a vision requires an increased autonomy and efficiency
of knowledge-based systems for what concerns information memorization, man-
agement, dissemination and discovery. Particularly, reasoning and query answer-
ing aimed to resource discovery is critical in mobile computing platforms (e.g.,
smartphones, tablets) which –albeit increasingly effective and powerful– are still
affected by hardware/software limitations. They have to be taken into account
1
Resource Description Framework, W3C Recommendation 10 February 2004,
http://www.w3.org/TR/rdf-primer/
2
OWL 2 Web Ontology Language, W3C Recommendation 27 October 2009,
http://www.w3.org/TR/owl-overview/
2
when designing systems and applications: particularly, to use more expressive
languages increases the computational complexity of inferences and significant
architectural and performance issues affect porting current OWL-based reason-
ers, designed for the Semantic Web, to handheld devices. This paper presents
Mini-ME (the Mini Matchmaking Engine), a prototypical mobile reasoner for
moderately expressive DLs, created to support semantic-based matchmaking [6],
[16]. It complies with standard Semantic Web technologies through the OWL
API [9] and implements both standard reasoning tasks for Knowledge Base (KB)
management (subsumption, classification, satisfiability) and non-standard infer-
ence services for semantic-based resource discovery and ranking (abduction and
contraction [6]). Mini-ME is developed in Java, adopting Android as target com-
puting platform.
The remaining of the paper is organized as follows. Section 2 reports on
related work, providing perspective and motivation for the proposal. Mini-ME
is presented in Section 3, where details are given about reasoning algorithms,
software architecture, data structures and supported logic languages. Section 4
relates to performance evaluation on the venue reference datasets3 and a compar-
ison with other popular Semantic Web reasoners is proposed. Finally conclusion
and future work in Section 5 close the paper.
2 Related Work
When processing semantic-based information to infer novel and implicit knowl-
edge, careful optimization is needed to achieve acceptable reasoning performance
for adequately expressive languages [3, 10]. This is specifically true in case of
logic-based matchmaking for mobile computing, which is characterized by severe
resource limitations (not only affecting processing, memory and storage, but also
energy consumption). Most mobile engines currently provide only rule processing
for entailments materialization in a KB [14, 27, 12, 18], so basically, available fea-
tures are not suitable to support applications requiring non-standard inference
tasks and extensive reasoning over ontologies [18]. More expressive languages
could be used by adapting tableaux algorithms –usually featuring reasoners run-
ning on PCs– to mobile computing platforms, but an efficient implementation
of reasoning services is still an open problem. Several techniques [10] allow to
increase expressiveness or decrease running time at the expense of main memory
usage, which is the most constrained resource in mobile systems. Pocket KRHy-
per [24] was the first reasoning engine specifically designed for mobile devices.
It supported the ALCHIR+ DL and was built as a Java ME (Micro Edition)
library. Pocket KRHyper was exploited in a DL-based matchmaking framework
between user profiles and descriptions of mobile resources/services [13]. How-
ever, its limitation in size and complexity of managed logic expressions was very
heavy due to frequent “out of memory” errors. To overcome those constraints,
tableaux optimizations to reduce memory consumption were introduced in [26]
and implemented in mTableau, a modified version of Java SE Pellet reasoner
3
http://www.cs.ox.ac.uk/isg/conferences/ORE2012/
3
[25]. Comparative performance tests were performed on a PC, showing faster
turnaround times than both unmodified Pellet and Racer [8] reasoner. Never-
theless, the Java SE technology is not expressly tailored to the current generation
of handheld devices. In fact, other relevant reasoners, such as FaCT++ [28] and
HermiT [23], cannot run on common mobile platforms. Porting would require
a significant re-write or re-design effort, since they rely on Java class libraries
incompatible with mosto widespread mobile OS (e.g., Android). Moreover, the
above systems only support standard inference services such as satisfiability and
subsumption, which provide only binary “yes/no” answers. Consequently, they
can only distinguish among full (subsume), potential (intersection-satisfiable)
and partial (disjoint ) match types (adopting the terminology in [6] and [16], re-
spectively). Non-standard inferences, as Concept Abduction and Concept Con-
traction, are needed to enable a more fine-grained semantic ranking as well as
explanations of outcomes [6]. In latest years, a different approach to implement
reasoning tools arose. It was based on simplifying both the underlying logic lan-
guages and admitted KB axioms, so that structural algorithms could be adopted,
but maintaining expressiveness enough for broad application areas. In [1], the
basic EL DL was extended to EL++ , a language deemed suitable for various
applications, characterized by very large ontologies with moderate expressive-
ness. A structural classification algorithm was also devised, which allowed high-
performance EL++ ontology classifiers such as CEL [4] and Snorocket [15]. OWL
2 profiles definition complies with this perspective, focusing on language subsets
of practical interest for important application areas rather than on fragments
with significant theoretical properties. In a parallel effort motivated by similar
principles, in [22] an early approach was proposed to adapt non-standard logic-
based inferences to pervasive computing contexts. By limiting expressiveness
to AL language, acyclic, structural algorithms were adopted reducing standard
(e.g., subsumption) and non-standard (e.g., abduction and contraction) infer-
ence tasks to set-based operations [7]. KB management and reasoning were then
executed through a data storage layer, based on a mobile RDBMS (Relational
DBMS). Such an approach was further investigated in [20] and [19], by increasing
the expressiveness to ALN DL and allowing larger ontologies and more complex
descriptions, through the adoption of both mobile OODBMS (Object-Oriented
DBMS) and performance-optimized data structures. Finally, in [21] expressive-
ness was extended to ALN (D) DL with fuzzy operators. The above tools were
designed to run on Java ME PDAs and were adopted in several case studies em-
ploying semantic matchmaking over moderately expressive KBs. The reasoning
engine presented here recalls lessons learned in those previous efforts, and aims
to provide a standards-compliant implementation of most common inferences
(both standard and non-standard) for widespread mobile platforms.
3 System Description
The architecture of the proposed reasoning engine is sketched as UML diagram
in Figure 1. Components are outlined hereafter:
4
<>
<>
KB Management <>
<> OwlReasoner
OWL API
<> <