Future Generation Computer Systems 103 (2020) 18–27
Contents lists available at ScienceDirect
Future Generation Computer Systems journal homepage: www.elsevier.com/locate/fgcs
A fog-enabled smart home solution for decision-making using smart objects ∗
Geraldo P. Rocha Filho a , , Rodolfo I. Meneguette b , Guilherme Maia c , Gustavo Pessin d , Vinícius P. Gonçalves e , Li Weigang a , Jó Ueyama f , Leandro A. Villas g a
Department of Computer Science, University of Brasilía, Brasilía - DF, Brazil Federal Institute of São Paulo, Catanduva, São Paulo, Brazil c Federal University of Minas Gerais, Minas Gerais, Brazil d Vale Institute of Technology, Ouro Preto, MG, Brazil e Department of Electrical Engineering, University of Brasilía, Brasilía - DF, Brazil f Institute of Mathematics and Computer Science, University of São Paulo, São Carlos-SP, Brazil g Institute of Computing, University of Campinas, Campinas, SP, Brazil b
article
info
Article history: Received 17 September 2018 Received in revised form 22 June 2019 Accepted 26 September 2019 Available online 4 October 2019
a b s t r a c t The development of new smart objects for the sensing and actuation of a given place or environment led both the academia and industry to research and propose new protocols and intelligent systems to support such objects. One of the systems that has been gaining prominence is the smart residential environments. In this context, homes are equipped with smart objects to manage the living resources. However, managing such objects in residential environments requires data contextualization, i.e. collecting data from heterogeneous devices and actuate on the environment through context information generated from such data. To solve this problem, we propose an intelligent decision system based on the fog computing paradigm, which provides an efficient management of residential applications. The proposed solution is evaluated both in simulated and real environments. When compared with other studies from the literature in a simulated environment, the proposed solution shows a higher success rate with a lower delay in the decision-making process, higher efficiency in information dissemination with a lower overhead in the communication infrastructure, and increased robustness in processing with a lower power consumption. These results are also observed when considering a real environment evaluation. © 2019 Published by Elsevier B.V.
1. Introduction Smart cities are becoming increasingly present in the administration and governance of large metropolises. The advances in the development of smart objects [1] and its services [2] play an important role in the realization of smart cities. In this scenario, the goal is to merge information from objects and intelligent services to efficiently manage the resources and services from a metropolis [3,4]. Many researchers are interested in investigating smart cities in different application domains, such as smart home, domotics, e-health, energy efficiency, and assisted environment. Given this context, Home Automation Systems (HAS) stands out as a smart home equipped with smart and/or specialized objects to manage the living resources of the residence [5–7]. ∗ Corresponding author. E-mail addresses:
[email protected] (G.P.R. Filho),
[email protected] (R.I. Meneguette),
[email protected] (G. Maia),
[email protected] (G. Pessin),
[email protected] (V.P. Gonçalves),
[email protected] (L. Weigang),
[email protected] (J. Ueyama),
[email protected] (L.A. Villas). https://doi.org/10.1016/j.future.2019.09.045 0167-739X/© 2019 Published by Elsevier B.V.
HAS is one of the application domains gaining prominence in smart cities studies for being a promising option to solve one of the major global challenges: energy efficiency. Smart objects in HAS, such as smart televisions, set-top boxes, routers, smart meters, and smartphones, can be used to monitor and control the environment in which they are deployed. Such objects can process data and connect to the Internet, creating a fog computing environment. Moreover, they can intercommunicate to improve the information quality in the decision-making process [8]. The fog computing paradigm [9,10] is a promising alternative to assist smart objects with restricted computational resources, such as the ones employed in HAS. Furthermore, the fog computing paradigm can meet requirements that are not fulfilled by a centralized model. Such paradigm extends the computational resources available in the cloud infrastructure to the network edge, providing mobility, scalability, low latency, and robustness in the services provided to the users [9–11]. Also, it enables real time information analyses through the distribution of the decision-making process to the network edges [9,12].
G.P.R. Filho, R.I. Meneguette, G. Maia et al. / Future Generation Computer Systems 103 (2020) 18–27
However, information contextualization in HAS environments still is a great challenge. In particular, establishing a correlation between the qualitative and quantitative data obtained from devices to perform the decision-making process (i.e., generating viable information) within the communication infrastructure itself creates new research questions, among which two stand out: (i) How to use the data disseminated in an implicit, raw and incomprehensible (i.e. environment data without context) from smart objects manner to improve the decision-making process?; and (ii) How to overcome the absence of communication interoperability and robustness when performing the decisionmaking process on devices with fewer resources? In addition, the lack of a flexible infrastructure to deal with the roles of each smart objects, with a low overhead in processing and that meets the needs of residents (for example, maximize their energy efficiency) are some of the problems addressed in the literature, which this study also investigates. However, it is worth noticing that, the solutions found on the literature comprise specific, local problems and fragmented investigation, indicating a promising and unconsolidated field of research. With this in mind, this article goes further than the solutions presented by [13,14] and proposes ImPeRIum, an intelligent decision-making system that creates a fog computing environment to manage home applications. The decision-making process in ImPeRIum is performed through computational intelligence techniques. In our previous work [15], a preliminary study on the use of ensemble classifiers to enhance precision in the decisionmaking process was made. However, the ensemble classifiers were not integrated into the fog computational environment, hence the results obtained were just exploratory. The fog computing paradigm was used to integrate a greater intelligence into the control infrastructure of the house. Also, it is possible to process content locally on the infrastructure and reduce time in decision making. Such infrastructure is responsible for collecting and disseminating data on the environment and then detecting and acting on the desired applications. To disseminate the data in ImPeRIum, we implemented a communication module based on the Publish/Subscribe (Pub/Sub) paradigm, which also allows the connection of new devices and deals with the interoperability problem among them. To reduce the processing overhead of the infrastructure, the features of ImPeRIum are distributed among the network nodes. The results of an extensive evaluation, considering different scenarios and parameters, show the viability and efficiency of ImPeRIum when compared with other solutions from the literature. The remainder of this article is organized as follows. Section 2 presents related work, discussing the major challenges for this research. Section 3 describes the development of our solution, and Section 4 shows how the solution was validated. Finally, Section 5 presents the conclusions and future works. 2. Related work This section presents the main challenges and open problems in the HAS domain that will be investigated in this article, and also some existing solutions that attempt to solve these problems. For instance, until the time of this research, it was not found a solution that uses the smart devices of a residence to create a fog computing environment that manages the decision-making process of the resident’s applications. Currently, the potential use of wireless network technologies as an internal communication infrastructure of a residence has been researched [16–19]. Particularly in [16], a framework that is modeled based on a wireless infrastructure is proposed. As proof of the framework concept, a prototype named Integ’s smart home was developed. The prototype allows the user to
19
monitor and control the conditions of the residence through a mobile device (for example, a smartphone) connected to the Internet. On the other hand, [17] propose a low-cost residential automation system for household appliances. A main control board (sink node) is developed to manage the communication between home appliances and residents. However, the aforementioned solutions have some limitations. One of them is that they were developed for specific applications. Another is that they do not correlate the data collected from the applications to improve the decision-making process. In [20], the system Home Appliances Coordination Scheme for Energy Management (HACS4EM) was proposed. The goal of HACS4EM is to reduce the resident’s energy consumption, changing the operation of the appliances according to the value of energy fees. To do so, HACS4EM comprises the communication between the appliances and a central power management unit, which is responsible for the processing of the infrastructure. The ZigBee protocol was used to transmit the messages between the entities involved in HACS4EM. Thus, the consumer can switch on any appliance at any time and then HACS4EM suggests the most adequate time of use. However, HACS4EM is different from this research because it triggers a predefined action, not taking advantage of home devices that can intercommunicate to improve the information quality in the decision-making process. Other related studies that deserve to be mentioned are proposed by [13,21]. The study presented by [13] is an extension of the research previously performed in [21]. Particularly in [13], a system of CONtrol and DEcision (CONDE) was proposed to automate the decision-making process in an environment using a wireless sensor and actuator network. CONDE is developed to collect and manipulate the gathered data, processing them within the infrastructure itself. CONDE uses inferential processes as a decision-making method. In this case, a set of parameters and rules was modeled for decision-making in each active application in the wireless sensor and actuator network. The limitations of CONDE when compared with our proposed solution are: (i) pre-established rules for decision-making; and (ii) there is an indication of increased use of memory as new applications are added to the infrastructure. The first limitation does not represent the behavior of the resident, who may change his/her behavior on weekends, for example. As for the second limitation, besides demanding a specialist to generate the rules, there may be a scalability problem on devices with limited resources, which requires the development of new inference and integration rules. The study that most closely resembles our research is the one presented in [18]. Filho et al. proposed a smart decision system for a residential infrastructure that is distributed using wireless sensors and actuators called ResiDI. The intelligence core of ResiDI is based on a neural network that aims to improve the decision-making precision, alongside a temporal correlation mechanism designed to reduce the power consumption of the infrastructure. Although ResiDI uses the processing power of sensor nodes, thus improving the decision-making accuracy, it is not capable of using smart devices from the residence itself to manage applications. Consequently, it does not use the intercommunication of such devices to improve the information quality in the decision-making process. We must also mention that there is an interoperability and integration problem with new devices. In other words, this system has a specific and non-generic behavior, which hinders its adaptation to environmental changes. Table 1 summarizes the features of ImPeRIum and compares it with the related works to highlight the contributions of this research. It is worth noticing that, we could not find a solution that uses the smart objects inside the residence to create a fog computing environment. Therefore, unlike other studies from the literature, ImPeRIum proposes a generalization of the operations and an information abstraction by providing a decisionmaking mechanism and a more effective actuation through the fog computing, as shown hereafter.
20
G.P.R. Filho, R.I. Meneguette, G. Maia et al. / Future Generation Computer Systems 103 (2020) 18–27
Table 1 Summary of the main works found in the literature. Related work
Proposes fog computing infrastructure?
Explores the smart objects of own residence?
Explores Pub/Sub communication?
Considers nodes with specific roles?
Considers the decision-making process within the nodes?
Mantoro et al. [16] Ramlee et al. [17] Mahmood et al. [20] Farias et al. [13] Filho et al. [18] Rocha et al. [15] ImPeRIum system
No No No No No Yes Yes
No No No No No No Yes
No No No No No No Yes
No No – Yes Yes Yes Yes
No No – Yes Yes Yes Yes
3. A neural-fog control system for residential infrastructures
3.1. Operation of the roles and ImPeRIum tiers
This section introduces ImPeRIum, a smart decision system with distributed computational resources that creates a fog computing environment to manage residential applications. The development of ImPeRIuM was based on computational intelligence techniques to perform the decision-making process, as well as on a number of smart devices found in a residence (such as set-top boxes, smart televisions, smart meters and routers) to create a fog computing environment. To handle the data heterogeneity and eliminate the interoperability problem of devices that comprise the fog computing environment, ImPeRIum implements a Publish/Subscribe (Pub/Sub) communication module. The Pub/Sub communication can create interest groups, and messages are delivered to these groups according to their interests. Therefore, only those interested are involved in the communication process, thus leading to a lower energy consumption (e.g., residential applications such as lighting and air conditioning system) The main goals of ImPeRIum are to provide greater processing robustness and increase the decision-making accuracy, aiming at the efficiency in the transmission of data1 and high availability to the user. In this solution, the smart objects are assumed to be equipped with a wireless communication interface, storage, processing and a battery as a backup source. Fig. 1 illustrates the component architecture of ImPeRIum, in which the objects publish their data, and then the subscribers receive the corresponding data to process and respond. In addition to being divided in roles,2 the architecture is also distributed in levels: (i) Tier 0, sensors used to collect environmental data and send such data to Tier 1; (ii) Tier 1, smart objects that, in addition to processing data, can also monitor and control the environment; and (iii) Tier 2, remote server with greater processing and storage power. ImPeRIum, besides providing an infrastructure to maintain high availability in case of device failures, also increases the coverage on environmental management. Furthermore, the proposed architecture maximizes the efficiency in the transmission of low latency data, since the devices are closer to the region of interest, and the decision-making process, as well as its actuation, occurs in the device itself (i.e. in the fog computing environment). Conversely, when we consider a traditional approach that uses a sink to manage the environment, if the sink fails, the entire network becomes inoperable. Furthermore, if the sink also operates as an actuator, an uneven consumption of resources would occur because the data flow closer to the sink is more intense. In the event of a failure in the sink’s actuator component, the task is not successfully completed, i.e. even with the sink running, the network would not be able to act on the environment. To better understand the solution, we detail ImPeRIum in three steps, namely: (i) separation of the roles and the description of their operation; (ii) the communication system; and (iii) computational intelligence for the decision-making process.
The roles are distributed among the network nodes to monitor and manage the environment, and they are: (i) the sensor node; and (ii) the fog node. Sensor nodes (Tier 0) are distributed in the environment to collect and disseminate data, transmitting them to the fog computing environment (Tier 1). The fog computing environment consists of devices that are close to the network edge, between end users and traditional cloud servers (Tier 2) [10] and possess processing, storage and communication power. In ImPeRIum, such devices are called fog nodes; they are responsible for receiving the data from the sensors, performing the decision-making process and act on the environment. In this case, the data used to make the decision is processed in the fog node itself. The training (i.e. learning) of machine learning algorithms for the fog environment is performed at Tier 2. Then, the trained algorithms are deployed to Tier 1 to perform the decision-making process. Hence, fog nodes (Tier 1) perform the decision-making process while the remote server (Tier 2) performs the training of algorithms. The fog computing environment is responsible for monitoring and acting on the household appliances of residents. To do so, ImPeRIum has a Virtual Map of the Fogs (VMF). Through this map, each fog node has its own local knowledge and of the whole environment. To acquire knowledge from the whole environment, the fog nodes share data among themselves through a request–reply model using Pub/Sub. Regarding actuation, the fog nodes control the applications (lighting and household appliances) of the environment through different actuation components, such as electrical switches, relays, transistors and LEDs. This is a reasonable reality to be assumed, given that smart devices can have different types of actuators. The communication process of ImPeRIum is described in the next Subsection.
1 The system must be able to transmit the data with low delay and with a smaller number of transmissions, maximizing the residual energy of the devices. 2 Here, ‘roles’ are understood as the specific functionalities assigned to each node.
3.2. Publish/subscribe communication of ImPeRIum In ImPeRIum, the Pub/Sub paradigm [22] allows the reliable and asynchronous dissemination of content among the information providers (Publish) and consumers (Subscribe). In addition, Pub/Sub paradigm abstracts the communication when the nodes are loosely coupled. For these reasons, the Pub/Sub paradigm becomes suitable for use in smart objects as a communication model to collect/disseminate the data in a fog computing environment. The communication protocol Message Queue Telemetry Transport (MQTT) [23] was used for inter-node communication based on the Pub/Sub paradigm (i.e. Publish/Subscribe — MQTT bus). This protocol is implemented in all nodes of ImPeRIum. The bus manages the content providers and their subscribers by filtering the received events and passing them to the subscribers according to the contents of the subscription. In other words, a given node publishes its data and then the subscriber nodes receive the corresponding data to process and respond. Thus, it is possible to ensure the reliable delivery of data published by the nodes for the components of the execution environment of ImPeRIum.
G.P.R. Filho, R.I. Meneguette, G. Maia et al. / Future Generation Computer Systems 103 (2020) 18–27
21
Fig. 1. Component architecture of ImPeRIum.
Fig. 2. Communication flowchart of ImPeRIum.
The publishing process occurs when the sensor node (Sn ) generates an event (Label A, Fig. 2). In this case, Sn creates a message containing its ID and the content of the event. Before sending the message (Label B, Fig. 2), ImPeRIum uses the temporal correlation protocol [18]. This protocol correlates the events generated at the moment, comparing the contents of the current event with those of previous events to publish, or not, the generated event. For ∑ S
R
∗Pw
1 oldw this, is used the following formula: Threshold ← w=∑ . Pw Where Rold is the last reading, S is the set of reported readings, and P is the set of weights according to the size of S. Each reading performed is compared to the Threshold. If reading is greater than the threshold, the data is sent, otherwise it is eliminated. With this, ImPeRIum can eliminate redundant notifications for discrete and continuous data, increasing the lifetime of the network and reducing the amount of communication among nodes. After Sn publishes the content, the fog node (Fn ), which has registered for that content type, receives the published event (Label C, Fig. 2). In order for Fn to receive the content, it must subscribe to the event bus with a message containing its ID, the content type it is interested in and the types of applications that it will manage. In addition, Fn can also register in other fog nodes to receive data from other sensors that are not in its range. These data are stored in VMF, which provides local knowledge and knowledge from the whole environment to ImPeRIum, so it can perform the decision-making process (Label D, Fig. 2). It should be noted that the Fn does not need to transmit the actuation information to
a specific device. With this, the action is performed in the fog computing environment itself and, consequently, fewer messages are transmitted. Such a process starts when Fn receives data from the sensors. Thus, Fn invokes the decision-making process, which will determine whether to act on the environment or not (Label E, Fig. 2). If affirmative, the decision-making process returns information about the application and the action that must be performed on the environment (Label F, Fig. 2). Such information is stored in VMF to avoid conflicts of action or interest, or if another Fn + 1 wants to act on the environment. The decision-making process is described below. 3.3. Computational intelligence for the decision-making process Six classical classification algorithms from the literature were explored to perform the decision-making process, they are: (i) Fuzzy logic; (ii) Decision Tree; (iii) K-Nearest Neighbor (KNN); (iv) Naive Bayes; (v) Artificial Neural Network - Multi-Layer Perceptron (ANN-MLP); and (vi) Ensemble of classifiers. The algorithms use the data on VMF and then detect the environmental characteristics considering the preferences of the resident to perform the decision-making process. To train the models in the decisionmaking process, the k-fold cross-validation technique was used with k = 10, being k-1 for training and the remainder for testing. As shown in Table 2, an exploratory analysis was made to determine which algorithm was going to be used in the modeling of
22
G.P.R. Filho, R.I. Meneguette, G. Maia et al. / Future Generation Computer Systems 103 (2020) 18–27
Fig. 3. Example of the operation of the algorithms implemented in ImPeRIum for the decision-making process. Table 2 Exploratory analysis of the classification algorithms by the precision metric.
Table 3 Standard simulation scenario.
Algorithms
Accuracy - mean
Confidence interval
Parameter
Standard value
Fuzzy logic Decision Tree KNN Naive Bayes ANN-MLP Ensemble
76.3 77.2 78.4 77.5 88.3 92.9
±5.3 ±5.5 ±4.9 ±5.9 ±4.2 ±3.5
Energy consumption in the transmission and reception Sensor and fog node density Wireless interface Monitored area Block of data Communication radius Number of replications Confidence interval
0.2088 µJ/bit e 0.2256 µJ/bit
ImPeRIum. To obtain the classification models, we used the data from [24,25] that were applied in [18]. Table 2 summarizes the results obtained by the evaluated algorithms through the precision metric. The highest precision values are highlighted in bold (Table 2). From the analysis, we can note that the Ensemble and ANN-MLP achieved the best results when compared with other classification algorithms. In addition, both the Ensemble and ANN-MLP are statistically equivalent. Therefore, both algorithms were implemented in ImPeRIum to perform the decision-making process, as presented Fig. 3. The algorithms were modeled at Tier 2 of ImPeRIum and then disseminated to the fog nodes, which reduced the processing overhead on our system. 4. Performance evaluation and methodology This section presents the results of the performance assessment and the methodology used to generate the results. The validation of ImPeRIum was divided into two stages. The first stage comprised a validation of ImPeRIum (using ANN-MLP and the Ensemble) by comparing it with two approaches from the literature, CONDE and ResiDI. These approaches were chosen due to their resemblance with this research, as already discussed in Section 2. The second stage evaluated the resource management of ImPeRIum in a fog environment, comparing it with a traditional approach that uses a cloud server environment. Thus, it was possible to comprehend the functioning of ImPeRIum in various scenarios. The modeled scenarios, the metrics used, and the results achieved are presented below. 4.1. Performance evaluation of ImPeRIum This subsection validates the performance of ImPeRIum through simulations using the Network Simulator 3.3 The version used was NS-3.21 to provide support for IEEE 802.15.4 networks. Regarding the network topology, a monitored area of 40 × 40 m 3 Network Simulator 3 - NS3, http://www.nsnam.org/.
0.015 nodes/m2 e 0.007 nodes/m2 802.11, 2.4 GHz 40 × 40 m 8, 16, 32, 64, 128 15 m 33 95%
with a disturbance in the grid was adopted to deposit the nodes. To cover the whole area of collection and dissemination of the topology data, the sensor density is 0.015 nodes/m2 . On the other hand, fog node density is 0.007 nodes/m2 , since it is realistic to admit that there are fewer nodes processing data than sensing the environment. The communication radius of the nodes is 15 m, and its energy consumption to transmit and receive are set to 0.2088 µJ/bit and 0.2256 µJ/bit, respectively, in accordance with the MicaZ platform. Table 3 presents the parameters used to generate the results. Two residential applications were implemented in ImPeRIum: (i) control of the residential lighting system; and (ii) energy control of home appliances, especially television, computer and fridge. As for the lighting system, three kinds of luminous intensity (low, medium and high) were considered for the actuation. As for the appliances system, the state of being on/on standby/off was considered for the actuation. To achieve a scenario closer to a real environment, we used real data sets from [24,25] as inputs with the following attributes: (i) environmental temperature in degree Celsius; (ii) the presence of people in the environment; (iii) date and time of the application use; (iv) wattage of the application; (v) state of application; (vi) type of application; and (vii) decision-making. Such attributes were transformed into block of data (Fig. 4) to simulate the dissemination of various events at the residence. The following metrics were used to evaluate ImPeRIum: (i) success rate, it represents the percentage of correct classifications in the decision-making process; (ii) delay represents the time taken for a decision to be made, from sensing to actuation; (iii) total messages transmitted refers to the total number of messages transmitted during the decision-making process; (iv) delivery rate depicts the relationship between the number of messages transmitted by the sensor node and the number of messages received by the fog node; and (v) energy consumption indicates the amount of energy consumed by the infrastructure in the decision-making process. The results are shown in the next subsection.
G.P.R. Filho, R.I. Meneguette, G. Maia et al. / Future Generation Computer Systems 103 (2020) 18–27
Fig. 4. Blocks of data used.
4.1.1. Analysis of the results obtained Fig. 5(a) shows the success rate in the decision-making process by varying the amount of blocks of data (8, 16, 32, 64 and 128). The goal is to present the behavior of ImPeRIum in correctly classifying the decision-making process. From the results, we noted that ImPeRIum-Ensemble presented a slightly higher success rate when compared with the other algorithms, achieving an 89% average. When compared with CONDE, ImPeRIum-Ensemble and ImPeRIum-ANN have, on average, 1.19 and 1.17 times more success than CONDE, respectively. This occurs because ImPeRIum generalizes the decision-making based on historical examples. This makes ImPeRIum perform the setting of decision-making for unseen examples. When compared with ResiDI, ImPeRIumANN was statistically equivalent regardless of the number of data blocks published on the network. This is coherent, given that both solutions use the same learning concept for the decisionmaking process. In addition, the similarity between ImPeRIumANN and ResiDI confirms the efficiency of computational intelligence in the decision-making process. However, from 64 blocks of data, ImPeRIum-Ensemble was the one that presented the highest success rates. This makes sense because ImPeRIum-Ensemble uses a combination of classifiers to perform the decision-making process. After validating the success rate, the time spent for a decision to be made was analyzed, as shown in Fig. 5(b). As it can be seen, ImPeRIum-ANN has a lower delay when compared with ResiDI and CONDE in all scenarios. In general, ImPeRIum was 13% and 60% faster than ResiDI and CONDE, respectively. In the worst case, 128 blocks of data, ImPeRIum was 9% faster than ResiDI and 48% faster than CONDE. This is related to the fog computing environment, which does not need to transmit the actuation information to a specific device, unlike the other solutions. Although ImPeRIum-Ensemble presents a greater success rate (Fig. 5(a)), several algorithms are used in its modeling, significantly increasing its computational cost. As a result, when using ImPeRIum-Ensemble, the decision-making process gets slower when considering the delay and processing time. Regarding the total messages transmitted metric, Fig. 5(c), the objective is to assess the efficiency of ImPeRIum-ANN and ImPeRIum-Ensemble regarding the network traffic during the dissemination of data. Regardless of the number of blocks of data used, we observed that ImPeRIum-ANN and ImPeRIum-Ensemble transmit fewer data when compared with ResiDI and CONDE. This decreases the number of collisions and preserves the residual energy of the device, which occurs because the action is performed in the fog computing environment itself, i.e. it is not necessary to forward the actuation information to another device on the
23
network and, consequently, fewer messages are transmitted. As for the delivery rate metric (Fig. 5(d)), we found that ImPeRIumANN, ImPeRIum-Ensemble, and ResiDI are statistically equivalent, regardless of the assessed scenario. In other words, the delivery rate of messages presents similar behavior. However, ImPeRIum (using ANN or Ensemble) and CONDE are not statistically equivalent, i.e. ImPeRIum has a higher delivery rate. In addition, another important point is related to the stability that ImPeRIum has in the delivery rate when compared with the other solutions. Therefore, ImPeRIum presents less overhead on data transmission than the other solutions. Finally, Fig. 5(e) presents the energy consumption metric of the devices in function of the number of blocks of data. In all scenarios assessed, ImPeRIum (using ANN and Ensemble) consumes less residual energy of the devices as the number of blocks of data increases. This is a consequence not only of the reduction in the number of transmitted messages but also of the robustness in the processing for decision-making through the fog computing environment, as it can be seen in Figs. 5(c) and 5(b). The worst case occurs with 128 blocks of data, ImPeRIum presents a 9% reduction in energy consumption when compared with ResiDI, and 47% in energy consumption in relation to CONDE. Therefore, ImPeRIum is able to preserve the residual energy of the devices while maintaining the decision-making accuracy, in addition to ensuring robustness in the processing (i.e. shorter delay) and a reduction in transmitted messages with an elevated delivery rate.
4.2. Performance evaluation of ImPeRIum in the fog environment In this subsection, the resource management of ImPeRIum is assessed, showing its efficiency in a fog computing environment, comparing it with a traditional approach that uses a cloud server environment. The experiments were performed in different real environments that were named as levels: (i) Tier 1, fog computing environment; and (ii) Tier 2, remote server. Blocks of data and applications presented in Section 4.1 were used for each level. Table 4 shows the description of the set of parameters to perform the assessment and the physical devices used for the experiments. Since the goal of the evaluation was to determine the resource management efficiency of ImPeRIum in a fog environment, the response variable used were the metrics: memory consumption, processing consumption and processing time of applications. The processing time of applications considers the time spent between sending the data and the response of the actuation. To perform the statistical validation of the results the post-hoc test was used. This test provides a ranking that allows the overall performance assessment of each set of parameters. To do so, the post-hoc test uses a measure called ‘‘critical difference’’ (CD) to determine if the values to be assessed differ the minimum of the CD value. If the values are different, then the assessed parameters are statistically different. The results of these experiments are presented Table 4.
4.2.1. Analysis of the results obtained Initially, the resource management of ImPeRIuM was assessed by the memory and processing consumption metrics as a function of the amount of data in the decision-making. We also noted the existence of a linearity of both metrics (Figs. 6(a) and 6(c)), regardless of the levels and of input blocks of data (Figs. 6(b)
24
G.P.R. Filho, R.I. Meneguette, G. Maia et al. / Future Generation Computer Systems 103 (2020) 18–27
Fig. 5. Performance impact of ImPeRIum when compared with other approaches from the literature.
Table 4 Set of parameters to be assessed and physical devices used in the experiments. Description of the parameters Experiment using the fog node and remote server
Number of blocks of data
Fog nodea
Remote server
E1a
E2
E3
E4
E5
E6
128a
8
16
32
64
128
Description of the physical devices Fog node - Raspberry Pi 2 Remote server – Computer a
ARMV7-A, BCM2836 @900 MHz, 1 GB Intel Core I7-7700K, @4.2 GHz, 16 GB
It represents the scenario that was found to be the least favorable for ImPeRIum in the experiments of Section 4.1.
and 6(d)). Stability in memory (Fig. 6(a)) and processing (Fig. 6(c)) consumption is another aspect that deserves attention. This can be observed due to the uniformity of the interquartile range of the boxplot, which presents similar behaviors for the metrics used in the decision-making. Another important aspect noted in Figs. 6(a) and 6(c) is related to the tiers. In particular, Tier 1 presents greater memory and processing consumption when compared with the variations in Tier 2, being statistically different as illustrated in Figs. 6(a) and 6(c), respectively. However, such consumption is not high, as it does not exceed 3% memory and 45% processing. Consequently, Tier 1 has idle processing cycles and supports the execution of applications without overloading the devices. Considering this information, it is possible to take advantage of the computational resources of the devices located on the network edge to collect and act on the environment through fog computing.
G.P.R. Filho, R.I. Meneguette, G. Maia et al. / Future Generation Computer Systems 103 (2020) 18–27
25
Fig. 6. Performance impact of memory and processing consumption and processing time.
After noticing the idle processing cycles of tier 1 without overloading it, we assessed the time to process the application (Fig. 6(e)) and statistically validated it in Fig. 6(f). In this scenario, we considered the time elapsed between going and returning from tier 2 for decision-making. We noted that the processing time of the fog computing environment with 128 blocks of data is 2.1 times faster in the best case (Experiment E6, Fig. 6(e)) and 1.4 times faster (Experiment E2, Fig. 6(e)) than the cloud environment to perform the decision-making process in the worst case. This occurs due to the fog computing environment that, in addition to having resources available to perform the processing, does not need to send the data to an external environment (i.e. Tier 2). With that, the time taken to transmit the data to the external environment is used to process the decision-making. In other words, the processing time is much faster than the time to send the data. Therefore, these claims are evidence of the efficiency of ImPeRIum in a fog computing environment, presenting robustness in decision-making processing without overloading the system resources.
5. Conclusion and future research This article proposed ImPeRIum, a smart approach to manage residential environments. By considering the profile of residents, ImPeRIum monitors and acts on the residential environment through the intercommunication of smart objects. In case of an event that is out of the expected, ImPeRIum can detect it and act on it accordingly to keep the environment in a preestablished state. An extensive assessment considering different scenarios showed the viability and efficiency of ImPeRIum in smart environments with limited resources. The results obtained were promising, and three are notable: (i) high success rate with a low delay in the decision-making process; (ii) efficient information transmission with low overhead on the infrastructure; and (iii) robustness in processing with low energy consumption. In future research, we intend to extend our proposal in a real case study to investigate the practical application of ImPeRIum. We also plan to apply the proposed solution to different contexts, such as buildings, security, and smart health. In addition, we intend to develop consensus mechanisms, so that inter-fog node
26
G.P.R. Filho, R.I. Meneguette, G. Maia et al. / Future Generation Computer Systems 103 (2020) 18–27
decisions can be correlated with the several environments of a residence. This will be done using software-defined networks (SDN). SDN would manage the regions or sub-regions of interest through the SDN controllers. In this case, SDN would control: (i) residential applications; (ii) the computational resources of network devices; or (iii) data communication services.
[18] G. Filho, J. Ueyama, B. Faical, D. Guidoni, L. Villas, ResiDI: An intelligent decision platform for residential infrastructure using wireless sensors and actuators, in: Computer Networks and Distributed Systems (SBRC), 2015 XXXIII Brazilian Symposium on, 2015, pp. 237–245, http://dx.doi.org/10. 1109/SBRC.2015.36.
Declaration of competing interest
[20] A. Mahmood, I. Khan, S. Razzaq, Z. Najam, N. Khan, M. Rehman, N. Javaid, Home appliances coordination scheme for energy management (hacs4em) using wireless sensor networks in smart grids, in: Procedia Computer Science, Vol. 32, Elsevier, 2014, pp. 469–476.
The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper. References [1] B.P. Santos, L. Silva, C. Celes, J.B. Borges, B.S.P. Neto, M.A.M. Vieira, L.F.M. Vieira, O.N. Goussevskaia, A. Loureiro, Internet das coisas: da teoriaa prática, Minicursos SBRC-Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuıdos, 2016. [2] M. Ma, S.M. Preum, J.A. Stankovic, Cityguard: A watchdog for safetyaware conflict detection in smart cities, in: Internet-of-Things Design and Implementation (IoTDI), 2017 IEEE/ACM Second International Conference on, IEEE, 2017, pp. 259–270. [3] A. Zanella, N. Bui, A. Castellani, L. Vangelista, M. Zorzi, Internet of things for smart cities, IEEE Internet Things J. 1 (1) (2014) 22–32, http://dx.doi. org/10.1109/JIOT.2014.2306328. [4] R.P. Dameri, Using ICT in smart city, in: Smart City Implementation: Creating Economic and Public Value in Innovative Urban Systems, Springer International Publishing, Cham, 2017, pp. 45–65, http://dx.doi.org/10.1007/ 978-3-319-45766-6_3. [5] J. Cheng, T. Kunz, A Survey on Smart Home Networking, Carleton University, Systems and Computer Engineering, Citeseer, 2009. [6] J.H. Lee, H. Lee, M.J. Kim, X. Wang, P.E. Love, Context-aware inference in ubiquitous residential environments, Comput. Ind. 65 (1) (2014) 148–157, http://dx.doi.org/10.1016/j.compind.2013.08.005. [7] B.L.R. Stojkoska, K.V. Trivodaliev, A review of internet of things for smart home: Challenges and solutions, J. Cleaner Prod. 140 (Part 3) (2017) 1454–1464, http://dx.doi.org/10.1016/j.jclepro.2016.10.006, URL http://www.sciencedirect.com/science/article/pii/S095965261631589X. [8] P. Maia, A. Baffa, E. Cavalcante, F.C. Delicato, T. Batista, P.F. Pires, Uma Plataforma de Middleware para Integração de Dispositivos e Desenvolvimento de Aplicações em e-health, 2015, pp. 361–374. [9] F. Bonomi, R. Milito, P. Natarajan, J. Zhu, Fog computing: A platform for internet of things and analytics, in: N. Bessis, C. Dobre (Eds.), Big Data and Internet of Things: A Roadmap for Smart Environments, Springer International Publishing, Cham, 2014, pp. 169–186, http://dx.doi.org/10. 1007/978-3-319-05029-4_7. [10] R. Mahmud, R. Kotagiri, R. Buyya, Fog computing: A taxonomy, survey and future directions, in: B. Di Martino, K.-C. Li, L.T. Yang, A. Esposito (Eds.), Internet of Everything: Algorithms, Methodologies, Technologies and Perspectives, Springer Singapore, Singapore, 2017, pp. 103–130, http: //dx.doi.org/10.1007/978-981-10-5861-5_5. [11] A.A.T.R. Coutinho, E.O. Carneiro, F.G.P. Greve, Computação em Névoa: Conceitos, Aplicações e Desafios, 2016, pp. 266–315. [12] M. Khalid, M.M. Yousaf, Y. Iftikhar, N. Fatima, Establishing the state of the art knowledge domain of cloud computing, in: Advanced Computer and Communication Engineering Technology, Springer, 2016, pp. 1001–1014. [13] C. Farias, H. Soares, L. Pirmez, F. Delicato, I. Santos, L.F. Carmo, J. Souza, A. Zomaya, M. Dohler, A control and decision system for smart buildings using wireless sensor and actuator networks, Trans. Emerg. Telecommun. Technol. 25 (1) (2014) 120–135. [14] G.P.R. Filho, L.A. Villas, H. Freitas, A. Valejo, D.L. Guidoni, J. Ueyama, Residi: Towards a smarter smart home system for decision-making using wireless sensors and actuators, Comput. Netw. 135 (2018) 54–69, http://dx.doi.org/ 10.1016/j.comnet.2018.02.009, URL http://www.sciencedirect.com/science/ article/pii/S1389128618300768. [15] G.P. Rocha Filho, L.Y. Mano, A.D.B. Valejo, L.A. Villas, J. Ueyama, A lowcost smart home automation to enhance decision-making based on fog computing and computational intelligence, IEEE Lat. Amer. Trans. 16 (1) (2018) 186–191. [16] T. Mantoro, M.A. Ayu, E.E. Elnour, Web-enabled smart home using wireless node infrastructure, in: Proceedings of the 9th International Conference on Advances in Mobile Computing and Multimedia, in: MoMM’11, ACM, New York, NY, USA, 2011, pp. 72–79. [17] R. Ramlee, M. Othman, M. Leong, M. Ismail, S. Ranjit, Smart home system using android application, in: Information and Communication Technology (ICoICT), 2013 International Conference of, IEEE, Bandung, 2013, pp. 277–280.
[19] P. Geraldo Filho, L.A. Villas, V.P. Gonçalves, G. Pessin, A.A. Loureiro, J. Ueyama, Energy-efficient smart home systems: Infrastructure and decision-making process, Internet Things 5 (2019) 153–167.
[21] H. Soares, L. Pirmez, F. Delicato, C. de Farias, Conde: Um sistema de controle e decisao para edificios inteligentes usando redes de sensores e atuadores sem fio, in: XXX Simposio Brasileiro de Redes de Computadores E Sistemas Distribuidos (SBRC), 2012, pp. 117–130. [22] P.T. Eugster, P.A. Felber, R. Guerraoui, A.-M. Kermarrec, The many faces of publish/subscribe, ACM Comput. Surv. 35 (2) (2003) 114–131, http://dx.doi.org/10.1145/857076.857078, URL http://doi.acm.org/10.1145/ 857076.857078. [23] A. Stanford-Clark, A. Nipper, MQ Telemetry Transport, 2014. URL http: //mqtt.org. [24] K. Bache, M. Lichman, UCI Machine Learning Repository, University of California, School of Information and Computer Sciences, Irvine, CA, 2013, URL http://archive.ics.uci.edu/ml/machine-learning-databases/00235/. [25] G.P.R. Filho, J. Ueyama, L.A. Villas, A.R. Pinto, V.P. Goncalves, G. Pessin, R.W. Pazzi, T. Braun, Nodepm: A remote monitoring alert system for energy consumption using probabilistic techniques, Sensors 14 (1) (2014) 848, URL http://www.mdpi.com/1424-8220/14/1/848.
Geraldo P. Rocha Filho (
[email protected]) is an Assistant Professor at the Department of Computer Science (CIC) at University of Brasília (UnB). He received his Ph.D. in Computer Science from the University of São Paulo (USP) in 2018. He received his M.Sc. from the USP in 2014. He was also a post-doctoral research fellow at the Institute of Computing at UNICAMP before joining the UnB. His research interests are wireless sensor networks, vehicular networks, smart grids, smart home and machine learning
Rodolfo I. Meneguette is an Assistant Professor at Federal Technology Institute. He received his Bachelor’s degree in Computer Science from the University of São Paulo, Brazil, in 2006. He received his master’s degree in 2009. He received his doctorate from the University of Campinas (Unicamp), Brazil, in 2013. He did his post-doctorate in the PARADISE Research Laboratory, University of Ottawa, Canada, in 2017. His research interest are in the areas of vehicular networks, resources management, flow of mobility and vehicular clouds. Guilherme Maia is an Assistant Professor of Computer Science at UFMG, Brazil. He got his Ph.D. in Computer Science at this same university in 2013. His research interests include distributed algorithms, mobile computing, wireless sensor networks and vehicular ad hoc networks.
Gustavo Pessin received his D.Sc. degree (2013) in Computer Science from the University of São Paulo. In 2015, he had a position as a Visiting Scholar at the Massachusetts Institute of Technology. He is currently a Research Associate at the Vale Institute of Technology. He has interest in the area of machine learning, data science, and wireless sensor networks.
G.P.R. Filho, R.I. Meneguette, G. Maia et al. / Future Generation Computer Systems 103 (2020) 18–27 Vinícius P. Gonçalves is PhD in Computer Science and Computational Mathematics (2016) from the University of São Paulo (USP). He was also a research fellow at the University of Arizona (USA) before joining the University of Brasília (UnB). He was a Postdoctorate Researcher Fellow at School of Medicine of USP, as a CAPES Fellowship. Currently, Vinícius P. Gonçalves is an Adjunct Professor at the Institute of Technology at the UnB, Brasília, Brazil. His main research interests are: Human–Computer Interaction, Internet of Things, Cyber–Physical Systems and Mobile Health.
Li Weigang is a professor and chair of the Department of Computer Science at the University of Brasília (UnB), Brazil. He received his Ph.D. from the Aeronautics Institute of Technology (ITA), Brazil, in 1994. He is a researcher with grant from Brazilian National Council for Scientific and Technological Development (CNPq). He coordinated various research projects from CAPES, CNPq, FINEP, FAPESP and FAPDF and the industry projects with Atech and Boeing Company/Brazil. His research interests include artificial intelligence with emphasis on computation model in air traffic management and data analytics.
27
Jó Ueyama is a Full Professor of the Institute of Mathematics and Computer Science (ICMC) at the University of São Paulo (USP). Prof. Ueyama is also a Brazilian Research Council (CNPq) fellow. He completed his Ph.D. in computer science at the University of Lancaster (England) in 2006. Before joining USP, he was a research fellow at the University of Kent at Canterbury (England). Jó has published 50 journal articles and 100 conference papers. His main research interest includes Computer Networks, Distributed Systems and Blockchain. Finally, Prof. Ueyama is the Head of the International Office Affairs at ICMC/USP since August 2016.
Leandro A. Villas is an Associate Professor and Chair of the Institute of Computing at the University of Campinas (Unicamp), Brazil. Leandro has published 50+ papers in international journals and 120+ in conferences. Six of those papers received the best paper award. Moreover, he received the Latin America Young Professional Award, IEEE Communications Society, and the Excellence Award from the Institute of Computing at Unicamp.