# Design and Implementation of a Vehicle Social Enabler Based on Social Internet of Things

Authors: Taehwan Shin; Jinsung Byun
Journal: Mobile Information Systems
 (2016)

---

## Abstract

In recent years, the combination of novel context-aware systems with the Internet of Things (IoT) has received great attention with the advances in network and context-awareness technologies. Various context-aware consumer electronics based on IoT for intelligent and personalized user-centric services have been introduced. However, although the paradigm of the IoT has evolved from smart objects into social objects, the existing context-aware systems have not reflected the changes in these paradigms well. Therefore, this paper proposes a social enabler (S-Enabler) in order to overcome this limitation. The S-Enabler plays an important role in converting the existing objects into social objects. This paper presents the middleware architecture and cooperation processes for a social IoT-based smart system. In this paper, the S-Enabler is designed to be applied to a vehicle and an energy saving service is introduced by using the S-Enabler. The proposed energy saving service can reduce energy consumption and fuel consumption based on social behaviors such as sharing or competition. The performance of the S-Enabler is discussed through a simple vehicle service scenario. The experimental results show that the S-Enabler reduced fuel consumption by up to 31.7%.


---

## Body

## 1. Introduction

With the development of context-awareness technology, various spaces, such as the home or the office, are becoming smart spaces [1–3]. In smart spaces, for example, various sensors gather the environmental and situational context, and smart systems recognize the user’s situations or preferences, and various service providers then serve personalized services to users. Recently, such context-aware systems have been combined with the Internet of Things (IoT).The IoT is a new ICT (information and communications technology) paradigm, and this paradigm shift is attributed to the advanced connectivity of various things, such as systems, devices, and services. That is, things are able to communicate with each other and provide smart services autonomously. Various IoT-based applications and services have begun to emerge in various areas such as home automation, healthcare, vehicle management, and energy management [4–9]. In the latest consumer product exhibition, various consumer electronics based on IoT that have been newly released also reflect this technical trend.IoT is evolving continuously, as shown in Figure1. The early IoT focused on improved interoperability and connectivity of objects (things). These objects are connected objects. In this stage, the standard of communication between objects, network convergence, and the address management of various objects were important issues. The current IoT is focused on interactivity with the surrounding context. In other words, various objects provide intelligent services to users through the interaction with the surrounding context. These objects are smart objects. Recently released smart consumer electronics are types of smart objects with the ability to cooperate with other smart devices and recognize surrounding environments in order to provide smart services. The next step of the IoT is the object socialization. In this stage, the objects can configure their social network themselves and provide more advanced services through the social behavior, such as competition, collaboration, and sharing. These objects are social objects. This paper focuses on a social object and proposes the IoT-based LED car enabler, named a social enabler (S-Enabler), to use connected objects or smart objects as social objects in vehicle environments.Figure 1
Paradigm of the Internet of Things.Environmental issues, such as climate change, are threatening humanity. Fossil fuels are being depleted because of a sharp increase in energy consumption. Some environmental experts expect that fossil fuels will be exhausted completely in the not-too-distant future. For this reason, Green ICT has become increasingly essential in recent years. Therefore, this paper presents an energy saving scheme using the S-Enabler. In other words, the proposed energy saving scheme reduces the fuel consumption of a car through social behavior, such as competition, collaboration, and sharing. The S-Enabler has the following features:(i)
Smart Service Provision Based on Social Behavior in the Social IoT. In recent years, various consumer devices have been equipped with microprocessors and network transceivers. These devices are part of the IoT and can interact with other devices and provide services to users autonomously, which is called the smart IoT. Furthermore, as described above, the paradigm of the IoT has changed from smart IoT to social IoT. Therefore, the S-Enabler is designed to cooperate with networked devices and utilizes a short-range wireless communication technology, particularly Bluetooth, for establishing the social IoT. This paper also introduces an energy saving service using the S-Enabler based on the social IoT.
(ii)
Management of Multiobjects and Multiroles. There were many changes in the role of the objects in the IoT. In the past, the object mainly had one-role. This paper calls it one-object one-role (O2OR). For example, a mobile phone was used for communication between people and a sensor was used for gathering environmental information. In recent years, the object has evolved into a multirole-object. That is, the object has various roles. This paper calls it one-object multirole (O2MR). For example, a modern smartphone has various functions, such as communications, social network service (SNS), camera, messenger, and sensor. In the future, the object will have various roles. Furthermore, the object will be able to create various functions by cooperating with other objects. This paper calls it multiobject multirole (MOMR). Therefore, this paper considers this new paradigm of IoT.
(iii)
Dynamic Configuration of a User-Centric Service Domain. An important feature of the smart space is to configure a service domain around the users. Currently, most spaces have a particular purpose. A user enters into the space in order to receive the particular service. For example, a user exercises in a gym, drives in a car, and works in an office. However, in the future, the convergence of services and spaces will further accelerate. For example, it is possible to receive healthcare services in a car. It is also possible to process work at home. Therefore, the S-Enabler is utilized for configuring the user-centric service domain through the fusion of services and spaces.The rest of this paper is organized as follows: Section2 will describe related works of the IoT. This section will describe various technologies related to the IoT and smart services based on IoT. Section 3 will present the background and paradigm of the IoT. Section 4 will present the system architecture and core technologies. Section 5 will present the implementation of the proposed system with the hardware architecture and smartphone application. Section 6 discusses service scenarios and presents some experiments on energy saving. Finally, the conclusion will be given in Section 7.


## 2. Related Works

### 2.1. Enabling Technologies for IoT

Recently, enabling technologies for IoT have been widely studied around the world. Cirani et al. [10] proposed a scalable and self-configuring architecture for the IoT. This architecture aimed to provide automated service and resource discovery mechanisms with no human intervention for configuration. Perumal et al. [11] proposed an interoperability framework for the implementation of a smart home based on heterogeneous home networks. This framework utilized the simple object access protocol (SOAP) technology for providing platform-independent interoperation among heterogeneous systems. Wu and Fu [12] proposed a framework in order to improve interactivity between humans and systems. Özçelebi et al. [1] suggested a lightweight system architecture for discovery, monitoring, and management of the objects that form the smart space, such as nodes, services, and resources. In particular, this system architecture was utilized for the limited environment in which the objects had low resource capacity.


### 2.2. Applications and Services Based on IoT

The topic of development of applications and services based on IoT has been widely studied. Islam et al. [4] reviewed IoT-based healthcare technologies, including network architectures, platforms, and applications, and also presented industrial trends in IoT-based healthcare solutions. Kelly et al. [5] discussed effective implementation for IoT used for environmental condition monitoring in homes based on a low-cost ubiquitous sensing system. Li et al. [6] presented an IoT application in the form of a smart community with cooperating objects (Neighborhood Watch and Pervasive Healthcare). Li and Yu [7] presented the design of a smart home system based on IoT and service component technologies. Chong et al. [8] analyzed the characteristics of a smart home system and designed and implemented a smart home system based on the IoT for the flexible and convenient control of a home system.


### 2.3. Social IoT

Recently, there have been a lot of research activities integrating social networking concepts into the IoT. Atzori et al. [13] presented the concept, architecture, and network characterization of the social IoT. Their paper proposed the policies for the establishment and the management of social relationships between objects. A possible architecture for the social IoT was also proposed. Mendes [14] presented social-driven Internet of connected objects. The paper discussed the technology for ensuring an efficient interaction among the physical, virtual, and social world. Nitti et al. [15] proposed a subjective model for trustworthiness evaluation based on the social Internet of Things. This model was used for computing the trustworthiness of its neighbors. Guo et al. [16] proposed the opportunistic IoT, which improved the harmonious interaction among humans, society, and smart objects. Their paper presented the innovative application areas and discussed the challenges caused by this new computing paradigm.As described above, the IoT has been extensively studied. However, the study in this current paper differs in two aspects from the previous works. First, this study applies the new ICT paradigm to design and implement the proposed system. Second, this study presents various smart services in a car through cooperation in the vehicle social network.


## 2.1. Enabling Technologies for IoT

Recently, enabling technologies for IoT have been widely studied around the world. Cirani et al. [10] proposed a scalable and self-configuring architecture for the IoT. This architecture aimed to provide automated service and resource discovery mechanisms with no human intervention for configuration. Perumal et al. [11] proposed an interoperability framework for the implementation of a smart home based on heterogeneous home networks. This framework utilized the simple object access protocol (SOAP) technology for providing platform-independent interoperation among heterogeneous systems. Wu and Fu [12] proposed a framework in order to improve interactivity between humans and systems. Özçelebi et al. [1] suggested a lightweight system architecture for discovery, monitoring, and management of the objects that form the smart space, such as nodes, services, and resources. In particular, this system architecture was utilized for the limited environment in which the objects had low resource capacity.


## 2.2. Applications and Services Based on IoT

The topic of development of applications and services based on IoT has been widely studied. Islam et al. [4] reviewed IoT-based healthcare technologies, including network architectures, platforms, and applications, and also presented industrial trends in IoT-based healthcare solutions. Kelly et al. [5] discussed effective implementation for IoT used for environmental condition monitoring in homes based on a low-cost ubiquitous sensing system. Li et al. [6] presented an IoT application in the form of a smart community with cooperating objects (Neighborhood Watch and Pervasive Healthcare). Li and Yu [7] presented the design of a smart home system based on IoT and service component technologies. Chong et al. [8] analyzed the characteristics of a smart home system and designed and implemented a smart home system based on the IoT for the flexible and convenient control of a home system.


## 2.3. Social IoT

Recently, there have been a lot of research activities integrating social networking concepts into the IoT. Atzori et al. [13] presented the concept, architecture, and network characterization of the social IoT. Their paper proposed the policies for the establishment and the management of social relationships between objects. A possible architecture for the social IoT was also proposed. Mendes [14] presented social-driven Internet of connected objects. The paper discussed the technology for ensuring an efficient interaction among the physical, virtual, and social world. Nitti et al. [15] proposed a subjective model for trustworthiness evaluation based on the social Internet of Things. This model was used for computing the trustworthiness of its neighbors. Guo et al. [16] proposed the opportunistic IoT, which improved the harmonious interaction among humans, society, and smart objects. Their paper presented the innovative application areas and discussed the challenges caused by this new computing paradigm.As described above, the IoT has been extensively studied. However, the study in this current paper differs in two aspects from the previous works. First, this study applies the new ICT paradigm to design and implement the proposed system. Second, this study presents various smart services in a car through cooperation in the vehicle social network.


## 3. Paradigm of the Internet of Things

The IoT is a new networking paradigm in which a variety of things (e.g., networked devices, sensors, and actuators) become an integral part of the Internet. In other words, the various things become “smart things” that are equipped with microprocessors and network transceivers, which enable them to communicate with each other and provide smart services autonomously. Various products and service applications of the IoT have started to be released in various areas, such as home automation, energy management, healthcare, and vehicle management. The important features of an IoT-based smart system can be summarized as follows:(i)
First, it improves the capability of collaboration: the IoT-based smart systems can create/provide information and services through collaboration with other smart systems. This is possible owing to intense interactions among smart systems. The IoT-based systems consist of different and heterogeneous objects that can communicate with each other transparently and seamlessly.
(ii)
Second, improved situation awareness ability is also an important characteristic: IoT-based smart systems often aim at enhanced recognition of the surrounding environments compared to the existing context-aware systems. With the changes in network paradigms to IoT, the capability of situation awareness can be greatly improved.
(iii)
Lastly, it can provide enhanced service quality, such as guaranteeing the quality of experience (QoE): information collected from various objects in the IoT forms big data and it is possible to provide user-centric services by utilizing this big data. It is impossible to communicate with each other and create/provide intelligent services for users autonomously unless the components of the IoT are smart objects. These objects can perform various functions to create/provide intelligent services through the interaction with various objects. The IoT has the important ability to support novel applications and services based on cooperation between objects in more effective and efficient ways.The proposed system in this paper, S-Enabler, is designed and implemented by applying IoT-enabling and IoT application technologies. This paper also introduces a social IoT application, an energy saving vehicle (ESV) that reduces the fuel consumption through cooperation between smart devices.


## 4. System Architecture

### 4.1. Overview of System Architecture

The suggested system, S-Enabler, is designed reflecting on the novel IoT paradigm. The S-Enabler was designed to implement social service domains. Figure2 illustrates an overview of the S-Enabler and roughly describes how the S-Enabler provides social vehicle services to users. The S-Enabler aims to convert a normal space into a smart social space through intervehicular communications between the S-Enabler and a user’s smartphone. The S-Enabler communicates with the user’s smartphone via a wireless personal area network (WPAN) based on the Bluetooth technology. In addition, the S-Enabler communicates with other S-Enablers by cooperation with user’s smartphone with the Long-Term Evolution (LTE) network. The S-Enabler has three important functions. First, it has mutual cooperation functionality with smart devices. The mutual cooperation with smart devices is implemented through a personal area network (PAN). This study uses Bluetooth technology for mutual cooperation. Because most modern smart devices have Bluetooth capability, this paper uses Bluetooth technology for PAN among various PAN standards. The S-Enabler not only receives information through cooperation with smart devices but also recognizes the user. It is necessary to implement user-centric service domains. Second, it has the function of awareness of surrounding environments. This function enables smart devices to provide intelligent services such as context-aware services. Accurate recognition of the surrounding environment has the important role of increasing service satisfaction. Third, it has the function of configuration of social vehicle networks. The user in a car configures a social network between vehicles through the S-Enabler. The smart device can create various smart services through cooperation between vehicles based on this social vehicle network. This study will also introduce a social IoT application, an ESV that reduces fuel consumption by using this function.Figure 2
Overview of the social enabler (S-Enabler).


### 4.2. Middleware Architecture of the S-Enabler

In this paper, the middleware architecture for the S-Enabler is designed in order to implement the function explained above. Figure3 shows the middleware architecture for the proposed system. The middleware architecture consists of six types of management modules according to the functions of the S-Enabler. The six types of management modules are the context management module for recognizing the surrounding environment, the cooperation management module for collaboration between the smart devices, the social management module for establishment of a safe and reliable vehicle social network (e.g., discovering the objects and assessing object reputations), the session management module for configuring a seamless service domain, the service management module for service creation and decisions, and the knowledge repository for storing various pieces of information required for operating as a social object. The detailed description of the middleware architecture is as follows.Figure 3
Middleware architecture of the S-Enabler.


#### 4.2.1. Cooperation Management Module (CooM)

The CooM performs the role of enabling autonomous collaboration between various smart devices. The CooM consists of the connection manager, data requester, and security manager. The connection manager manages the connection between a variety of smart devices and the data requester performs the role of periodically requesting information from smart devices upon the occurrence of a specific event. Lastly, the security manager performs the role of enabling a safe and reliable connection between the smart devices and the S-Enabler. To achieve this, the CooM performs the role of security capability and requirement management, key management, and the authentication and authorization of smart devices.


#### 4.2.2. Context Management Module (ConM)

The ConM manages the collected information and performs the role of recognizing the surrounding environment. In addition, this module plays an important role of generating patterns through analyzing the collected information. The ConM is composed of a context analyzer, the context manager, and the pattern generator. Various data entering the ConM are utilized as information for recognizing the surrounding environment in the context analyzer. Particularly in this paper, recognition of the current status of users will be introduced. Collected information performs the role of either updating the stored information in the knowledge repository (KR) by the context manager, storing it in the KR, or discarding. Lastly, the pattern generator performs the role of generating patterns by analyzing the collected situational information. Such patterns can be utilized for providing the prediction-based services.


#### 4.2.3. Social Management Module (SocM)

The SocM performs the role of establishing the social networks. The role includes object discovery and object reliability verification in order to implement a safe and reliable vehicle social network. The SocM consists of an object discovery manager, object verifier, and object manager. The object discovery manager performs the role of searching for the objects that will have a meaningful relationship with itself. The object verifier inspects whether the found social object is trustworthy and performs a reputation assessment to improve the quality of the social service. The object manager performs the role of registering, authenticating, and authorizing the objects.


#### 4.2.4. Session Management Module (SesM)

The SesM is required to provide a user-centered service. The SesM has two major functions. The first is to provide a user-centric service and the second is to provide a seamless service. The SesM uses the session ID and user ID to provide the above two services. For example, when the service is interrupted, the SesM stores the session ID and user ID with all the related contexts, such as location, service information, and content information. By using the session ID and user ID, the S-Enabler can restart the service at the interrupted point. The policy controller manages various policies and rules. The policies and rules are decided according to the situation. For example, when more than two users enter the same service domain, the priority of the service provision is determined according to predefined policies. In addition, when the user moves into different service domains, the policy controller requests the cloud server to send the relevant policies and rules. The configuration controller organizes a new service environment according to the changes in the situation.


#### 4.2.5. Service Management Module (SerM)

The SerM performs the role of inferring the service based on the context. Through this inference, the SerM configures and manages the service. The SerM is composed of an inference engine, decision manager, and service manager. The inference engine performs the role of inferring the service candidates from a variety of service applications. Then, the most appropriate service is determined by the decision manager. The decision manager correlates the current situation with the service candidates. The service manager performs the role of registering, deleting, and managing the services, also known as convergence.


#### 4.2.6. Knowledge Repository (KR)

The KR manages the use of a database. The KR is a set of components that manages the context, rules and policies, and patterns. The KR also controls the information ontology, service-pattern-look-up table, context, and rules and policies. The KR autonomously updates the database when a new situational event occurs. Furthermore, The KR autonomously modifies the policies and rules to improve the service maintenance and the pattern management efficiency.


### 4.3. Social Cooperation Diagram for Smart Service Provision

The S-Enabler can configure vehicle social networks to provide the user with smart services based on social behavior. In this paper, the social networks refer to the networks that consist of social objects. More specifically, we refer to the social networks as the social interaction among the S-Enablers. We proposed a new vehicle social network based on the smartphone application for smart social services. The S-Enabler can create a variety of useful smart services by utilizing the user’s social behaviors based on the vehicle social network. The S-Enabler plays the role of enabling the application, recognizing the user and social context, learning the pattern, and creating the service. In other words, the S-Enabler has the role of implementing smart service domains based on social behavior. For this, the S-Enabler has three main social cooperation processes (initial connection process, social cooperation process, and service creation process). The ultimate goal of the S-Enabler is to voluntarily cooperate with surrounding smart devices in order to socialize the smart devices. As explained above, the paradigm of the IoT is changing from smart objects to social objects. Thus, the goal of the S-Enabler is to change the smart devices (objects) into social devices (objects). Therefore, the S-Enabler supports the wireless technology to cooperate with surrounding smart devices. This paper uses Bluetooth technology for wireless communications. An advantage of Bluetooth is that it has very low power consumption and recent smart devices, such as smartphones and smart wearable devices, have a Bluetooth transceiver module for wireless communications by default.


#### 4.3.1. Initial Connection Process with a Smart Device

Figure4 shows the initial connection processes between the S-Enabler and a smart device. Initially, when the car starts, the S-Enabler periodically broadcasts an advertising packet. If the advertising packet is received, the smart device sends an initiation request packet. If the initiation request packet is received, the S-Enabler sends an initiation response packet after the authentication process. Then, the S-Enabler initially connects with the smart device. Managing energy consumption is a very important issue because the periodical signal transmission consumes a lot of energy and smart devices, such as smartphones and smart watches, commonly operate by battery. In this study, two options are offered to reduce the energy consumption used in an initiation process. First, the user can make the Bluetooth interface enabled manually. Second, the smart device with our smartphone application utilizes the schedule patterns of the user to decide whether to enable or disable the Bluetooth interface. From the user’s schedule pattern, the smart device derives the probability that the user is riding in a vehicle. Then, the smart device determines the enabling/disabling cycle of the Bluetooth interface on the basis of the derived probability.Figure 4
Sequence diagram of the initial connection process.


#### 4.3.2. Social Cooperation Process

Humans take on various roles according to the situation. A man, for example, has various roles such as a father, a son, an employee of a company, or a member of an interest group. These relations sometimes have a hierarchal structure and sometimes have an egalitarian structure. This study focuses on these characteristics of the human relations and the S-Enabler is designed and implemented considering these social features. Figure5 illustrates the sequence of the social cooperation process and the service creation process.(i)
Situation Recognition. First, the S-Enabler periodically broadcasts signals to recognize surrounding smart devices and creates logical connections. Then, the S-Enabler receives a schedule of the user from the management server and environmental information, such as time, location, and temperature/humidity, from the smart devices. The ConM (context management module) of the S-Enabler aggregates/analyzes this context, generates the patterns, and stores the context and pattern in the KR.
(ii)
Social Cooperation. The SocM of the S-Enabler searches for objects (or smart service domains) that have similarity to the local objects. These similarities include the user’s characteristics and schedules, the types of smart devices, and environmental information. After being verified by the SocM, the object becomes a member of the vehicle social network. The S-Enabler uses the information that is collected via the configured vehicle social network for decision and creation of the social IoT-based smart services.
(iii)
Role Decision. The SerM (service management module) of the S-Enabler assigns a role to each device in the social service domain by evaluating schedule and environmental information (time, location, temp/humidity, etc.). If the role overlaps, the SerM adjusts each role to enable the efficient operation.Figure 5
Sequence diagram of the social cooperation process.


#### 4.3.3. Service Creation Process Based on Social Behavior

Because dynamic role decisions can cause a large amount of resource and energy consumption, the S-Enabler assigns the role to each device according to resource sharing in order to reduce energy consumption. The S-Enabler has the role of managing resources of smart devices in the social service domains and periodically updates the shared resource profile. The S-Enabler infers the context and creates service rules based on social behaviors.


### 4.4. Energy Saving Algorithm Based on Social Behavior

This subsection will introduce an energy saving algorithm based on social behaviors such as competition and sharing. Figure6 shows the energy saving application based on vehicle social networks.Figure 6
Energy saving application based on vehicle social networks.Step 1.
The user first enters the fuel cost that he desires to use for a month (threshold value) and the average fuel consumption per 100 km for the vehicle. Then, the total distance to drive for a month is calculated by using the fuel cost, the fuel consumption per 100 km, and the average price of the gas stations.Step 2.
The recommended driving distance by unit hour can be calculated byD
h
=
D
m
/
(
N
i
×
24
), where D
h, D
m, and N
i refer to the total distance to be able to drive for a month and days in the ith month.Step 3.
The recommended driving distance is compared with the actual driving distance, and the S-Enabler shows the energy saving level through LED lighting. This information can be checked in detail through the user’s smartphone application. The actual driving distance of the user used here is calculated through autonomous cooperation between the S-Enabler and the user’s smartphone. Bluetooth is used for the establishment of PANs. It is possible to save energy by sharing the driving information, such as driving distance, with other vehicles that have a similarity to the user.Step 4.
The shortcoming of this method is that it does not consider geography, vehicle year, and user’s driving style. Therefore, actual fuel costs and driving distance can be used for correcting this error. If there is a credit card that is mainly used for refueling, the fuel cost can be easily collected by the smartphone by using the short message service (SMS) upon making payment. Then, it is possible to obtain more accurate average fuel consumption per 100 km through comparing the actual driving distance and fuel costs. This method cannot be used if a credit card is not used for paying for fuel and in this case the S-Enabler resolves this by establishing vehicle social networks. The S-Enabler corrects the error through comparing the driver’s vehicle with other vehicles that have a similarity in the vehicle social network.By utilizing social behavior, it is possible to resolve the problems in the IoT environments and to create a novel smart service that has high energy efficiency and high user satisfaction, that is, to guarantee the QoE.


## 4.1. Overview of System Architecture

The suggested system, S-Enabler, is designed reflecting on the novel IoT paradigm. The S-Enabler was designed to implement social service domains. Figure2 illustrates an overview of the S-Enabler and roughly describes how the S-Enabler provides social vehicle services to users. The S-Enabler aims to convert a normal space into a smart social space through intervehicular communications between the S-Enabler and a user’s smartphone. The S-Enabler communicates with the user’s smartphone via a wireless personal area network (WPAN) based on the Bluetooth technology. In addition, the S-Enabler communicates with other S-Enablers by cooperation with user’s smartphone with the Long-Term Evolution (LTE) network. The S-Enabler has three important functions. First, it has mutual cooperation functionality with smart devices. The mutual cooperation with smart devices is implemented through a personal area network (PAN). This study uses Bluetooth technology for mutual cooperation. Because most modern smart devices have Bluetooth capability, this paper uses Bluetooth technology for PAN among various PAN standards. The S-Enabler not only receives information through cooperation with smart devices but also recognizes the user. It is necessary to implement user-centric service domains. Second, it has the function of awareness of surrounding environments. This function enables smart devices to provide intelligent services such as context-aware services. Accurate recognition of the surrounding environment has the important role of increasing service satisfaction. Third, it has the function of configuration of social vehicle networks. The user in a car configures a social network between vehicles through the S-Enabler. The smart device can create various smart services through cooperation between vehicles based on this social vehicle network. This study will also introduce a social IoT application, an ESV that reduces fuel consumption by using this function.Figure 2
Overview of the social enabler (S-Enabler).


## 4.2. Middleware Architecture of the S-Enabler

In this paper, the middleware architecture for the S-Enabler is designed in order to implement the function explained above. Figure3 shows the middleware architecture for the proposed system. The middleware architecture consists of six types of management modules according to the functions of the S-Enabler. The six types of management modules are the context management module for recognizing the surrounding environment, the cooperation management module for collaboration between the smart devices, the social management module for establishment of a safe and reliable vehicle social network (e.g., discovering the objects and assessing object reputations), the session management module for configuring a seamless service domain, the service management module for service creation and decisions, and the knowledge repository for storing various pieces of information required for operating as a social object. The detailed description of the middleware architecture is as follows.Figure 3
Middleware architecture of the S-Enabler.


### 4.2.1. Cooperation Management Module (CooM)

The CooM performs the role of enabling autonomous collaboration between various smart devices. The CooM consists of the connection manager, data requester, and security manager. The connection manager manages the connection between a variety of smart devices and the data requester performs the role of periodically requesting information from smart devices upon the occurrence of a specific event. Lastly, the security manager performs the role of enabling a safe and reliable connection between the smart devices and the S-Enabler. To achieve this, the CooM performs the role of security capability and requirement management, key management, and the authentication and authorization of smart devices.


### 4.2.2. Context Management Module (ConM)

The ConM manages the collected information and performs the role of recognizing the surrounding environment. In addition, this module plays an important role of generating patterns through analyzing the collected information. The ConM is composed of a context analyzer, the context manager, and the pattern generator. Various data entering the ConM are utilized as information for recognizing the surrounding environment in the context analyzer. Particularly in this paper, recognition of the current status of users will be introduced. Collected information performs the role of either updating the stored information in the knowledge repository (KR) by the context manager, storing it in the KR, or discarding. Lastly, the pattern generator performs the role of generating patterns by analyzing the collected situational information. Such patterns can be utilized for providing the prediction-based services.


### 4.2.3. Social Management Module (SocM)

The SocM performs the role of establishing the social networks. The role includes object discovery and object reliability verification in order to implement a safe and reliable vehicle social network. The SocM consists of an object discovery manager, object verifier, and object manager. The object discovery manager performs the role of searching for the objects that will have a meaningful relationship with itself. The object verifier inspects whether the found social object is trustworthy and performs a reputation assessment to improve the quality of the social service. The object manager performs the role of registering, authenticating, and authorizing the objects.


### 4.2.4. Session Management Module (SesM)

The SesM is required to provide a user-centered service. The SesM has two major functions. The first is to provide a user-centric service and the second is to provide a seamless service. The SesM uses the session ID and user ID to provide the above two services. For example, when the service is interrupted, the SesM stores the session ID and user ID with all the related contexts, such as location, service information, and content information. By using the session ID and user ID, the S-Enabler can restart the service at the interrupted point. The policy controller manages various policies and rules. The policies and rules are decided according to the situation. For example, when more than two users enter the same service domain, the priority of the service provision is determined according to predefined policies. In addition, when the user moves into different service domains, the policy controller requests the cloud server to send the relevant policies and rules. The configuration controller organizes a new service environment according to the changes in the situation.


### 4.2.5. Service Management Module (SerM)

The SerM performs the role of inferring the service based on the context. Through this inference, the SerM configures and manages the service. The SerM is composed of an inference engine, decision manager, and service manager. The inference engine performs the role of inferring the service candidates from a variety of service applications. Then, the most appropriate service is determined by the decision manager. The decision manager correlates the current situation with the service candidates. The service manager performs the role of registering, deleting, and managing the services, also known as convergence.


### 4.2.6. Knowledge Repository (KR)

The KR manages the use of a database. The KR is a set of components that manages the context, rules and policies, and patterns. The KR also controls the information ontology, service-pattern-look-up table, context, and rules and policies. The KR autonomously updates the database when a new situational event occurs. Furthermore, The KR autonomously modifies the policies and rules to improve the service maintenance and the pattern management efficiency.


## 4.2.1. Cooperation Management Module (CooM)

The CooM performs the role of enabling autonomous collaboration between various smart devices. The CooM consists of the connection manager, data requester, and security manager. The connection manager manages the connection between a variety of smart devices and the data requester performs the role of periodically requesting information from smart devices upon the occurrence of a specific event. Lastly, the security manager performs the role of enabling a safe and reliable connection between the smart devices and the S-Enabler. To achieve this, the CooM performs the role of security capability and requirement management, key management, and the authentication and authorization of smart devices.


## 4.2.2. Context Management Module (ConM)

The ConM manages the collected information and performs the role of recognizing the surrounding environment. In addition, this module plays an important role of generating patterns through analyzing the collected information. The ConM is composed of a context analyzer, the context manager, and the pattern generator. Various data entering the ConM are utilized as information for recognizing the surrounding environment in the context analyzer. Particularly in this paper, recognition of the current status of users will be introduced. Collected information performs the role of either updating the stored information in the knowledge repository (KR) by the context manager, storing it in the KR, or discarding. Lastly, the pattern generator performs the role of generating patterns by analyzing the collected situational information. Such patterns can be utilized for providing the prediction-based services.


## 4.2.3. Social Management Module (SocM)

The SocM performs the role of establishing the social networks. The role includes object discovery and object reliability verification in order to implement a safe and reliable vehicle social network. The SocM consists of an object discovery manager, object verifier, and object manager. The object discovery manager performs the role of searching for the objects that will have a meaningful relationship with itself. The object verifier inspects whether the found social object is trustworthy and performs a reputation assessment to improve the quality of the social service. The object manager performs the role of registering, authenticating, and authorizing the objects.


## 4.2.4. Session Management Module (SesM)

The SesM is required to provide a user-centered service. The SesM has two major functions. The first is to provide a user-centric service and the second is to provide a seamless service. The SesM uses the session ID and user ID to provide the above two services. For example, when the service is interrupted, the SesM stores the session ID and user ID with all the related contexts, such as location, service information, and content information. By using the session ID and user ID, the S-Enabler can restart the service at the interrupted point. The policy controller manages various policies and rules. The policies and rules are decided according to the situation. For example, when more than two users enter the same service domain, the priority of the service provision is determined according to predefined policies. In addition, when the user moves into different service domains, the policy controller requests the cloud server to send the relevant policies and rules. The configuration controller organizes a new service environment according to the changes in the situation.


## 4.2.5. Service Management Module (SerM)

The SerM performs the role of inferring the service based on the context. Through this inference, the SerM configures and manages the service. The SerM is composed of an inference engine, decision manager, and service manager. The inference engine performs the role of inferring the service candidates from a variety of service applications. Then, the most appropriate service is determined by the decision manager. The decision manager correlates the current situation with the service candidates. The service manager performs the role of registering, deleting, and managing the services, also known as convergence.


## 4.2.6. Knowledge Repository (KR)

The KR manages the use of a database. The KR is a set of components that manages the context, rules and policies, and patterns. The KR also controls the information ontology, service-pattern-look-up table, context, and rules and policies. The KR autonomously updates the database when a new situational event occurs. Furthermore, The KR autonomously modifies the policies and rules to improve the service maintenance and the pattern management efficiency.


## 4.3. Social Cooperation Diagram for Smart Service Provision

The S-Enabler can configure vehicle social networks to provide the user with smart services based on social behavior. In this paper, the social networks refer to the networks that consist of social objects. More specifically, we refer to the social networks as the social interaction among the S-Enablers. We proposed a new vehicle social network based on the smartphone application for smart social services. The S-Enabler can create a variety of useful smart services by utilizing the user’s social behaviors based on the vehicle social network. The S-Enabler plays the role of enabling the application, recognizing the user and social context, learning the pattern, and creating the service. In other words, the S-Enabler has the role of implementing smart service domains based on social behavior. For this, the S-Enabler has three main social cooperation processes (initial connection process, social cooperation process, and service creation process). The ultimate goal of the S-Enabler is to voluntarily cooperate with surrounding smart devices in order to socialize the smart devices. As explained above, the paradigm of the IoT is changing from smart objects to social objects. Thus, the goal of the S-Enabler is to change the smart devices (objects) into social devices (objects). Therefore, the S-Enabler supports the wireless technology to cooperate with surrounding smart devices. This paper uses Bluetooth technology for wireless communications. An advantage of Bluetooth is that it has very low power consumption and recent smart devices, such as smartphones and smart wearable devices, have a Bluetooth transceiver module for wireless communications by default.


### 4.3.1. Initial Connection Process with a Smart Device

Figure4 shows the initial connection processes between the S-Enabler and a smart device. Initially, when the car starts, the S-Enabler periodically broadcasts an advertising packet. If the advertising packet is received, the smart device sends an initiation request packet. If the initiation request packet is received, the S-Enabler sends an initiation response packet after the authentication process. Then, the S-Enabler initially connects with the smart device. Managing energy consumption is a very important issue because the periodical signal transmission consumes a lot of energy and smart devices, such as smartphones and smart watches, commonly operate by battery. In this study, two options are offered to reduce the energy consumption used in an initiation process. First, the user can make the Bluetooth interface enabled manually. Second, the smart device with our smartphone application utilizes the schedule patterns of the user to decide whether to enable or disable the Bluetooth interface. From the user’s schedule pattern, the smart device derives the probability that the user is riding in a vehicle. Then, the smart device determines the enabling/disabling cycle of the Bluetooth interface on the basis of the derived probability.Figure 4
Sequence diagram of the initial connection process.


### 4.3.2. Social Cooperation Process

Humans take on various roles according to the situation. A man, for example, has various roles such as a father, a son, an employee of a company, or a member of an interest group. These relations sometimes have a hierarchal structure and sometimes have an egalitarian structure. This study focuses on these characteristics of the human relations and the S-Enabler is designed and implemented considering these social features. Figure5 illustrates the sequence of the social cooperation process and the service creation process.(i)
Situation Recognition. First, the S-Enabler periodically broadcasts signals to recognize surrounding smart devices and creates logical connections. Then, the S-Enabler receives a schedule of the user from the management server and environmental information, such as time, location, and temperature/humidity, from the smart devices. The ConM (context management module) of the S-Enabler aggregates/analyzes this context, generates the patterns, and stores the context and pattern in the KR.
(ii)
Social Cooperation. The SocM of the S-Enabler searches for objects (or smart service domains) that have similarity to the local objects. These similarities include the user’s characteristics and schedules, the types of smart devices, and environmental information. After being verified by the SocM, the object becomes a member of the vehicle social network. The S-Enabler uses the information that is collected via the configured vehicle social network for decision and creation of the social IoT-based smart services.
(iii)
Role Decision. The SerM (service management module) of the S-Enabler assigns a role to each device in the social service domain by evaluating schedule and environmental information (time, location, temp/humidity, etc.). If the role overlaps, the SerM adjusts each role to enable the efficient operation.Figure 5
Sequence diagram of the social cooperation process.


### 4.3.3. Service Creation Process Based on Social Behavior

Because dynamic role decisions can cause a large amount of resource and energy consumption, the S-Enabler assigns the role to each device according to resource sharing in order to reduce energy consumption. The S-Enabler has the role of managing resources of smart devices in the social service domains and periodically updates the shared resource profile. The S-Enabler infers the context and creates service rules based on social behaviors.


## 4.3.1. Initial Connection Process with a Smart Device

Figure4 shows the initial connection processes between the S-Enabler and a smart device. Initially, when the car starts, the S-Enabler periodically broadcasts an advertising packet. If the advertising packet is received, the smart device sends an initiation request packet. If the initiation request packet is received, the S-Enabler sends an initiation response packet after the authentication process. Then, the S-Enabler initially connects with the smart device. Managing energy consumption is a very important issue because the periodical signal transmission consumes a lot of energy and smart devices, such as smartphones and smart watches, commonly operate by battery. In this study, two options are offered to reduce the energy consumption used in an initiation process. First, the user can make the Bluetooth interface enabled manually. Second, the smart device with our smartphone application utilizes the schedule patterns of the user to decide whether to enable or disable the Bluetooth interface. From the user’s schedule pattern, the smart device derives the probability that the user is riding in a vehicle. Then, the smart device determines the enabling/disabling cycle of the Bluetooth interface on the basis of the derived probability.Figure 4
Sequence diagram of the initial connection process.


## 4.3.2. Social Cooperation Process

Humans take on various roles according to the situation. A man, for example, has various roles such as a father, a son, an employee of a company, or a member of an interest group. These relations sometimes have a hierarchal structure and sometimes have an egalitarian structure. This study focuses on these characteristics of the human relations and the S-Enabler is designed and implemented considering these social features. Figure5 illustrates the sequence of the social cooperation process and the service creation process.(i)
Situation Recognition. First, the S-Enabler periodically broadcasts signals to recognize surrounding smart devices and creates logical connections. Then, the S-Enabler receives a schedule of the user from the management server and environmental information, such as time, location, and temperature/humidity, from the smart devices. The ConM (context management module) of the S-Enabler aggregates/analyzes this context, generates the patterns, and stores the context and pattern in the KR.
(ii)
Social Cooperation. The SocM of the S-Enabler searches for objects (or smart service domains) that have similarity to the local objects. These similarities include the user’s characteristics and schedules, the types of smart devices, and environmental information. After being verified by the SocM, the object becomes a member of the vehicle social network. The S-Enabler uses the information that is collected via the configured vehicle social network for decision and creation of the social IoT-based smart services.
(iii)
Role Decision. The SerM (service management module) of the S-Enabler assigns a role to each device in the social service domain by evaluating schedule and environmental information (time, location, temp/humidity, etc.). If the role overlaps, the SerM adjusts each role to enable the efficient operation.Figure 5
Sequence diagram of the social cooperation process.


## 4.3.3. Service Creation Process Based on Social Behavior

Because dynamic role decisions can cause a large amount of resource and energy consumption, the S-Enabler assigns the role to each device according to resource sharing in order to reduce energy consumption. The S-Enabler has the role of managing resources of smart devices in the social service domains and periodically updates the shared resource profile. The S-Enabler infers the context and creates service rules based on social behaviors.


## 4.4. Energy Saving Algorithm Based on Social Behavior

This subsection will introduce an energy saving algorithm based on social behaviors such as competition and sharing. Figure6 shows the energy saving application based on vehicle social networks.Figure 6
Energy saving application based on vehicle social networks.Step 1.
The user first enters the fuel cost that he desires to use for a month (threshold value) and the average fuel consumption per 100 km for the vehicle. Then, the total distance to drive for a month is calculated by using the fuel cost, the fuel consumption per 100 km, and the average price of the gas stations.Step 2.
The recommended driving distance by unit hour can be calculated byD
h
=
D
m
/
(
N
i
×
24
), where D
h, D
m, and N
i refer to the total distance to be able to drive for a month and days in the ith month.Step 3.
The recommended driving distance is compared with the actual driving distance, and the S-Enabler shows the energy saving level through LED lighting. This information can be checked in detail through the user’s smartphone application. The actual driving distance of the user used here is calculated through autonomous cooperation between the S-Enabler and the user’s smartphone. Bluetooth is used for the establishment of PANs. It is possible to save energy by sharing the driving information, such as driving distance, with other vehicles that have a similarity to the user.Step 4.
The shortcoming of this method is that it does not consider geography, vehicle year, and user’s driving style. Therefore, actual fuel costs and driving distance can be used for correcting this error. If there is a credit card that is mainly used for refueling, the fuel cost can be easily collected by the smartphone by using the short message service (SMS) upon making payment. Then, it is possible to obtain more accurate average fuel consumption per 100 km through comparing the actual driving distance and fuel costs. This method cannot be used if a credit card is not used for paying for fuel and in this case the S-Enabler resolves this by establishing vehicle social networks. The S-Enabler corrects the error through comparing the driver’s vehicle with other vehicles that have a similarity in the vehicle social network.By utilizing social behavior, it is possible to resolve the problems in the IoT environments and to create a novel smart service that has high energy efficiency and high user satisfaction, that is, to guarantee the QoE.


## 5. Implementation

This study implemented the proposed system, S-Enabler. In this section, technical realization of the S-Enabler is addressed based on the hardware architecture and the feasible smartphone application. Figure7 illustrates the main features of the prototype of the S-Enabler.Figure 7
Features of the prototype of the S-Enabler.


### 5.1. Hardware Architecture

Figure8 shows the hardware architecture and prototype of the proposed system. The hardware architecture functionally consists of four parts: the main processor, the network and communication part, the LED and LED driving unit part, and the power management part. This paper utilizes an 8-bit microcontroller as the main CPU. The main processor part has the main role of running and storing the middleware, processing events, analyzing contexts, and generating and managing patterns. The network and communication part is composed of a Bluetooth transceiver module. In this paper, we use the Bluetooth standard for intervehicular communications. Particularly, we used Bluetooth 4.0 with Bluetooth low energy (BLE) technology. The BLE technology provides considerably reduced energy consumption and cost compared to the previous version of Bluetooth. In addition, currently, the BLE is widely used as a WPAN by various smart devices such as smartphones and wearable devices due to these advantages. Thus, systems that want to cooperate with various smart devices should use the BLE. For these reasons, we used Bluetooth 4.0 with BLE for building a WPAN.Figure 8
System implementation; (a) hardware block diagram; and (b) prototype of the S-Enabler.
(a)
(b)Bluetooth technology is designed to establish WPANs with low-cost and low power characteristics. Thus, it is widely used in modern smart devices. For this reason, this paper uses a Bluetooth transceiver module for implementing the system. The LED and LED driving unit part consists of a full-color LED and the LED driving circuit. The power management part consists of a power regulator and a switched-mode power supply (SMPS).


### 5.2. Smartphone Application

This study developed a smartphone application to increase the convenience for the users. We proposed a new vehicle social network based on the smartphone application for smart social services. The S-Enabler can create a variety of useful smart services by utilizing the user’s social behaviors based on the vehicle social network. Figure9 shows the social IoT-based smartphone application for fuel saving. It is possible to monitor the driving distance like the LED of the S-Enabler. If the user touches the “my car” menu, it highlights in detail the actual distance the user drove, the threshold distance the user entered, the number of days remaining, and the recommended daily driving distance, which enables the user to check in detail his driving history. If the user touches the “friends” menu, there is a ranking in order of the driving status of friends. The amount of cost saving is calculated using the average fuel consumption, the current gas price, and the distance traveled on foot. This plays the role of helping to save fuel further through competition. Finally, if the user touches the “car sharing” menu, it lists the friends who can carpool with the user. This menu analyzes the driving information, such as the collected driving destination of each user and average driving time, to show the list of friends that can carpool. Therefore, the user can send a message to his friend to share a car. In this way, fuel costs can be dramatically reduced. This application enables the user to save energy through competition and sharing, which is a social relationship between people through the S-Enabler.Figure 9
Social IoT-based smartphone application for fuel saving through interaction with the S-Enabler.


## 5.1. Hardware Architecture

Figure8 shows the hardware architecture and prototype of the proposed system. The hardware architecture functionally consists of four parts: the main processor, the network and communication part, the LED and LED driving unit part, and the power management part. This paper utilizes an 8-bit microcontroller as the main CPU. The main processor part has the main role of running and storing the middleware, processing events, analyzing contexts, and generating and managing patterns. The network and communication part is composed of a Bluetooth transceiver module. In this paper, we use the Bluetooth standard for intervehicular communications. Particularly, we used Bluetooth 4.0 with Bluetooth low energy (BLE) technology. The BLE technology provides considerably reduced energy consumption and cost compared to the previous version of Bluetooth. In addition, currently, the BLE is widely used as a WPAN by various smart devices such as smartphones and wearable devices due to these advantages. Thus, systems that want to cooperate with various smart devices should use the BLE. For these reasons, we used Bluetooth 4.0 with BLE for building a WPAN.Figure 8
System implementation; (a) hardware block diagram; and (b) prototype of the S-Enabler.
(a)
(b)Bluetooth technology is designed to establish WPANs with low-cost and low power characteristics. Thus, it is widely used in modern smart devices. For this reason, this paper uses a Bluetooth transceiver module for implementing the system. The LED and LED driving unit part consists of a full-color LED and the LED driving circuit. The power management part consists of a power regulator and a switched-mode power supply (SMPS).


## 5.2. Smartphone Application

This study developed a smartphone application to increase the convenience for the users. We proposed a new vehicle social network based on the smartphone application for smart social services. The S-Enabler can create a variety of useful smart services by utilizing the user’s social behaviors based on the vehicle social network. Figure9 shows the social IoT-based smartphone application for fuel saving. It is possible to monitor the driving distance like the LED of the S-Enabler. If the user touches the “my car” menu, it highlights in detail the actual distance the user drove, the threshold distance the user entered, the number of days remaining, and the recommended daily driving distance, which enables the user to check in detail his driving history. If the user touches the “friends” menu, there is a ranking in order of the driving status of friends. The amount of cost saving is calculated using the average fuel consumption, the current gas price, and the distance traveled on foot. This plays the role of helping to save fuel further through competition. Finally, if the user touches the “car sharing” menu, it lists the friends who can carpool with the user. This menu analyzes the driving information, such as the collected driving destination of each user and average driving time, to show the list of friends that can carpool. Therefore, the user can send a message to his friend to share a car. In this way, fuel costs can be dramatically reduced. This application enables the user to save energy through competition and sharing, which is a social relationship between people through the S-Enabler.Figure 9
Social IoT-based smartphone application for fuel saving through interaction with the S-Enabler.


## 6. Experiment and Discussion

It is not easy to measure the average energy savings from the energy management method suggested in this study. This is because the energy management method based on social behavior, such as competition or sharing, reflects user intentions related to energy reduction, which can result in a diverse energy reduction range according to the user. In addition, the energy savings can be perceived as small as time passes owing to psychological factors. Thus, there needs to be a large control group to accurately measure the amount of average energy savings and it is determined that meaningful energy saving results will be derived when the experiment is done over a long-term period (over one year). Therefore, this study first draws its conclusion by discussing the significance of the proposed research with a simple experiment rather than a large-scale experiment.In the experiment, the energy savings experiment was done over four weeks on five researchers that commute by car. On the first and second weeks, fuel consumption was measured while commuting by car as usual and, on the third and fourth weeks, fuel consumption was measured after installing the suggested system. Since two of the researchers knew that they lived in the same area, they could share a car. These two researchers commuted by car sharing on the third and fourth weeks. To emphasize the social behavior called competition, on the third and fourth weeks 50,000 KRW (about 42 USD) worth of gift cards was given to the user with the highest fuel savings and 30,000 KRW (about 25 USD) worth of gift cards was given to the user with the second highest fuel savings. The threshold fuel amount was decided by the users themselves. The results of the experiment over the four weeks are presented in Figure10. There was an average saving of 31.7% in the third and fourth weeks. In the results, users 2 and 4 engaged in car sharing and agreed to divide the payment of fuel 50-50. With more car sharing, bigger savings effect will be seen. Although the performed experiment has a limitation, the results are significant and meaningful.Figure 10
Results of the energy saving experiment.


## 7. Conclusion

This paper proposed the S-Enabler based on vehicle social networks considering the new paradigm of IoT. The paradigm of IoT has changed from the smart IoT to the social IoT. Therefore, the S-Enabler is designed to cooperate with smart devices based on social behavior and utilize wireless technology, particularly Bluetooth, for establishing the social IoT. This paper presented the middleware architecture and cooperation processes for a social IoT-based smart system and also introduced an energy saving algorithm based on social behavior, such as competition and sharing. This paper designed and implemented the proposed system and performed an experiment to evaluate the performance of energy savings. The S-Enabler reduced total fuel consumption by 31.7%. It is expected that this work will contribute to providing guidance on the design and development of a social IoT-based smart system.



---

*Source: 4102163-2016-05-19.xml*