Article Information
Corresponding Author: DoHyeun Kim* , kimdh@jejunu.ac.kr
Sehrish Malik*, Dept. of Computer Engineering, Jeju National University, Jeju, Korea, serrym29@gmail.com
Israr Ullah*, Dept. of Computer Engineering, Jeju National University, Jeju, Korea, Israr.ullah@jejunu.ac.kr
DoHyeun Kim*, Dept. of Computer Engineering, Jeju National University, Jeju, Korea, kimdh@jejunu.ac.kr
KyuTae Lee**, Division of Information and Communication Engineering, Kongju National University, Gongju, Korea (ktlee@kongju.ac.kr)Current affiliation for author, Sehrish Malik, is Division of Information and Communication Engineering, Kongju National University, Gongju, Korea;Current affiliation for author, Israr Ullah is Dept. of Computer Science, Virtual University of Pakistan, Lahore, Pakistan, israr.ullah@vu.edu.pk
Received: December 31 2018
Revision received: July 10 2019
Accepted: July 31 2019
Published (Print): October 31 2020
Published (Electronic): October 31 2020
1. Introduction
The basic idea of smart environments is to connect all the things in an environment to the Internet, in order to make the things smart. Rapid developments in hardware, software, and communication technologies have allowed the emergence of Internet-connected sensory devices that provide observations and data measurements from the physical world. By 2020, it is estimated that the total number of Internet-connected devices being used will be between 25 to 50 billion [1]. As the numbers grow and technologies become more mature, the volume of data published will also increase respectively. Internet-connected devices technology, referred to as Internet of Things (IoT), continues to extend the current Internet by providing connectivity and interaction between the physical and cyber worlds. In addition to increased volume, the IoT generates big data characterized by velocity in terms of time and location dependency, with a variety of multiple modalities and varying data quality. Intelligent processing and analysis of the big data is the key to developing smart environment applications.
Various embedded sensors, displays, and computing devices are used so that users can better under¬stand and control the environment. Smart environments are varied physical worlds typically used in human daily life; seamlessly embedded with tiny devices capable of pervasive sensing, actuating and computing. These physically embedded tiny devices are all connected through a continuous network for data collection, in order to enable various pervasive applications and services. The smart environments include smart home, smart car, smart building, smart office, smart farm, smart hospital, and smart meeting room etc.
1.1 Contributions
This article surveys the prediction approaches in smart environments’ literature over the period of last decade (i.e., 2008–2018). The article focuses on the prediction algorithms used in the different smart environments’ prediction problems. Smart environments are getting significant boost with the recent advancements in the IoT, and predicting the future needs is also of vital importance. Hence, we try to get an overview of prediction algorithms in three main smart environment categories of smart homes, smart cars and smart farms; and in applications of smart health and smart energy management (Fig. 1). Smart retail is also one of the major smart application, but due to diverse nature we hope to cover it in a separate survey paper. The contribution of this survey is threefold. (1) Firstly, we study many varied academic publications, urban development projects and commercial products. We propose an exhaustive classification with an overview of different disciplines. We believe that our survey extends all these works and gives a more comprehensive assortment on the use of prediction algorithms in the smart environments. (2) Secondly, we categorize the prediction learning literature and visualize them in detailed tables and figures. We synthesize the main methodologies used in the existing works and give a very comparable outlook. (3) Thirdly, we provide our engineering insights on the challenges of the current proposals and the subsequent open issues.
Interactive model of selected smart environments and applications.
This can help in future to decide which prediction algorithm to be applied in a given scenario in order to avoid a deployment of a less suitable prediction algorithm. The work presented in this paper focuses on the methodologies adopted in the vast literature rather than the results.
Our extensive survey includes around 400 references from smart environments’ use case scenarios in prediction, but due to lack of space, we have included 134 references. Our results reflect the findings of entire survey research.
The rest of the paper is structured as follows. Section 2 presents the classification of prediction learning algorithms that are widely used in smart environments domain. Section 3 presents the learning use case analysis in selected domains. Section 4 concludes the paper with summary of most widely used prediction algorithms in selected smart environments’ domains.
2. Heuristic and Statistical Prediction Algorithms
Algorithms which focus on finding efficient and quick solutions (approximate solutions) to a problem by forfeiting the accuracy and optimality are known as heuristic algorithms. Algorithms which create a statistical or probability based model for the input data are known as statistical algorithms. Fig. 2 shows the list of heuristic, statistical and hybrid approaches. The category of deep neural networks (DNNs) under heuristic algorithms, includes multiple variants and combinations, and covers the emerging DNN based algorithms such as auto-encoders, convolutional neural networks (CNNs), recurrent neural networks (RNNs), long short-term memory networks (LSTMs), generative adversarial networks (GANs), Multi-layer perceptrons (MLPs), etc. In some studies, combinations of these DNNs are used for predictions to enhance the results than using a single network. As many studies on prediction have extensively focused on artificial neuron networks (ANNs) alone, we’ve categorized it separately. The hybrid approaches are combination of both statistical and heuristic methods.
Classification of prediction algorithms.
3. Prediction Learning Use Case Analysis
In the use cases of smart environments, there are many smart spaces to be considered which can have further multiple smart applications. As mentioned earlier, we consider three smart spaces in this study, i.e., smart homes, smart farms and smart cars; and two smart applications as smart energy management and smart healthcare. In this section, we discuss the input data collection, use cases and most widely used prediction algorithms for each of mentioned smart space and smart application. Input data collection, for each field, depending on the scenario has been done differently in many surveyed works. In the fields of smart homes, smart health management and smart energy management; many large data collections are available and have been widely used which span over multiple years. While in the field of smart cars and smart farms, many papers have used simulation data due to lack of real datasets in many scenarios. The size of data collection phase overall varies from couple of months to couple of years, in smart fields. In prediction learning algorithms the data is divided into sets of training, testing and verification; most of the works used up to 70% to 75% of data for training purposes and rest divided into testing and verification purposes.
3.1 Smart Car
Smart cars refer to an autonomous car which is capable of self-driving. The evolution of smart cars can undoubtedly contribute significantly to the upgrading of transport efficiency and road safety playing its vital role improving quality of life.
The architecture of smart cars consists of three layers as perception layer, a planning layer and a control layer. In perception layer, the real time data is collected from the smart car’s environment. The smart cars input data (Fig. 3), consists of four main aspects as smart car physical self-state, traffic state, road state, and driver’s health state.
Input data aggregation from smart cars environment.
The planning layer in smart car’s architecture is responsible for the route planning and behavior decision making process, providing the safe driving actions to be executed. The control layer generates the control commands based on the sensed data and planned actions. The accurate prediction of future driving behaviors is highly significant for the safe driving. Some of the use cases of prediction algorithms in the smart cars environment along with input data are shown in Table 1. Table 2 is marked based on our extensive literature survey on smart cars [1-43].
Widely used prediction algorithms in Smart Cars
Input data mapping to use cases of prediction in smart cars
Many prediction approaches have been proposed to solve the prediction problems in smart car prediction scenarios. Table 1 provides the use of prediction algorithms applied in different prediction categories in the smart cars’ environment such as smart parking prediction [1-7], traffic flow prediction [8-14], charge demand prediction [15-21], lane changes prediction [22-29], car health prediction [30-36], and accident/collision prediction [37-43]. We can observe from Table 3 that ANNs are highly applied for making prediction in smart cars’ environments. Deep learning approaches are highly applied in the traffic flow, lane changes and accident collision predictions. Other most frequent used prediction algorithms are Markov models, regression, and naïve Bayes in statistical algorithms and support vector machines (SVMs) in heuristic algorithms. In the conducted survey, 36% of the papers are found using statistical algorithms, 42% of heuristic algorithms and 22% of hybrid algorithms.
3.2 Smart Home
A home is referred as smart home, when the things in a home are connected with the Internet and are capable of interacting with each other. The things in a home include appliances, lighting, heating, air conditioning, TVs, computers, entertainment audio and video systems, security, and camera systems. The things in a smart home can be remotely controlled from any location within the home or anywhere outside the home. Usually a schedule is set to control the things in a smart home [44-64].
Smart home prediction’s input and output.
Fig. 4 elaborates the inputs and outputs for the smart homes. Input data collected from the smart home environment has sub-categories as environmental data, house chores data, entertainment data, resident’s health data, and security and safety data. Table 4 explains the mapping of input data to the outputs as inhabitants’ comfort index prediction, inhabitants’ activity/action prediction, abnormal behavior pre¬diction, energy use prediction and inhabitants’ wellness prediction.
Widely used prediction algorithms in smart homes
Input data mapping to use cases of prediction in smart homes
After pre-processing the input data, prediction algorithms are applied to the data in order to predict the required scenario’s output. Many prediction approaches have been proposed for the prediction problems in smart home prediction scenarios. Table 3 provides the use of prediction algorithms applied in different prediction categories in the smart home environments such as inhabitants’ comfort index prediction [44-52], inhabitants’ action/activity prediction [53-60] and abnormal behavior [61-64]. We can observe that, Markov chains are most widely used statistical algorithm, while SVM and ANNs are the most widely used heuristic algorithms. Energy use prediction is covered in Section 4.5 and inhabitants’ wellness prediction is covered in Section 4.4. In the conducted survey, 40% of the papers are found using statistical algorithms, 33% of heuristic algorithms and 26% of hybrid algorithms.
3.3 Smart Farms
Incorporating recent technology into farming industry, in order to increase the quality and the quantity of agricultural products, is referred as smart farming. Today’s farmer can benefit from advancements made in data management and internet of things technologies. Target of smart farming is to meet changing demands and conditions in the farms in order to meet the consumer needs [65-87].
Smart farms prediction’s input and output.
In Fig. 5, we present the input and output model for the smart farms prediction scenarios. The inputs of smart farms can be sub-categorized as environmental data, production data and surveillance data. Table 5 shows the input to output mappings for the prediction roles as weather predictions, crop yield predictions, crop disease prediction, and plant growth rate predictions.
Many prediction approaches have been proposed to provide solutions to the prediction problems in smart farm prediction scenarios. Table 6 provides the use of prediction algorithms applied in different prediction categories in the smart farms environment such as crop yield prediction [65-71], weather predictions [72-76], crop disease prediction [77-81], and plant growth rate prediction [82-87]. We can observe from Table 6 that regression in statistical algorithms and ANNs in heuristic algorithms are highly applied for prediction in smart farms’ environments. In the conducted survey, 33% of the papers are found using statistical algorithms, 36% of heuristic algorithms and 31% of hybrid algorithms.
Input data mapping to use cases of prediction in smart farms
Widely used prediction algorithms in smart farm
3.4 Smart Health Management
Smart health management includes a provision of intelligent and connected medical services such as electronic record management, smart home health services, and smart clinical services. Smart health management provides customization of medical services for the patients such as personalized recom¬mendation by interpreting the information in context of the specific patient. The inputs required for smart health management are periodic readings from the patient’s on body sensors and the surrounding sensors, patient’s history, patient’s current medication, clinics related records, etc. [88-155].
The commonly considered use cases are disease prediction, clinical events prediction, driver’s health prediction for smart cars and elderly wellness prediction for smart homes. Both the statistical and heuristic algorithms are used for predicting the smart health prediction scenarios. Table 7 provides the use of prediction algorithms applied in different prediction categories in the smart health management such as disease prediction [88-95], clinical events prediction [96-101], driver health (smart cars) [102-108] and elderly wellness (smart homes) [109-115]. We can observe from Table 7 that Markov chains are highly used statistical approach for prediction in smart health management; while in heuristic algorithms, DNNs and ANNs are highly applied. In the conducted survey, 38% of the papers are found using statistical algorithms, 39% of heuristic algorithms and 23% of hybrid algorithms.
Widely used prediction algorithms in smart health management
3.5 Smart Energy Management
Smart energy management incudes better planning for the distribution of energy in different sectors based on previous energy consumption and future predictions. Databases for energy demand, con¬sumption, and usage patterns are maintained for different appliances. The inputs required for smart energy management are periodic readings from the sensors involved, time series data of energy consumption in past, energy rates, peak hours, etc. [116-134]. In the conducted survey, 42% of the papers are found using statistical algorithms, 39% of heuristic algorithms and 19% of hybrid algorithms.
Utility companies use many statistical and heuristic forecasting approaches to estimate the future energy demand. In the related studies, many prediction approaches have been proposed to cater the prediction problems in smart energy prediction scenarios. Table 8 provides the use of prediction algorithms for energy prediction in smart environments [116-134]. We can observe from Table 8 that naïve Bayes is most widely used statistical algorithm while DNNs and GA are highly applied for prediction in smart energy application.
Widely used prediction algorithms in smart energy management
4. Conclusion and Future Directions
In this study, we provide an extensive survey of prediction algorithms used in the smart spaces such as smart homes, smart farms and smart cars and smart applications such as smart health and smart energy management. This survey paper provides a summarized view of prediction algorithms in specified categories and highlights the role of prediction algorithms in each sub-domain of smart environments. The survey gathers all the algorithms used in the smart space and provides a classification based on algorithms category. The survey presents the most frequently used algorithms for different prediction problems which can be beneficial for new comers to understand the field better and get guidance. We also highlight the main algorithms which are central to the certain smart environments’ subfield indi¬cating the effectiveness of these algorithms. We have presented the input data for prediction tasks in each sub-domain along with the most promising prediction algorithms in each of the domains. Table 9 summarizes the most popular algorithms in each sub domain of smart environments.
Summary of frequently used algorithms
With the rapid growth in the smart spaces, and many valuable work efforts being made and published in large numbers, it is a difficult job to collect, prune and make an abstract view of the research works of a sub-field. In future, we aim to continue to survey a new aspect for the smart spaces, e.g., optimization techniques, sensor and actuator control techniques, to highlight its most successful algorithms along with classification and use cases.
Acknowledgement
This research was supported by Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education (No. 2018R1D1A1A09082919, 2020R1I1A3070744), and this research was supported by Energy Cloud R&D Program through the NRF funded by the Ministry of Science, ICT (MSIT) (No. 2019M3F2A1073387), and this research was supported by Institute for Information & communications Technology Planning & Evaluation (IITP) grant funded by the Korea government (MSIT) (No.2018-0-01456, AutoMaTa: autonomous management framework based on artificial intelligent technology for adaptive and disposable IoT).