LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 ·...

21
Lee, GM Towards a Dynamic Discovery of Smart Services in the Social Internet of Things http://researchonline.ljmu.ac.uk/id/eprint/5754/ Article LJMU has developed LJMU Research Online for users to access the research output of the University more effectively. Copyright © and Moral Rights for the papers on this site are retained by the individual authors and/or other copyright owners. Users may download and/or print one copy of any article(s) in LJMU Research Online to facilitate their private study or for non-commercial research. You may not engage in further distribution of the material or use it for any profit-making activities or any commercial gain. The version presented here may differ from the published version or from the version of the record. Please see the repository URL above for details on accessing the published version and note that access may require a subscription. For more information please contact [email protected] http://researchonline.ljmu.ac.uk/ Citation (please note it is advisable to refer to the publisher’s version if you intend to cite from this work) Lee, GM (2017) Towards a Dynamic Discovery of Smart Services in the Social Internet of Things. Computers and Electrical Engineering, 58. pp. 429-443. ISSN 0045-7906 LJMU Research Online

Transcript of LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 ·...

Page 1: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

Lee, GM

Towards a Dynamic Discovery of Smart Services in the Social Internet of Things

http://researchonline.ljmu.ac.uk/id/eprint/5754/

Article

LJMU has developed LJMU Research Online for users to access the research output of the University more effectively. Copyright © and Moral Rights for the papers on this site are retained by the individual authors and/or other copyright owners. Users may download and/or print one copy of any article(s) in LJMU Research Online to facilitate their private study or for non-commercial research. You may not engage in further distribution of the material or use it for any profit-making activities or any commercial gain.

The version presented here may differ from the published version or from the version of the record. Please see the repository URL above for details on accessing the published version and note that access may require a subscription.

For more information please contact [email protected]

http://researchonline.ljmu.ac.uk/

Citation (please note it is advisable to refer to the publisher’s version if you intend to cite from this work)

Lee, GM (2017) Towards a Dynamic Discovery of Smart Services in the Social Internet of Things. Computers and Electrical Engineering, 58. pp. 429-443. ISSN 0045-7906

LJMU Research Online

Page 2: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

Towards a Dynamic Discovery of Smart Services in

the Social Internet of Things

Dina Hussein†, Son N. Han‡, Gyu Myoung Lee*, Noel Crespi¥, and Emmanuel Bertin†

† Orange Labs, 14000, France

{dina.hussein, emmanuel.bertin}@orange.com

‡Mevry | 3D Face-tracking, 94270, France

[email protected]

*Faculty of Engineering and Technology, Department of Computer Science

Liverpool John Moores University, Liverpool L3 3AF, United Kingdom

[email protected]

¥Wireless Networks and Multimedia Services Department,

Institut Mines-Telecom, Telecom SudParis, 91011, France

[email protected]

Abstract — The paradigm of the Social Internet of Things (SIoT) boosts a new trend wherein the connectivity and user

friendliness benefits of Social Network Services (SNS) are exhibited within the network of connected objects, i.e. the Internet of

Things (IoT). The SIoT exceeds the more traditional paradigm of IoT with an enhanced intelligence and context-awareness. In

this article, a novel service framework based on a cognitive reasoning approach for dynamic SIoT services discovery in smart

spaces is proposed. That is, reasoning about users’ situational needs, preferences, and other social aspects along with users’

surrounding environment is proposed for generating a list of situation-aware services which matches users’ needs. This

reasoning approach is then implemented as a proof-of-concept prototype, namely Airport Dynamic Social, within a smart

airport. Finally, an empirical study to evaluate the reasoning approach’s efficiency shows improved services adaptability to

situational needs compared to common approaches proposed in literature.

Index Terms — Social Internet of Things (SIoT), Internet of Things (IoT), Context-awareness, Semantic Reasoning, Services

Discovery, Service Framework.

I. INTRODUCTION

The paradigm of the Internet of Things (IoT) covers a diverse range of technologies with respect to sensing, networking,

computing, information processing, and intelligent control technologies [1], [2]. This implies a huge amount of heterogeneity

hidden in the computing and communication processes involved in reasoning and intelligent decision making. In practice,

achieving scalability in managing IoT application while maintaining user-friendliness to bridge human-to-machine perceptions is

a key challenge which hinders the realization of IoT on a wider scale. Thus a new research stream has come forward in literature

known as the Social Internet of Things (SIoT) [3], [4].

Page 3: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

2

The SIoT paradigm represents an ecosystem which allows people and smart devices to interact within a social structure of

relationships resembling traditional Social Network Services (SNS). On top of this framework, applications and services can be

provided in a user-friendly manner relying on Web technologies. SIoT builds on the emerging concept of social objects [3]. In

which, devices and objects, alternatively referred to as things, become exposed to the Web, allowing the autonomous and

proactive interactions with other people and things to generate personalized user experience. The SIoT social structure can

enhance the navigability of connected objects and provide a coherent manner for interacting with theseobjects [4].

However, the intelligence needed to integrate objects, services and people as the core of SIoT paradigm, increases the quantity

and the variety of contextual data that must be handled for situation-aware services discovery.

Two kinds of contextual data exist typically in SIoT scenarios; objective and subjective context [5], [6]. The objective context

represents the physical aspects of the user’s surrounding environment including location, time, device status, available services,

etc. Whereas the subjective context represents the human and social factors including short-term goals, preferences,

relationships, trusted services, etc. Combining these two kinds of context for intelligent decision making is not studied yet in

literature despite being necessary for achieving situation-awareness (SA) in smart environments [6]. In this article we attempt to

utilize such combination to build the intelligence core of what we call cognitive reasoning approach for characterizing users’

situations and thus allow for dynamic services discovery in smart spaces.

Achieving SA would not only contribute to characterizing users’ situations for adaptive services discovery, but it would also

narrow down social objects and smart services discovery scope beyond the SIoT suggested social structures. In which,

heterogeneity is managed within the boundaries of certain situations [6]. This article builds on the SIoT architecture provided in

the literature [5], [6] but further extend it to achieve its implementation in a smart space i.e. airport.

This article proposes a novel service discovery framework, wherein based on a cognitive reasoning approach, a temporal social

structure combining users, objects and services can be established, namely the Dynamic Social Structure of Things (DSSoT).

The proposed cognitive reasoning approach derives users’ short term situational needs, and accordingly creates a filtered list of

available objects and smart services which could meet such goals. To realize the cognitive reasoner, a semantic service matching

algorithm is provided. In which, contextual data are first represented ontologically. Then users’ situations are characterized

according to a suggested criterion in two stages: 1- Situation Identification, 2- Situational Goal Detection. Matching the

situational needs with available smart services that could meet these goals is finally accomplished before listing situation-aware

services and their actuating smart objects in a temporal social structure. An empirical study to analyze the performance of the

suggested reasoning approach in terms of run time complexity and the amount of contextual data growth rate is finally provided.

From a technical perspective, this article attempts to explore advances of socially enhanced IoT applications in smart spaces

beyond the typical applications of building and home automation.

Page 4: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

3

Thus, an application is provided, namely Airport Dynamic Social to realize DSSoT in a smart airport. The goal of this

application is to enable users to directly interact with available objects and smart services in an airport i.e. sensors at check-in

counters, boarding gates, flights, smart beverages/food dispensing machines, etc. Additionally, the application aims at benefiting

from Internet Protocol version 6 (IPv6) in order to demonstrate an effortless deployment of DSSoT without the need for a

protocol translation gateway or an intermediary server to cope with a number of heterogeneous devices in a smart space.

The rest of the article is organized as follows. A thorough analysis of the background and related works are provided in the next

section. Section III compares two service discovery and interaction scenarios, the proposed service framework with the common

service framework provided in literature. In Section IV, the proof-of-concept prototype to realize the proposed service discovery

framework is presented. The cognitive reasoning approach utilized for situation-aware service discovery is presented in Section

V. In Section VI, an empirical performance analysis is provided. Finally, the article is concluded in Section VII.

II. BACKGROUND

We are witnessing a new era characterized by a computing and communication revolution where millions of objects such as

sensors, RFID tags, and smart electronic/electromechanical devices, surrounding us are becoming connected. These gadgets are

disappearing into the fabric of our daily lives to help us in carrying out quotidian tasks. This pervasive paradigm known as the

Internet of Things (IoT) promotes the value of data generated by the interactions among people and connected objects, denoted

by things, as well as the transformation of this data into knowledge for the benefit of mankind and society.

Prior to the proliferation of IoT, the paradigm of the intranet of things was presented in literature as a local network of connected

objects. Examples of the intranet of things include Wireless Sensor Networks (WSNs), Machine-to-Machine (M2M), smart

homes, etc. The intranet of things is capable of extracting mainly local, application and domain specific data from the connected

objects [10]. The IoT paradigm however can provide a large scale data extraction to achieve the collaboration among different

intranets of things. Furthermore, IoT enables the creation and composition of novel services and applications on top of its

infrastructure to provide a new user experience with each service composition [7]. However, one of the biggest challenges in IoT

is to manage the number of heterogeneous objects, communication protocols, and deployment goals.

In fact, there is a huge need to improve the connectivity of various objects with a variety of computational power in order to

realize the vision of IoT, i.e. the availability of smart smart services anytime/anywhere. Thus, a number of research efforts

promoted the adaptation of some features from SNS i.e. modelling social relationships, building rich profiling system, enabling a

mashup of services to achieve a personalized user experience, etc. [8]. This influence which is caused by the huge rise of SNSs

driven by the advancements in communication technologies has created a revolution in human interactions where users can

overcome spatio-temporal boundaries to reach their required services anytime, anywhere [9].

Page 5: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

4

According to Ding et al. [10], achieving the combination among information coming from the Internet along with the objects

made available by IoT and people from SNS would help bring together the main micro elements from the human society.

Thus, studying such convergence can lead to huge advancements to humans and communities [10].

Atzori et al. [3], [4] is among the few who first introduced the concept of the SIoT as an evolutionary step following IoT. In

which, social relationship is proposed to be established between people, smart services and objects resembling human

relationships. This suggested social structure can improve services and objects’ navigability and discovery in a manner similar to

SNS. The SIoT thus represents a social network where nodes represented by people, services and objects are capable of

establishing social relationships with each other’s autonomously while taking into account the preferences, privacy and security

constraints set by users, owners and/or the network administrator [11].

III. RELATED WORKS

A. Context-awareness in smart spaces

Smart spaces as one of the application areas for IoT is characterized by being heterogeneous in nature where things with various

resource-capabilities typically coexist and act as sensors and/or actuators for data and commands. Additionally, things can move

within and/or join or leave the smart space arbitrary [12]. These characteristics could be translated from data view point into

context. Where managing various things with different resources and dynamic location is a challenge to any context management

mechanism adopted in smart environments.

According to Hong et al. [13] most of the context-aware systems focus on handling the external context, i.e. objective

information collected by physical sensors which represents aspects from the surrounding environment (including temperature,

time, location, lighting, humidity, etc.). However, Hong et al. [13] argues that in order to provide personalized services, internal

context, i.e. subjective information (including user preferences, tasks, emotional state, etc.) is also needed. Capturing the users’

cognitive states, represented by the internal context, acts as a key for satisfying users’ needs by providing personalized context-

aware services. In this article we refer to external context as objective whereas the internal one is subjective context.

B. Service Frameworks in Smart Spaces

Many research efforts aim at providing smart space platforms or service frameworks [14]. These frameworks are characterized

by being highly abstract to enable easy application development. However, accommodating things with limited resource

capability is a challenge hindering IoT realization on a bigger scale. Since resource-constrained nodes cannot run powerful

application stacks, such nodes are usually enabled in smart spaces via translation gateways or intermediary servers. This leads to

an increased latency in smart services provisioning.

A typical wireless sensor node, as shown in Fig. 1, is a good example of low-capacity nodes, which smart spaces are likely to be

Page 6: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

5

composed of. In general, facilitating gateway-independent heterogeneous and resource-constrained node interaction in smart

spaces is becoming an important factor to consider in future-driven service frameworks.

Fig. 1. Example of a resource-constrained node used in smart spaces

C. Contextual reasoning in IoT

Initially the paradigm of SIoT is introduced in literature to propose inheriting interconnectivity and user-friendliness from SNS

for improving IoT network navigability and things discovery. That is, representing relationships among people, services and

things sharing common aspects in a social structure to facilitate interaction, navigation and discovery has been proposed [15],

[16]. However, managing contextual data in SIoT is a topic in its early stages of research and investigation.

Various research contributions addressed the issue of contextual reasoning in IoT, many of which are listed by Bettini et al. [17]

and Perera et al. [18]. However, these contextual approaches mainly address objective context, neglecting the subjective one.

That is, reasoning about services that matches users’ physical situations is suggested, i.e. location-based reasoning. For instance,

providing context-aware services in smart spaces as proposed by Byun et al. [19] and similarly Leong et al. [20].

IV. SERVICE DISCOVERY AND INTERACTION SCENARIOS

To demonstrate the difference between the common location-dependent services discovery and interaction scenario which is

provided in literature, i.e. based on the objective context-based reasoning [21] - [23] and the proposed novel service interaction

i.e. based on objective and subjective context-based cognitive reasoning, the following two service scenarios are presented:

1- Nadia is in a smart airport, she sends a request to discover smart services and social objects surrounding her. This request will

be matched with available services in an exact or close proximity to her location. For each service which Nadia selects (e.g.

interacting with a coffee machine, printing a boarding pass, locating the baggage drop-off point for her flight, etc.), the

authorization to use this service will be evaluated first. Nadia’s selected services will keep her profile data, even if she is no

longer using these services unless she revokes access of each service to her profile data later. Additionally, in case of any

changes or updates in a certain service status (e.g. flight delay, change in a boarding gate, etc.), reasoning about the relevance of

this update to Nadia’s trip will need to take place before sending these updates (see Scenario 1 in Fig. 2).

2- Upon Nadia’s request to find relevant smart services, Nadia’s preferences and short term goals will be processed before short-

Page 7: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

6

listing location-independent smart services which could meet her needs in the airport. After Nadia’s approval of the suggested

services, a temporal social structure will be established between Nadia and these smart things/services, for direct service

interaction, which will expire automatically by the end of the situation (i.e. after catching the flight, or leaving the airport).

Additionally by the end of the situation, access to Nadia’s profile will be automatically revoked. If there is a change in flight

status, or if there are any updates while Nadia’s destination is pre-processed, no further reasoning is required before sending

relevant flight status updates (see Scenario 2 in Fig. 2).

The various components presented in Fig. 2 are to demonstrate the realization of the proposed service scenarios from an

implementation view point. These components are: Authorization (AUT), Context Management (CM), Profile Management

(PM), Natural Language Processing (NLP), Reasoning Engine (RE) and Service Filtering (SF). The AUT component is

responsible for carrying out the user authentication to access services. The CM handles contextual data which include location,

environmental and various other real-time data about the users, things and smart services. The PM is responsible for handling

static data stored in profiles of users, things and services including user preferences, calendars, profiles of objects and services,

etc. The NLP is responsible for fetching facts from a users’ search query or other natural language interaction with services. The

RE is responsible for semantic matching of the contextual and profile-based data for representing a situation semantically.

Finally, the SF is responsible for filtering available services with the semantically described situation to return a list of relevant

services to match users’ needs.

In the objective context-based reasoning approach (Scenario 1), as the user changes location in the airport, matching the user’s

new location with available services has to take place actively. That is, a service request (basic search query) will trigger the

AUT to fetch users’ identity from the PM component. Then an event will be created where the facts contained in the search

queries, i.e. location, service type, etc. will be fetched by the NLP and then matched with the RE to detect the event type. The

available service to match event type will then be filtered by the SF. After the service matching, each short-listed service might

request to perform further authentication and permission to access user profile.

Whereas in the proposed cognitive reasoning-based service (Scenario 2), the user’s situation will be identified i.e. catching a

flight, receiving a friend, etc., as well as the facts which exist in the user request in order to return an event type. The event type

will then be matched with location-independent services which can meet the demands in the created event. In Scenario 2 the

situation identification and situational goal detection phases will take place upon the first service request, then a list of all

available services within a smart space i.e. environment will be returned to match location-independent needs of the user.

Page 8: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

7

Fig. 2. Location-based vs. cognitive-based services scenarios in the SIoT. In Scenario 1, users’ profiles and/or level of authorization are matched for

each service selected. In Scenario 2, users’ profiles as well as authorization levels and goals are detected once to allow interaction with all relevant

services.

The main characteristics distinguishing the two reasoning mechanisms based on the previous service interaction scenarios are

shown in Table I.

TABLE I

REASONING RULES FOR CONTEXT-AWARE BEHAVIOR IN THE DSSOT

Reasoning mechanisms

characteristics Location-based reasoning (Scenario 1) Cognitive reasoning (Scenario 2)

Authorization request

Takes place upon each service request

Takes place once, upon the first service request and it is

designed to cover the entire user situation in the airport

Profile handling permission

Remains valid as long as individual services are not revoked profile access manually by the user

Is revoked automatically, once the entire situation is over, i.e. the user catches a flight or leave the airport

Context reasoning

occurrence

Takes place upon each service request by the user (to

detect location-dependent services)

Takes place once, upon the initiation of the user situation, and

results in a list of situation-relevant services

Page 9: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

8

V. ADAPTIVE SERVICES PROVISIONING IN SMART SPACES - PROPOSED TESTBED: AIRPORT DYNAMIC SOCIAL

In order to realize the implementation of DSSoT, an application is presented, namely Airport Dynamic Social as a proof-of-

concept prototype. Airport Dynamic Social is built to benefit from IPv6 in order to achieve an effortless deployment without

relying on an intermediary gateway to manage the number of heterogeneous devices which typically exist in a smart airport.

IPv6 acts as a key IP networking protocols to seamlessly integrate the increasing number of resource-constrained things which

are being introduced to the Internet. IPv6 is recently receiving a great momentum with the variety of standardization bodies,

including the Internet Engineering Task Force (IETF), which are working on reducing the footprint of IPv6 for resource-

constrained devices. Among these efforts are adding wireless connectivity to IPv6 to allow its use on Low-power and Lossy

Networks (LLNs), i.e. the IEEE 802.15.4 standard. Additionally, in the Routing Protocol for LLNs (RPL) and the Constrained

Application Protocol (CoAP),

A. Technical Configuration

As shown in Fig. 3. (c), the application Airport Dynamic Social is realized using several low-power sensor nodes in addition to a

router and an Android smart phone application. Particularly, Zolertia Z1 WSN mote is used within the context of the use case for

sensing the temperature i.e. inside an airplane. In addition to CM5000 TelosB for detecting the lighting level i.e. inside boarding

gates and airport lounges. Another CM5000 is used to track the capacity of the boarding queue by means of its press button.

Other components to realize the Airport Dynamic Social are:

The main processor: composed of a 32-bit microprocessor which acts as the main CPU. It is responsible for handling

reasoning tasks and processing events, running the service framework, and managing the service interactions.

The network interface: consists of a switching node, referred to as Border Router, which is developed by means of a

Raspberry Pi computer board combined with a CM5000 TelosB as an IEEE 802.15.4 radio device. The goal of the

Border Router is to act as a router between the IPv6 IEEE 802.15.4 network and the users’ IPv6 Wi-Fi network.

The application: composed of an Android phone connected to the Access Point (AP) by means of a Dynamic Host

Configuration Protocol (DHCP).

Examples of the smart services available at the airport are shown in Fig. 3 (a). Figure 3 (b) shows the environment for Airport

Dynamic Social, indicating where some hardware nodes, also utilized in the implementation, could be installed in order to turn

such an environment into a smart space. The equipment used in Airport Dynamic Social is shown in Fig 3(c). Each sensor

provides its service by means of a CoAP endpoint, which users can subscribe to via Android smart phone application: Airport

Dynamic Social App, in order to receive updates such as the temperature inside their airplane, detect the suitability of the

lighting condition at the boarding gate for reading and the number of passengers currently boarding.

Page 10: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

9

Fig. 3. Airport Dynamic Social application environment and equipment: (a) Example of smart services at the airport, (b) Airport Dynamic Social

environment, (c) Airport Dynamic Social equipment

Users can also request direct environmental condition information (as shown in detail in the following subsection). The sensors

utilized are labeled with characters which correspond to the area in the airport where each node could be installed.

B. Service examples

In the service examples provided here we would like to first highlight that while traditional Web services can conveniently

provide various information services in an airport, i.e. airplane schedule, departure time or boarding time, etc. However, in this

article however we are proposing the direct interaction with physical things in an airport for receiving personalized updates or

actuating a service in a direct and real-time manner. Therefore – we aim to achieve anytime/anywhere interaction with the

physical world without the need to register for multiple Web services. The goal is to improve passengers experience and improve

connectivity and user-friendliness in a typical IoT environment. Some screenshots of Airport Dynamic Social service instants are

presented in Fig. 4. These services examples are:

Once a passenger logs into the Airport Dynamic Social App from a portable device, an event will be initiated and the

list of relevant services that can meet the passenger’s situational needs will be processed. Accordingly, a list of things

that can provide the required services will be sent to the passenger awaiting approval before allowing direct access and

interaction with these things (Fig. 4 (a)).

The dynamic social structure (i.e. DSSoT) connecting passengers with the smart services and things that could meet their

situational needs will be created. Nodes in this temporal social structure will then push notifications about various

updates to the user; additionally a user can directly interact with these nodes. For instance, the airplane will send updates

about the current temperature and the boarding gate will send notifications about the number of passengers currently

boarding so the passenger can target a less crowded boarding time (Fig. 4 (b)).

Page 11: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

10

Finally, passengers can interact directly with the boarding gate requesting, for instance, whether the lighting condition

there is suitable for reading. For this inquiry an embedded NLP fetches the request and transfers it to the corresponding

sensors at the boarding gate. After checking the light condition, a response will be sent from the boarding gate to the

user, in which the provided service example does not recommend the user to read there (Fig. 4 (c)).

Fig. 4. Screenshots of Airport Dynamic Social service examples

VI. PROPOSED IMPLEMENTATION: A COGNITIVE REASONING APPROACH FOR ADAPTIVE SERVICE PROVISIONING

In order to realize the proposed service discovery framework, DSSoT, reasoning about situational needs is required first. This

section describes the ontological model for sharing access to knowledge that is spread across various static profiles and

contextual data repositories. This novel ontological model is the core of the article’s proposed cognitive reasoning mechanism.

A. DSSoT Contextual Ontology Model

Context refers to information which characterizes the situations of entities such as people, devices, organizations, and the

interactions between them, while “context-awareness” is a methodology of how to utilize context to provide relevant services

that fulfill user’s tasks and goals [13].

Keeping in mind the resource limitation issue in most of the objects found in smart spaces, including limited CPU speeds and

processing capabilities, a two-layer hierarchical approach for designing the ontology model is considered for the reasoning

approach: l- general upper ontology (see Fig. 5 (a)), representing the general concepts and ontological classes that can generally

be adopted in smart spaces; and 2- lower, application specific, ontology (see Fig. 5 (b)), which represents detailed concepts and

ontological classes in specific domains and sub-domains. The separation between the two categories of ontology helps to reduce

the scale of the contextual data needed to be processed in all situations. That is, domain-specific ontology can dynamically bind

with the upper domain ontology when a certain situation is triggered.

Page 12: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

11

Utilizing semantic Web technologies in IoT is provided in literature [24], particularly utilizing the W3C Semantic Sensor

Network (SSN) ontology [25] for annotating sensors and sensor networks; i.e., Linked Data. However our novel ontological

model provided in this article aims at representing physical things in addition to social knowledge about users and smart services

in order to bridge the gap between the cyber, physical and social worlds and achieve the required intelligence needed for SIoT.

In Fig. 5 (a) the main classes and subclasses which construct our proposed ontology is provided. It is composed of ontological

classes/subclasses to cover aspect from the physical world i.e. location, objects, etc. as well as aspects related to the users, their

profiles (including their preferences) and their activities in the smart space. Fig. 5 (b) includes the main properties linked to each

class/subclass. Wherein, these properties convey more detailed aspects about classes. These entities are to model objective and

subjective context in a smart space.

Fig. 5. DSSoT contextual ontology model: (a) Definition of DSSoT upper ontology, (b) Definition of DSSoT domain-specific ontology for smart spaces

B. DSSoT Cognitive Reasoning Approach

The framework of the cognitive reasoning approach is presented in Fig. 6. The core functionality of this approach is to acquire

context from various diverse resources, and transfer it into semantic knowledge which can be easily shared and accessed across

the service framework. While the service interaction scenarios shown earlier (Fig. 2) describe the details of suggested different

components required to realize different services scenarios in an airport, the framework shown here focuses particularly on the

cognitive-reasoning approach implemented in this article for DSSoT generation. It is composed of the following components,

which act as interdependent modules:

Context Management: it is responsible for handling contextual data from heterogeneous resources. Contextual data

represents proactive, real-time data, stored in a Contextual Data Repository. This contextual data will then be

converted into Web Ontology Language (OWL) representations so that it can be shared and reused by other

components.

Page 13: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

12

Profile Management: it is responsible for handling static profiling data about people, objects and services (an

excerpt of the static data profiles is shown in Fig. 7). This static data is stored in Profiles and Services Repository.

Additionally, this module could handle some events stored by users in calendars or schedules etc. When profile-

stored event is triggered, the date and event type are extracted and passed to the Cognitive Reasoning Engine to

perform the services matching.

Cognitive Reasoning Engine: it is responsible for context processing, including NLP and ontology parsing based on

logical reasoning. Running queries across contextual and profile data for performing services matching is one of the

tasks executed by this component. Reasoning about situational needs initiates either via 1- real-time requests for

services, where facts are extracted from the requests using NLP; or 2- events stored in the user profiles, i.e. triggered

from schedules, habits, etc. Some facts about the event can be extracted and handled by Context Management (CM)

and by Profile Management (PM) for real-time and profile-based events, respectively.

SIoT Ontology: this ontology is proposed in this article (as described above) to model the data which flow within the

proposed DSSoT framework. The SIoT ontology presented in this article is extended from the SSN ontology [25].

Fig. 6. DSSoT Reasoning Framework

Table II shows some examples of pre-defined semantic rules which could be triggered whenever a certain situation takes place.

These rules could be defined by the users or the system administrators.

Page 14: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

13

TABLE II

REASONING RULES FOR CONTEXT-AWARE BEHAVIOR IN DSSOT

Situation Reasoning Rule

Smart phone volume (?u locatedIn BoardingGate) (BoardingGate hasNoiselevel HIGH) VolumeUp();

//Increase volume setting in users’ cell phone

Sleeping (?u locatedIn AirportLounge) (AirportLounge lightLevel LOW) (AirportLounge drapeStatus CLOSED) >> (?u

situation SLEEPING)

//rule to depict sleeping status in an airport lounge sleeping facility

C. DSSoT Service Matching Mechanism

The service matching algorithm presented in Listing 1 acts as a part of proposed cognitive reasoning approach. It is responsible

for matching available services in the service repository with user real-time requests and/or events. This algorithm results in a set

of services which semantically match users’ situations. Consider an event or user request R and a service profile S. To validate

the degree of relevance between S and R, service properties (i.e. type, input, output and contextual attributes) are matched with

facts in R.

As shown in Table III, five different categories can generally classify a match between S and R [26]. In this article, more generic

service matching categories are utilized:

Perfect match: Includes both Exact and PlugIn matches, where the resulting services can completely meet the users’

requests.

Partial match: Includes both Subsume and Intersection matches, such that the result can partially meet users’

requests.

Not relevant: Known as the Fail match. Indicates that services are not capable of providing the users’ requests and

thus will not be returned in the result.

TABLE III

SERVICE MATCHING RELEVANCE CATEGORIES [36], [37]

Rule Matching Relevance

[Rule 1] Exact If service S and request R are equivalent, then the match is Exact. (R = S)

[Rule 2] PlugIn If request R is a super-concept of service S, then the match is a PlugIn. (R ⊃ S)

[Rule 3] Subsume

If request R is a sub-concept of service S, then the match is Subsume. (R ⊂ S)

[Rule 4] Intersection

If the intersection of service S and request R is satisfactory, then the match is Intersection (R ∩ S)

[Rule 5] Fail If service S and request R are not equivalent concepts, then the match is a Fail (R ≠ S)

As shown in Fig. 7, the proposed matching algorithm is designed to return those services that fit into one of the three categories

(Perfect, Partial, Not-relevant) based on user or event-based requests extracted from user profiles. The process is done in two

steps: 1- situation identification and 2- situational goal detection. The algorithm starts by matching against a set of all the

Page 15: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

14

available services (S) in a service repository (n). The first step filters out services which are not of the event-type specified in

request R. Events and their semantically-matched services are stored in advance in the event profile. This step results in a smaller

set of services (n-x) that are of type Rt. The second step filters out services whose output properties, which are available in the

service profile, do not match the values in R. This second step again yields a smaller set of services (n-x-y), so that the services

returned are of type Ro. The services’ inputs (si) in (n-x-y) are queried. If si is already provided as a contextual concept with R

(e.g. user identity, time, location), or can be provided via the user’s profile (e.g. user preferences) the matching result is classified

as a Perfect match. Otherwise, the match is classified as a Partial match (see Fig7 and Listing I for details).

LISTING I

Semantic services matching algorithm

Fig. 7. Services filtering mechanism for DSSoT generation

Page 16: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

15

VII. EMPIRICAL PERFORMANCE ANALYSIS

A. Empirical Analysis

In this section we provide an analysis of the worst-case time requirement of the reasoning approach as a function of its input size,

particularly, in terms of Big O-notation. The Big O notation is a measurement used in complexity theory to describe how fast a

function grows or declines over time [27], [28]. Thus, according to the Big-O notation, the running time complexity of a certain

function f becomes big-O of f(n). The time complexity order of O function starting from the slowest growing one to the fastest is

as follows: a function of notation O(1) is a constant function, a function with O(log n) notation is a logarithmic function, O(n)

function is linear and O(n2) is quadratic functions. In this section we present several usability scenarios applying the common

location-based vs our proposed cognitive reasoning approach thus we can observe their run-time complexity and contextual data

growth rate to demonstrate their performance from a complexity analysis view point.

The common reasoning approaches provided in literature consider processing about the objective context represented in spatio-

temporal elements, i.e. Location, as the input for reasoning and service matching based on explicit search requests [21]-[23].

This reasoning mechanism is referred to as Location-based Reasoning (LR) in this section. Our contribution instead proposes

extracting objective and subjective elements about users’ situations from proactive contextual data or from static profiles,

thereby allowing for reasoning about situational needs. We refer to this approach as Cognitive Reasoning (CR).

* Run-time complexity: In an airport, consider that passengers have various service authorization levels, according to their

status, i.e. frequent traveler, normal traveler, airport employee, random visitor.

Use Case 1: Consider a passenger sending request (R) to access smart services available at the boarding gate. Utilizing LR, the

passenger’s identity is going to be first matched with their corresponding profile; next his/her access permission level will be

identified. Thus the number of operations (n) undertaken by LR to process each R is in order of O (n2). Utilizing CR, upon the

passenger’s first R his/her profile will be retrieved, along his/her their identity and service authorization level. For each R after

the initial R, no further identification or verification will be needed. Thus, only (n) operations will be required to meet each R. In

this sense, the time complexity to process every, after the initial one, is only increased by an order of O (n) in the CR approach

(see Fig. 9 (a)).

Use Case 2: Consider an update on the boarding time sent directly as an information service to registered passengers who are

waiting at the boarding gate. As a result of this update, an announcement must be sent to those passengers who have a connecting

flight. Using the LR algorithm, the destinations of all the passengers must be processed before an announcement can be sent.

This makes the time complexity of (n) operations needed by LR to become with order of O(log n). In contrast, using the CR

algorithm, in which destinations are processed in advance, certain announcements will be sent to corresponding passengers

directly, so that the time complexity of CR becomes more simplified with an order of O(1) (see Fig. 9 (a)).

Page 17: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

16

Fig. 9. Empirical Runtime Complexity Analysis. (a) Run-time complexity graph. (b) Contextual data growth rate graph.

* Contextual data growth rate: The contextual data growth represents the amount of contextual data needed to run a given

function’s operations (n) in proportion to the number of a service’s users. Utilizing LR, the amount of contextual data increases

over time to become with an order of O(n) which is needed to be fetched and stored to complete the reasoning operations, as

indicated in the graphs of Use Cases 1 & 2 in Fig. 9 (b). On the other hand, since the amount of data needed to run the operations

of CR is fetched and stored in advance for all users to run all the necessary operations, the contextual data increase remains

constant at an order of O(1) for all users after fetching the initial required context. This indicates a significant improvement

regarding the amount of computational power needed by CR in comparison to that needed by LR.

B. Precision & Recall Evaluation

A comparison between the CR and the LR is presented in this section by calculating the precision and the recall rates. Consider a

set of relevant services (R) within a large set of advertised services (A) (R ⊆ A), we define:

Recall: The number of relevant services retrieved, divided by the total number of relevant services in the services

repository. The highest value of recall is achieved when all relevant items are retrieved.

Precision: The number of relevant services retrieved, divided by the total number of services retrieved. The highest

value of precision is achieved when only relevant items are retrieved.

The results are divided into three categories: A, B and C, where A is the number of relevant services retrieved; B is the number

of relevant services not retrieved; and C is the number of irrelevant services retrieved. For this evaluation, we used a synthetic

context dataset with 3,057 triples (or 600 OWL classes and instances) and we created a registry with a number of 30 advertised

smart services which typically exist in the airport. We queried this registry with requests using the proposed service matching

algorithm identified in section VI. We calculated the recall and precision rates using the results yielded from running our queries.

We compared these calculations with queries using user’s current location (LR approach) to identify service relevance.

It is worth mentioning that we conducted an initial experiment to compute the precision and recall based on two queries: 1- Find

Page 18: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

17

all Services in the Airport that can facilitate my “travel”; and 2- Find all Services in the Airport “lounge”. The precision and

recall values we received from CR were trivial (100% average precision in each location). Kanthavel et al. [29] offers an

explanation for these unrealistic results: Semantic Web matching techniques have some limitations due to matching with

semantically-tagged descriptions that in this case requires some knowledge of terms related to the services from the service

requestor. Hence, in the initial two queries we assumed that the service requestor has some knowledge about the terms “travel”

and “lounge”, and therefore the results we obtained were unrealistic. We then used very generic queries that would not assume

any previous knowledge of service-related terms in a second round of experiments. The results are shown in Table IV.

Query 1: “What kind of available services can help me today?”

TABLE IV

DSSoT Query 1 Precision and Recall results Location 1 – Airport

terminal (around check-in

counters)

Location 2 – Airport gateways and lounges

Location 3 – Boarding gate

Location-aware

Reasoning (LR)

Matching result A = 5, B = 4, C = 2 A = 4, B = 2, C = 3 A = 4, B = 3, C =5

Precision (%) 50% 60% 50%

Recall (%) 60% 50% 40%

Cognitive Reasoning (CR)

Matching result A = 5, B = 1, C = 2 A = 3, B = 2, C = 1 A = 8, B = 2, C = 1

Precision (%) 80% 60% 80%

Recall (%) 70% 70% 90%

The query was designed to return all services that are currently available in all locations at the airport. The LR approach will

process the user location each time it changes. The CR approach queries the user’s profile and schedule to compute all the

relevant services that would meet the users’ goals in location-independent manner.

There are 19 available services in the set of advertised services. The LR approach retrieves only the services that exist close to

the user in each location. Since there is no specification in the query as to the required types of services, the LR approach

retrieves all the services available in each location. The CR approach instead selects services that match the user’s preferences

and schedule. Thus, a user whose schedule states that he/she has a flight and whose preferences indicate certain favorite

restaurants, cafes, etc., then only the services matching this criteria will be selected. The results from running Query 2, shown

below, are provided in Table V. It is obvious that the precision and recall values of CR are better than those of LR as it returns

services matching the user’s preferences.

Query 2: “What are the services available here?

Table V

DSSoT Query 2 Precision and Recall results Location (Lounge)

Location-aware Reasoning (LR)

Matching result (services) A = 5, B = 2, C = 6

Precision (%) 70%

Recall (%) 40%

Cognitive Reasoning (CR)

Matching result (services) A = 6, B = 1, C = 2

Precision (%) 80%

Recall (%) 70%

Page 19: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

18

Assuming that the user moved to a certain lounge area, this query is targeted to return all services types in the location “lounge”.

While the LR approach returns all available services that are located in the lounge, the CR approach returns only relevant

services which match the user’s preferences and that are available in the lounge. The CR approach thus achieves greater

precision and recall than the LR approach.

VIII. CONCLUSION

The SIoT exceeds the paradigm of the more traditional IoT with its improved intelligence and context-awareness in addition to

the user-friendliness and connectivity proposed as a part of its infrastructure. Addressing intelligence and context-awareness in

SIoT is still in an early stage of research and investigation and it acts as the article’s main contribution. In this article, a cognitive

reasoning approach is proposed to characterize users’ situations in smart spaces, i.e., an airport, allowing the discovery of

relevant smart services that match users’ needs. To benefit from this reasoning approach, a novel service discovery framework in

SIoT, namely DSSoT has been provided. Whereby, after characterizing users’ situational needs, a semantic matching of these

needs with available smart services takes place to generate a filtered list of services. Accordingly, a temporal social structure

combining the filtered services will be created to allow users’ direct interaction in a manner similar to SNS. The goal of the

proposed reasoning and service discovery framework is to enhance intelligence in SIoT, by improving smart services discovery

and adaptability to users’ situational needs and eventually improve user experience in smart spaces. The application Airport

Dynamic Social is provided in order to demonstrate the implementation of DSSoT in a real-life setting. An empirical study

shows the improved services’ adaptability achieved by the proposed cognitive approach compared to the location-based

reasoning approach found in the literature. Several future directions are being studied, primarily focusing on integrating the

DSSoT with security supports to address privacy issues, a crucial obstacle to leverage DSSoT adoption in various other SIoT

environments. In the future, we plan to extend the proposed service framework in other examples of smart spaces. Additionally,

we plan to investigate the issues of physical objects, things, identity and access management to ensure privacy and security in

SIoT scenarios.

Page 20: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

19

BIOGRAPHIES

Dina Hussein is a research engineer, technology and innovation analyst at Orange Labs, France. She received her PhD in

Computer Science from Institut Mines-Telecom, Telecom SudParis and Paris 6 UPMC University, France in 2015. Her research

focuses on IoT, socially enhanced services, semantic technologies, identity management and access control in future networks.

Contact her at [email protected] or [email protected]

Son N. Han is a co-founder and COO of Mevry Co., Paris, France. He received the M.S. degree in computer science from the

University of Seoul, Seoul, Korea, in 2009, and the Ph.D. degree in Computer Networks at Institut Mines-Telecom, Telecom

SudParis, Evry, France, in 2015. His research includes Internet of Things and Web-based Communication. Contact him at

[email protected].

Gyu Myoung Lee is a senior lecturer at the Liverpool John Moores University and an adjunct professor at the Korea Advanced

Institute of Science and Technology (KAIST). His research focuses on future networks and services. Lee received a PhD from

KAIST. Contact him at [email protected]

Noël Crespi is a professor and Program Director, leading the Service Architecture Lab (http://servicearchitecture.wp.tem-

tsp.eu/) at Institut Mines-Telecom, Telecom SudParis. Crespi received a PhD from Paris VI University. His research focuses on

service architecture, and the Internet of Things, people, and services. Contact him at [email protected]

Emmanuel Bertin is an Orange Expert on Future Networks and Communication Services. He holds a PhD from Paris 6 UPMC

University. He has published 3 books and more than 60 papers in international journals and conferences. He is involved in

several Technical Program Committees and recently chaired the 19th ICIN conference on Innovations in Clouds, Internet and

Networks. Contact him at [email protected]

REFERENCES

[1] L. Atzori, A. Iera, and G. Morabito, “The internet of things: A survey,” Computer networks, vol. 54, no. 15, pp. 2787-2805, Oct. 2010.

[2] O. Vermesan, and P. Friess, “Internet of Things-Global Technological and Societal Trends From Smart Environments and Spaces to

Green ICT,” River Publishers, 2011.

[3] L. Atzori, A. Iera, and G. Morabito, “From “smart objects” to “social objects”: The next evolutionary step of the internet of things,” IEEE

Communications Magazine, vol. 52, no. 1, pp. 97-105, Jan. 2014.

[4] L. Atzori, A. Iera, G. Morabito, and M. Nitti, “The Social Internet of Things (SIoT) – When social networks meet the Internet of Things:

Concept, architecture and network characterization,” Computer networks, vol. 56, no. 16, pp. 3594-3608, Nov. 2012.

[5] D. Hussein, S. Park, and N. Crespi, “A cognitive context-aware approach for adaptive services provisioning in Social Internet of Things,”

in Proc. IEEE International Conference on Consumer Electronics, Las Vegas, USA, pp. 192-193, Jan. 2015.

[6] D. Hussein, S. Park, S. Han, and N. Crespi, “Dynamic Social Structure of Things: A Contextual Approach in CPSS,” IEEE Internet

Computing Magazine, vol. 19, no. 3, pp. 12-20, May. 2015.

[7] M. Zorzi, A. Gluhak, S. Lange, and A. Bassi, “From today’s intranet of things to a future internet of things: a wireless-and mobility-

related view,” IEEE Wireless Communications, vol. 17, no. 6, pp. 44–51, 2010.

[8] A. Al-Fuqaha, M. Guizani, M. Mohammadi, M. Aledhari, and M. Ayyash, “Internet of things: A survey on enabling technologies,

protocols, and applications,” IEEE Communications Surveys & Tutorials, vol. 17, no. 4, pp. 2347-2376, Jun. 2015 .

[9] P. Mendes, “Social-driven Internet of connected objects,” In Proceedings of the Interconnected Smart Objects with the Internet Workshop,

March 2011.

[10] M. Al-garadi, K.Varathan, S.Ravana, E.Ahmed, and V. Chang, “Identifying the influential spreader in multilayer interaction online social

networks,” Journal of Intelligent & Fuzzy Systems, May 2016.

[11] L. Ding, P. Shi, and B. Liu, “The clustering of Internet, Internet of things and social network,” In Proceedings of 3rd International

Symposium on Knowledge Acquisition and Modeling (KAM), pp. 417-420, Oct. 2010.

[12] M. Nitti, R. Girau, A. Floris, and L. Atzori, “On adding the social dimension to the Internet of vehicles: Friendship and middleware,” In

Proceedings of IEEE International Black Sea Conference on Communications and Networking (BlackSeaCom), pp. 134-138, May. 2014

[13] S. Bhardwaj, T. Ozcelebi, J. Lukkien, and C. Uysal, “Resource and service management architecture of a low capacity network for smart

spaces,” IEEE Trans. Consumer Electron., vol. 58, no. 2, pp. 389-396, May. 2012.

[14] J. Y. Hong, E. H. Suh, and S. J. Kim, “Context-aware systems: A literature review and classification,” Expert Systems with Applications,

vol. 36, no. 4, pp. 8509-8522, May. 2009.

[15] P. Belimpasakis, and R. Walsh, “A combined mixed reality and networked home approach to improving user interaction with consumer

electronics,” IEEE Trans. Consumer Electron., vol. 57, no. 1, pp. 139-144, Feb. 2011.

[16] A. M. Ortiz, D. Hussein, S. Park, S. N. Han, and N. Crespi, “The Cluster Between Internet of Things and Social Networks: Review and

Research Challenges,” IEEE Internet of Things Journal, vol. 1, no. 3, pp. 206-215, June. 2014.

[17] A. Pintus, D. Carboni, and A. Piras, “Paraimpu: a platform for a social web of things,” In Proceedings of ACM 21st international

conference companion on World Wide Web, Lyon, France, pp. 401-404, Apr. 2012.

[18] C. Bettini, O. Brdiczka, K. Henricksen, J. Indulska, D. Nicklas, A. Ranganathan, and D. Riboni, “A survey of context modelling and

reasoning techniques,” Pervasive and Mobile Computing, vol. 6, no. 2, pp. 161-180, Apr. 2010.

Page 21: LJMU Research Onlineresearchonline.ljmu.ac.uk/id/eprint/5754/1/DSSoT- MR2- FV... · 2019-05-01 · SIoT builds on the emerging concept of social objects [3]. In which, devices and

20

[19] C. Perera, A. Zaslavsky, P. Christen, and D. Georgakopoulos, “Context aware computing for the internet of things: A survey,” IEEE

Communications Surveys & Tutorials, vol. 16, no. 1, pp. 414-454, Feb. 2014.

[20] J. Byun, and S. Park, “Development of a self-adapting intelligent system for building energy saving and context-aware smart services,”

IEEE Trans. Consumer Electron., vol. 57, no. 1, pp. 90-98, Feb. 2011.

[21] C. Y. Leong, A. R. Ramli, and T. Perumal, “A rule-based framework for heterogeneous subsystems management in smart home

environment,” IEEE Trans. Consumer Electron., vol. 55, no. 3, pp. 1208-1213, Aug. 2009.

[22] B. Chihani, E. Bertin, and N. Crespi, "Programmable Context Awareness Framework," Journal of Systems and Software (JSS), volume 92,

pp. 59-70, Jun. 2014.

[23] M. Munoz-Organero, G. A. Ramírez-González, P. J. Munoz-Merino, and C. D. Kloos, "A collaborative recommender system based on

space-time similarities." IEEE Pervasive Computing, vol. 9, no. 3, pp. 81-87, Jul. 2010.

[24] P. Barnaghi, M. Bauer, and S. Meissner, “Service modelling for the Internet of Things,” In Proceedings of IEEE 2011 Federated

Conference in Computer Science and Information Systems (FedCSIS), pp. 949-955, Sep. 2011.

[25] M. Compton, P. Barnaghi, L. Bermudez, R. GarcíA-Castro, O. Corcho, S. Cox, J. Graybeal, M. Hauswirth, C. Henson, A. Herzog, and V.

Huang, “The SSN ontology of the W3C semantic sensor network incubator group,” Web Semantics: Science, Services and Agents on the

World Wide Web, 17, 25-32, Dec. 2012.

[26] 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.

[27] J. McConnell, “Analysis of algorithms,” Jones & Bartlett Publishers, Sep. 2009. [28] C. H. Papadimitriou, “Computational complexity,” John Wiley and Sons Ltd., pp. 260-265, Jan. 2003.

[29] R. Kanthavel, R., K. Maheswari, and N. Padmanabhan,"Information Retrieval based on Semantic Matching Approach in Web Service

Discovery," International Journal of Computer Applications, vol. 64, no. 16, Jan. 2013.