Professional Documents
Culture Documents
Design of Smart Home Implementation Within IoT Natural Language Interface
Design of Smart Home Implementation Within IoT Natural Language Interface
Design of Smart Home Implementation Within IoT Natural Language Interface
ABSTRACT To process continuous sensor data in Internet of Things (IoT) environments, this study
optimizes queries using multiple MJoin operators. To achieve efficient storage management, it classifies
and reduces data using a support vector machine (SVM) classification algorithm. A global shared query
execution technique was used to optimize multiple MJoin queries. By comparing each kernel function of the
SVM classification algorithm, the system’s performance was evaluated through experiments according to
the selected optimal kernel function and changes in sliding window size. Furthermore, to implement a smart
home system that can actively respond to users, classified and reduced sensor data were utilized to enable
the intelligent control of devices inside the home. The sensor data (e.g., temperature, humidity, gas) used
to recognize the current conditions of an IoT-based smart home system and corresponding date data were
classified into decision trees, and the system was designed using five sensors to intelligently control priorities
such as ventilation, temperature, and fire and intrusion detection. The experiments demonstrated that the mul-
tiple MJoin technique yields high improvements in performance with relatively few searches. In this study,
the sigmoid was selected as the optimal kernel function for the SVM classification algorithm. According to
the SVM classification algorithm results, based on changes in the sliding window size, the average error rate
was 2.42%, the reduction result was 17.58%, and the classification accuracy was 85.94%. According to the
comparison of the classification performance of SVM and other algorithms, the SVM classification algorithm
exhibited a minimum 9% better classification performance. Thus, compared to existing home systems, this
algorithm is expected to increase system efficiency and convenience by enabling the configuration of a more
intelligent environment according to the user’s characteristics or requirements.
INDEX TERMS Application, Internet of Things (IoT), sensor data, smart home system, SVM algorithm.
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/
VOLUME 8, 2020 84929
T.-Y. Kim et al.: Design of Smart Home Implementation Within IoT Natural Language Interface
IoT environment, and an efficient processing method for A. IoT AUTOMATIC CONTROL SYSTEM
the sensor data collected through a sensor network is nec- Automatic control uses control devices, machines, and com-
essary [5]. In a conventional home IoT system, the user puters to automatically perform control operations [19].
changes the environment manually by controlling smart Tasks are configured automatically without user intervention.
devices that are connected to the same network via a mobile Automatic control services can increase the efficiency of
device [6], [7]. However, recent IoT-based home systems use device usage in an environment using several IoT devices
a method that operates devices intelligently according to the simultaneously, and the importance of these services is
threshold values defined to control the environment. becoming clear [20].
Such IoT-based home systems must intelligently select Automatic control systems are used in many fields, includ-
devices to perform tasks according to changes in the environ- ing smart homes, which provide customized environments
mental data within the home, and they must transmit warning via devices in the home; self-driving cars, which drive by
messages to the user before dangerous situations occur within themselves without operation by a human; and healthcare for
the home, so that the user can deal with them [8]. user health management and disease prevention.
However, conventional IoT-based home systems operate
passively according to the changes in environmental data
B. IoT REMOTE CONTROL SYSTEM
within the home, and therefore the user must manually select
Remote control involves the indirect control of a device with-
devices by themselves. Because user intervention cannot be
out a person directly operating the device using a communi-
freely performed, it is difficult to change a device’s status at
cations network. Currently, as the demand for remote con-
the desired time. For example, sensors with low rates of use
trol is increasing, IoT has evolved into an environment that
can lead to data waste and power loss when tasks are executed
can easily be controlled by the user without any knowledge
according to rules set by the developer without accounting for
of IoT.
specific characteristics of a user [9]–[11].
Remote control systems are used to remotely read the
This study uses multiple MJoin operators to efficiently
usage of gas, water, and electrical energy in a household. They
process sensor data (stream data) in an IoT environment.
are also used in industrial sites and smart buildings, which
A global shared query execution technique was used for query
require continuous management. In addition, remote control
optimization, and the SVM classification algorithm was used
can use the user’s smart devices to operate devices within a
to classify and reduce the data to enable efficient storage
home or perform tasks as required by the user.
management. Thus, multiple MJoin operators are used for
In cloud-based IoT framework structures, the app layer
the establishment of a global shared query execution plan
is divided into the IoT sub and non-IoT sublayers. In the
and to mitigate the window update and rooting problems
IoT sublayer, structured and unstructured data are created
associated with join operation results. Moreover, an efficient
by sensors and devices. In the non-IoT sublayer, the user’s
multi-query optimization and processing technique is used
remote requests are transmitted to the cloud.
for the stream data environment of IoT [12]. This study also
The cloud processes these requests in a handler and trans-
evaluates the system performance through experimentation
mits them to a manager to share them with other apps. In this
according to the changes in the sliding window size as well
manner, the processing time in large-scale systems can be
as the optimal (sigmoid) kernel function of the SVM classifi-
reduced by skipping the processing step when user requests
cation algorithm for efficient storage management. Finally,
stored in the cloud are used. This approach also provides
to implement a system that can actively respond to users,
custom services that can remotely control devices in systems
classified and reduced sensor data were utilized to enable
that have similar IoT environments [21].
intelligent control of devices inside the home [13].
Users use applications to set the sensor threshold value generating a training data set by the user. The stream patterns
range, and a device can be controlled by checking the sensor in this study are divided into five: a filtering pattern for
data. The range values set in the database are loaded and removing outliers, an increase or decrease pattern, a pattern
referred to when performing tasks. for detecting values above or below a threshold, a processing
The sensors consist of temperature, humidity, gas, detec- pattern applied after calculating the sum and average of the
tion, and vibration sensors in the home. The temperature data in a window, and a pattern to be compared with the user-
sensors were designed to be combined with the gas sensors designated pattern.
such that they can handle dangerous situations. In addition, To recognize all user-defined patterns, these five divisions
tasks performed with several sensors are digitized and stored (or parts) were classified considering the user’s understand-
in the database. Based on the sensor data, the system provides ing and the computational complexity involved in the process.
a convenient IoT environment by performing tasks in which Because any part can be defined by a user when a pattern is
the events that are related to the tasks are suitable for the executed, each part is classified based on the most universal
situation or environment. Based on the sensor data range set and easy to understand criteria to facilitate system use. Addi-
by the user and the database data, the user analyzes the data in tionally, quick processing is required to classify incoming
the application to control the sensors. Sensors with low usage data in real time. Therefore, parts are separated by complexity
can be placed in a standby state, and a sensor’s state can be to prevent long computing time and efficiently classify stream
changed to be operational again. data.
Table 1 shows an overview of the definitions for the five
classified patterns.
B. WINDOW DEFINITION AND STREAM PATTERN
CONDITION PROCESSING
Window processing of stream data refers to the division of 1) FILTERING PATTERNS FOR ELIMINATING OUTLIERS
incoming data into window units in real time. Here, the inter- The pattern for removing outliers is used to remove incorrect
val and size used to define a window for the window opera- data. When data are input from a sensor, the value of the
tions are the values saved in a database by a user. The window data is influenced by the environment. Thus, the likelihood of
interval is the range over which the window moves by a incorrect data being generated increases if the device operates
specified distance over the data stream, and the ‘‘size’’ is the in a harsh environment or in a remote location. In addition,
unit in which data are aggregated. bad data can be generated from sensor malfunctions. Bad data
After window processing, the data segments divided by contained in training data can impact the accuracy of training
windows are processed according to the pattern condition. results. Therefore, the user must store threshold values in
‘‘Pattern condition’’ refers to the classification method for the database so that values above or below the threshold are
the system, and therefore a query execution plan that experi- reduced search space and few searches conducted.
ences blocking will exceed the system’s memory limitations The characteristics of the MJoin operators must be suffi-
and require input stream sampling or load shedding. ciently reflected.
MJoin has been proposed as an efficient join processing A sliding window constraint that allows only limited
technique for multidimensional stream data that diverge from memory to be used in a data stream environment must be
this kind of join-based form and can accept multiple streams reflected.
as input. MJoin was developed using the traditional sym- First, owing to the characteristics of MJoin rather than
metric hash join. In other words, unlike the conventional to the set of all possible query execution plans, the search
symmetric hash join, MJoin can accept multiple inputs. space can be greatly reduced by searching based on a single
Therefore, it does not pass the intermediate results to query. Second, excessively splitting the operators can result in
the next operator and produces the join results for multiple performance degradation. Increasing the number of operators
streams. increases contextual exchange and tends to violate the opti-
Figure 4 illustrates the MJoin processing structure. mized probing sequence. It is instead preferable to establish
n
n
Y X Y
CR1 ,R2 ,R3 ...Rn = f · rk · Wi (1)
all k=1 i=1
selectivities
i 6= k
FIGURE 5. The multiple MJoin optimization algorithm.
In addition, the window size for each join operation result
can be predicted using Equation 2. This equation can be used the algorithm excludes the selected set and proceeds to the
to measure the cost of the parent join operator. next step. If the selected set meets the sharing condition, then
Y n
Y the part containing the elements of the selected set is searched
Cparent = f · Wi (2) for within all given sets (including the selected set), and
all i=1 that part is replaced with the selected set. Thus, all common
Finally, the sliding window constraint must be taken into elements are replaced by one element. Finally, sets with only
account. The join operators can be shared and processed one element are excluded from the next step because a set
simultaneously, even if the windows defined in each query having one element signifies that the query execution plan
differ. When an operator is shared, it will contain the largest has already been completed. These tasks are repeated until
window size, meaning that it can store more tuples after the all queries are excluded.
operator is shared than if being processed as an independent Each time a tuple is removed or routing information is
operator. added by a window update in a raw data stream, all join oper-
Suppose that there are m shareable queries Qi (1 < i < m), ation tuples related to this tuple must be reflected to correctly
the shared MJoin operator has k input streams Rj (1 < j < k), perform a window update and routing. To accomplish this,
each query Qi uses the window size Wij for each input Rj , an index assignment scheme is used. That is, by assigning an
and the largest window size defined for all queries for each index, it is possible to identify from which tuples each tuple is
Rj is Wj∗ . With these parameters, the processing amount generated or, conversely, which tuples each tuple generated.
is reduced when the operations are shared by meeting the This requires that two types of index information, PrevID and
condition stated by Equation 3. PostID, are written in each tuple.
In addition to assigning an index, routing information is
m Y
k k
X X added to display more detailed location information for each
Wij ≥ Wj∗ (3)
tuple. Routing can be considered as a task that assesses
i=1 j=1 j=1
which queries are satisfied and which are not satisfied by
Based on the above, the multiple MJoin optimization algo- the join operation tuples based on the window defined for
rithm that approximates and establishes the optimal global each input in each query when the join operator is shared.
query execution plan of multiple MJoin operators is imple- Therefore, branch information must be calculated before the
mented as shown in Figure 5. Each query is represented by join operation tuple is sent outside the operator.
one operator, and each operator can be represented by a set The dead vector technique was originally proposed for the
of input streams. shared processing of join operations and select operations.
As indicated in the multiple MJoin optimization algorithm, When executing a select operation, the join operation is
one query, that is, one MJoin, is selected at every step. In each executed while recording the match information in the dead
step, if a plurality of the most shared sets is selected, then the vector of the tuple without removing the tuple. The original
set with the highest processing cost among these is selected. dead vector is merged into the generated tuple and routing
If the selected set does not meet the sharing condition, then is executed using that information. In this study, the dead
TABLE 2. SVM kernel representative types. TABLE 3. Kernel representative types of SVM classification algorithm.
The sensor data measured to recognize the smart home been exceeded and a gas leak has been detected. When a gas
system’s status (temperature, humidity, and gas) and the date leak is detected, the gas leak warning message implemented
data were classified into each task using a decision-making by Firebase Cloud Message (FCM) is sent to the user. After
tree. The date data were classified into seasons and tasks, and the gas leak is detected, the temperature sensor’s value is
the sensor data were used to set the devices. received as input. If the temperature sensor value exceeds the
Figure 7 shows the proposed decision-making tree for threshold value, then a fire is detected, and a fire alert message
sensor data (temperature and humidity). is sent to the user.
The system determines whether the temperature sensor In this manner, the system determines whether sensor data
values have been inputted and begins classification. If the (temperature, humidity, and gas) have been inputted, and
temperature sensor values have been inputted, then classifi- begins classification. In the decision-making tree of each
cation begins, and the current date is used to classify times sensor, the season is classified by the data and sensor values,
into the first and second halves of the year. If the temperature and the task is classified according to the season.
sensor value has not been inputted, then classification does The reason that the season is classified using a
not begin, and the standby state is maintained. If classifi- decision-making tree is that the selected devices and device
cation into the first and second halves of the year has been operations must change according to the environmental
completed, then the current month is set as the classification changes within the home, and the types of active devices and
standard for determining the season. tasks are different for each season. The task operations are
After the season has been classified, the current tempera- determined to set the device and its status by comparing the
ture value is compared with the seasonal threshold value, and classified task’s threshold value with the current sensor value.
the task operation is determined. If the task has begun, then By setting threshold values for each season, the environment
a device that will operate during the season’s task is selected within the home can be maintained as the seasons change
and transmitted to the automatic relationship-setting module. In addition, five sensors are used to intelligently control
Like the temperature sensor, the system also determines the priorities for ventilation, temperature, fire, and intrusion.
whether the humidity sensor value has been inputted and The relationships between the devices are set to prevent errors
begins classification. After the system completes classifica- and bottlenecks resulting from operating the selected devices
tion into the first and second halves of the year and into simultaneously.
seasons, the humidity sensor value is compared with the The statuses of the devices selected via device classifica-
seasonal threshold value. The task operation is determined, tion are updated in the device database, and then the devices’
and the devices are selected. statuses are compared in the relationship-setting module.
Figure 8 shows the decision-making tree for the gas sensor Simultaneous operation of the devices can be prevented by
data. When the gas values measured by the sensors have been setting their priorities and operating them sequentially [34].
inputted, it is determined whether the threshold value has Figure 9 shows the priorities for the tasks.
The smart home system was designed such that an are transmitted to the server and saved in the Devices
application could be used to monitor and control the sta- table. For the saved data, a device control command is
tuses of devices, as shown in Figure 10. When the user transmitted to the Arduino (Uno) module via the Wi-Fi
changes a device status, the selected device’s status data shield [35].
The Arduino (Uno) module executes the command accord- single system. There are 20 types of sensors, such as for tem-
ing to the change in the device’s status. If the user wants perature, humidity, gas, and vibration, spread across several
to include the device’s operation in the task again and exe- spaces in the sensor network environment of IoT. In addition,
cute it, then the device’s status is changed to standby via we determined a total of 1 million tuples sent by each stream.
the application’s remote control, and the operation can be Although the input rate is set to 1000 tuples per second,
performed through the connected task. As such, the user can it takes 1000 seconds to receive the content of all streams,
intervene at the desired moment and control the device’s which is sufficient when conducting the experiment. Note that
operation, and therefore user-customized services can be one stream with a total of 1 million tuples is considered to be
provided [36], [37]. composed of an infinite amount given that its size cannot be
determined in a real environment. A total of one million tuples
IV. EXPERIMENT AND IMPLEMENTATION were defined as 300 tuples per second. An example is a sensor
To evaluate the performance of the system proposed in network environment wherein 300 sensors are spread over
this study, a control environment was created from an several spaces to collect one type of information and each
Arduino (Uno) module, a Wi-Fi shield, and five sensors sensor collects a large amount of information per second.
(temperature, humidity, gas, vibration, and detection). The The key attribute values in all tuples were integers ranging
system employed Windows as the operating system. from 0 to 1000. These key attribute values were generated at
The CPU was an Intel i5-4460, and the system had 8 GB the same frequency across all tuples. The generation sequence
of RAM. A MySQL database was used for both the sensor was randomized; key attribute values in the sliding window
data and Arduino remote control data. An Advance Power were changed each time, thereby continuously varying the
Management (APM) Setup was used to communicate the selection rate of the join operators.
measured data. Multiple queries were applied to the generated input
streams to execute multiple join operations; each query could
A. MULTIPLE MJION QUERY PROCESSING OPTIMIZATION be applied to a maximum of 20 different input streams.
In the multiple MJoin technique, by sharing operators, a join Note also that because a single input stream can be present,
tree is formed, and purging and dead tuples are used for at most once in each query, it can occur as many times as
window updating and routing of the join operation results in the maximum number of queries. To refine the experiment,
the tree. the skewness of the input streams that appeared over several
In this experiment, we assumed 20 input streams using queries was reflected. In this experiment, the Zipf distri-
various environmental sensors for the optimization of multi- bution was used to apply asymmetry to the input streams
ple Mjoin query processing. Given that various sensor data in all queries. Furthermore, in each query, one tuple from
are generated without noticeable delay in an Internet-of- among 500, 1000, and 1500 tuples was randomly selected
things (IoT) environment, we conducted experiments on the as the window for each input stream, and each window was
optimization of the multiple Mjoin query processing. This generated with an even distribution. These three windows
experiment involved 20 types of information flow into a were used to create cases in which the sharing condition used
FIGURE 14. Average throughput: A FG B FG C VS A FG B FG C .
The multiple MJoin technique conducts searches based only TABLE 5. Confusion matrix.
on a query and fully accounts for the constraint placed on
the sliding window, enabling the establishment of a query
execution plan appropriate for a data stream environment.
The experimental results demonstrated that the multiple
MJoin technique achieves high improvements in performance
because it conducts relatively few searches.
Second, an accurate window updating technique under the
shared query execution plan was proposed. When a global
shared query execution plan is established, MJoin is split
and transformed into a tree or graph, leading to problems
in window updating for the operation result tuples. This
paper proposed an index-based search applicable to both
time-based and tuple count-based windows. Moreover, this
study extended the index assignment scheme and situation
data structure inside the join operator. Given this framework,
a purging tuple technique was proposed that maintains win- TABLE 6. Polynomial confusion matrix.
dow update accuracy and supports conducting only a few
searches.
Third, an accurate routing technique under the shared
query execution plan was proposed. Routing is closely related
to window updating for the join operation tuples. As such,
the index information used in the window update is utilized
for searching. This also allows the dead attribute required
for routing, thereby supporting fast routing for the operation
results. The dead tuple technique adds routing information
to the join operation results and is very similar to the purging
tuple technique. Because an index-based search is performed,
the routing information is correctly added to the correspond- Mjoin. The reason is that the query execution plan is set up
ing tuple. Numerous queries must be processed in an IoT based on the queries of the multiple Mjoin technique.
environment. Systems accessed by many users require faster Moreover, the performance and tuple usage of multiple
data stream processing. In this respect, the multiple MJoin Mjoin can be directly affected by the shared ratio of oper-
technique is expected to enable faster processing in such ators. When more queries are used and the input asymmetry
environments. becomes larger, the throughput increases and the total number
of tuples used decreases because more operators are shared.
5) A-5. SUMMARY However, if the number of queries and input skewness of a
Multiple Mjoin consumes a large amount of time to set up certain level is exceeded, we cannot expect a large increase
query execution plans when compared to an independently in the processing improvement rate. The reason is that the
executed Mjoin. It can be applied to real environments so that number of tuples used and the degree of input asymmetry
it can generate significant effects in terms of sacrificing the significantly influence operator sharing. Moreover, once it
initial short time by considering the subsequent throughput. exceeds a certain level, conditions are met wherein many
However, since the initial set-up time cannot process all operators can be shared.
inputs, they should be placed in the system buffer. Otherwise,
all tuples inputted during this time should be removed. That B. SVM OPTIMAL KERNEL FUNCTION SELECTION
is, a relatively short set-up time acts as a factor in improving This study analyzed SVM kernel functions and parameters to
the quality of the results. The multiple Mjoin technique can achieve optimal performance for the SVM classification algo-
be evaluated as a more suitable technique in terms of a data rithm. Table 5 lists several performance measurements that
stream environment given that it shows a shorter set-up time can be derived using true positive (TP), true negative (TN),
than the conventional optimization method. false positive (FP), and false negative (FN) values in the con-
Through various experiments, we confirmed that the mul- fusion matrix of the test set results. Using Table 5, the kernel
tiple Mjoin technique had a better performance and used less function achieving the highest accuracy was selected among
tuples than the independently executed Mjoin. Although the the SVM kernel functions. Accuracy in this case expresses
probability that operators are shared is very small, consider- how closely the actual value after SVM training matches the
ing that the number of queries is few or that the skewness predicted value of training.
of the input stream is low, it can nevertheless guarantee the Tables 6, 7, and 8 show the confusion matrices of the poly-
same or better performance than the independently executed nomial kernel, RBF kernel, and sigmoid kernel functions,
TABLE 7. RBF confusion matrix. TABLE 9. Error rate according to window size change.
TABLE 15. Humidity sensor task devices. algorithm results based on changes in sliding window size,
the average error rate was 2.42%, the reduction result was
17.58%, and the classification accuracy was 85.94%. Based
on the comparison of the SVM classification performance
with that of other algorithms, the SVM classification algo-
rithm achieved a minimum 9% better classification perfor-
mance than the other classification algorithms evaluated.
In addition, this study has proposed an IoT-based smart
home system that can use the classified and reduced sensor
data to intelligently control devices within the home.
and begin the tasks and select and operate the devices that The results of experiments on the classification and reduc-
correspond to these tasks. tion techniques proposed in this study demonstrated that
By setting the task priorities, the tasks that are being when the window size was divided by 5000, the storage
performed and their priorities can be compared, and space was reduced by a maximum of 18.7%, which was the
higher-priority tasks can suspend existing tasks, while most efficient. It was found that as the window size became
lower-priority tasks can be performed after existing tasks. larger, this reduction increased. The classification accuracy
In this manner, the user can freely intervene while tasks was highest at 88.6% with the window size divided by 3000.
are being performed to change the statuses of devices and In this study, we conducted experiments by arbitrarily
perform manual control. By doing so, user-customized ser- assuming 20 IoT environment sensors to optimize the mul-
vices can be provided to the user, and the user can experience tiple Mjoin query processing. Given that various sensor data
greater convenience via tasks that operate accurately accord- are generated without noticeable delay for a home system in
ing to the season. the IoT environment, a method that can efficiently process
a large amount of sensor data is necessary. Therefore, based
V. CONCLUSION on comparison of the conventional Mjoin and multiple Mjoin
Current systems in IoT environments use a large amount of methods, we proposed a method of optimizing the query
various sensor data. The types of sensors vary, because smart processing of stream data. In addition, to address the situation
devices are used differently according to the location, and of the smart home system based on the IoT, we classified
methods for using the sensors also vary according to their the sensor data (temperature, humidity, and gas) measured
purposes. However, most existing studies have focused on through the Arduino module and date data into tasks using
cooperation between devices or task efficiency, and there a decision tree. Then, we set up the devices using the sensor
is a tendency for these systems to have manual operations, data. Furthermore, we designed the system to intelligently
because they have not created an environment with sensors control the priorities for ventilation, temperature, fire, and
or other media. break-in using five sensors. Considering that the designed
Smart home systems must be able to create relationships system was implemented using only the limited sensor data
between various sensors attached to devices within the home measured through the Arduino module, several areas did not
and link them to efficiently perform tasks such as energy reflect all the environments of the home system in the IoT
management, cooling, heating, and ventilation. Various sen- environment. Thus, in the future, if we use the classified
sor data must be collected, and monitoring services must be and reduced sensor data proposed in this study using various
provided to the user. environmental sensors, the efficiency and convenience of the
To process fast and continuous stream data collected system are expected to increase because we will be able to
from sensor networks in an IoT environment, the hash configure an environment with a more intelligent system than
table-window join operator multiple MJoin was used to opti- the conventional home system, thus meeting users’ require-
mize queries, and the SVM algorithm was used to classify ments.
and reduce data for the purpose of efficiently managing In future research, it will be necessary to study a more effi-
stream data storage. A global shared query execution tech- cient sensor data-processing algorithm, which takes the pro-
nique for the query optimization of multiple MJoin was used, cessing time into account. Future studies will also expand on
and experiments verified that it yielded notable improve- and refine the classification statuses of the decision-making
ments in performance with relatively few searches. This study tree proposed in this study. In addition, future studies will
evaluated the system performance through experimentation use this system in a variety of IoT environments other than
according to changes in sliding window size and the selected a home system, to create more convenient and efficient
optimal kernel function of the SVM classification algorithm IoT environments regardless of location.
through evaluations of different kernel functions for effi-
cient storage management of the stream data. Based on the REFERENCES
performance evaluation results, the sigmoid kernel function
[1] M.-Z. Song, ‘‘A study on business types of IoT-based smarthome: Based
was selected as the optimal kernel function for the SVM on the theory of platform typology,’’ J. Inst. Internet, Broadcast. Commun.,
classification algorithm. According to the SVM classification vol. 16, no. 2, pp. 27–40, 2016, doi: 10.7236/JIIBC.2016.16.2.27.
[2] S. Yoon and J. Kim, ‘‘A study on the user’s value of the smart home service [22] M. Tao, K. Ota, and M. Dong, ‘‘Ontology-based data semantic man-
in the Internet of Things technology,’’ Int. J. Future Gener. Commun. Netw., agement and application in IoT- and cloud-enabled smart homes,’’
vol. 10, no. 6, pp. 65–80, Jun. 2017, doi: 10.14257/ijfgcn.2017.10.6.07. Future Gener. Comput. Syst., vol. 76, pp. 528–539, Nov. 2017, doi:
[3] M. Alaa, A. A. Zaidan, B. B. Zaidan, M. Talal, and 10.1016/j.future.2016.11.012.
M. L. M. Kiah, ‘‘A review of smart home applications based on Internet [23] W. Lee, S. Cho, P. Chu, H. Vu, S. Helal, W. Song, Y.-S. Jeong,
of Things,’’ J. Netw. Comput. Appl., vol. 97, pp. 48–65, Nov. 2017, doi: and K. Cho, ‘‘Automatic agent generation for IoT-based smart house
10.1016/j.jnca.2017.08.017. simulator,’’ Neurocomputing, vol. 209, pp. 14–24, Oct. 2016, doi:
[4] M. J. Lee, J. S. Lee, and Y. S. Han, ‘‘Adaptive priority queue- 10.1016/j.neucom.2015.04.130.
driven task scheduling for sensor data processing in IoT environments,’’ [24] T. Tachibana, T. Furuichi, and H. Mineno, ‘‘Implementing and evalu-
J. Korea Multimedia Soc., vol. 29, no. 9, pp. 1559–1566, 2017, doi: ating priority control mechanism for heterogeneous remote monitoring
10.9717/kmms.2017.20.9.1559. IoT system,’’ in Proc. Adjunct Proc. 13th Int. Conf. Mobile Ubiquitous
[5] Y. Yin, J. Xia, Y. Li, Y. Xu, W. Xu, and L. Yu, ‘‘Group-wise itinerary Systems: Comput. Netw. Services-MOBIQUITOUS, 2016, pp. 239–244,
planning in temporary mobile social network,’’ IEEE Access, vol. 7, doi: 10.1145/3004010.3004040.
pp. 83682–83693, 2019, doi: 10.1109/ACCESS.2019.2923459. [25] H. Gao, Y. Xu, Y. Yin, W. Zhang, R. Li, and X. Wang, ‘‘Context-
[6] W. Lee, S. Cho, P. Chu, H. Vu, S. Helal, W. Song, Y.-S. Jeong, aware QoS prediction with neural collaborative filtering for Internet-of-
and K. Cho, ‘‘Automatic agent generation for IoT-based smart house Things services,’’ IEEE Internet Things J., early access, Dec. 2, 2019, doi:
simulator,’’ Neurocomputing, vol. 209, pp. 14–24, Oct. 2016, doi: 10.1109/JIOT.2019.2956827.
10.1016/j.neucom.2015.04.130. [26] R. M. Duarte, A. R. Du Bois, M. L. Pilla, G. G. H. Cavalheiro, and
[7] Y. Yin, L. Chen, Y. Xu, J. Wan, H. Zhang, and Z. Mai, ‘‘QoS prediction R. H. S. Reiser, ‘‘Comparing the performance of concurrent hash tables
for service recommendation with deep feature learning in edge computing implemented in haskell,’’ Sci. Comput. Program., vol. 173, pp. 56–70,
environment,’’ Mobile Netw. Appl., vol. 25, no. 2, pp. 391–401, Apr. 2020, Mar. 2019, doi: 10.1016/j.scico.2018.06.004.
doi: 10.1007/s11036-019-01241-7. [27] E. Brun, A. Guittet, and F. Gibou, ‘‘A local level-set method using a hash
[8] P. P. Ray, M. Mukherjee, and L. Shu, ‘‘Internet of Things for disas- table data structure,’’ J. Comput. Phys., vol. 231, no. 6, pp. 2528–2536,
ter management: State-of-the-Art and prospects,’’ IEEE Access, vol. 5, Mar. 2012, doi: 10.1016/j.jcp.2011.12.001.
pp. 18818–18835, 2017, doi: 10.1109/ACCESS.2017.2752174. [28] Y. Zhu, V. Raghavan, and E. A. Rundensteiner, ‘‘A new look at gen-
erating multi-join continuous query plans: A qualified plan generation
[9] W.-Y. Lee, H.-M. Ko, J.-H. Yu, and K.-B. Sim, ‘‘An implemen-
problem,’’ Data Knowl. Eng., vol. 69, no. 5, pp. 424–443, May 2010, doi:
tation of smart dormitory system based on Internet of Things,’’
10.1016/j.datak.2009.11.001.
J. Korean Inst. Intell. Syst., vol. 26, no. 4, pp. 295–300, Aug. 2016, doi:
[29] J. Lee, E. Lee, and D.-K. Baik, ‘‘Simulation and performance evaluation of
10.5391/JKIIS.2016.26.4.295.
the self-adaptive light control system,’’ J. Korea Soc. Simul., vol. 25, no. 2,
[10] D. Mulfari, A. L. Minnolo, and A. Puliafito, ‘‘Wearable devices and IoT
pp. 63–74, Jun. 2016, doi: 10.9709/JKSS.2016.25.2.063.
as enablers of assistive technologies,’’ in Proc. 10th Int. Conf. Develop.
[30] J. Yu, J. Li, Z. Yu, and Q. Huang, ‘‘Multimodal transformer with
eSystems Eng. (DeSE), Jun. 2017, pp. 14–19, doi: 10.1109/DeSE.2017.51.
multi-view visual representation for image captioning,’’ IEEE Trans.
[11] J.-H. Lee, ‘‘Energy-efficient clustering scheme in wireless sensor net- Circuits Syst. Video Technol., early access, Oct. 15, 2019, doi:
work,’’ Int. J. Grid Distrib. Comput., vol. 11, no. 10, pp. 103–112, 10.1109/TCSVT.2019.2947482.
Oct. 2018, doi: 10.14257/ijgdc.2018.11.10.09. [31] J. Yu, B. Zhang, Z. Kuang, D. Lin, and J. Fan, ‘‘IPrivacy: Image pri-
[12] H. Gao, Y. Duan, L. Shao, and X. Sun, ‘‘Transformation-based process- vacy protection by identifying sensitive objects via deep multi-task learn-
ing of typed resources for multimedia sources in the IoT environment,’’ ing,’’ IEEE Trans. Inf. Forensics Security, vol. 12, no. 5, pp. 1005–1016,
Wireless Netw., pp. 1–17, Nov. 2019, doi: 10.1007/s11276-019-02200-6. May 2017, doi: 10.1109/TIFS.2016.2636090.
[13] T.-Y. Kim, S.-H. Bae, and Y.-E. An, ‘‘A study on intelligent smart home [32] M. Ziȩba, J. M. Tomczak, M. Lubicz, and J. Swia̧tek, ‘‘Boosted SVM
system in Internet of Things (IoT) environment,’’ Int. J. Internet Things for extracting rules from imbalanced data in application to prediction of
Appl., vol. 3, no. 1, pp. 1–6, 2019. the post-operative life expectancy in the lung cancer patients,’’ Appl. Soft
[14] D.-W. Song, K.-S. Kim, and S.-K. Lee, ‘‘An relational analysis Comput., vol. 14, pp. 99–108, Jan. 2014, doi: 10.1016/j.asoc.2013.07.016.
between humidity, temperature and fire occurrence using public [33] Z. Yang and Y. Xu, ‘‘A safe sample screening rule for Laplacian twin
data,’’ Fire Sci. Eng., vol. 28, no. 2, pp. 82–90, Apr. 2014, doi: parametric-margin support vector machine,’’ Pattern Recognit., vol. 84,
10.7731/KIFSE.2014.28.2.082. pp. 1–12, Dec. 2018.
[15] J. Geng and Z. He, ‘‘Innovation and development strategy of logistics [34] J. Yu, Z. Kuang, B. Zhang, W. Zhang, D. Lin, and J. Fan, ‘‘Leveraging
service based on Internet of Things and RFID automatic technology,’’ Int. content sensitiveness and user trustworthiness to recommend fine-grained
J. Future Gener. Commun. Netw., vol. 9, no. 12, pp. 251–262, Dec. 2016, privacy settings for social image sharing,’’ IEEE Trans. Inf. Forensics
doi: 10.14257/ijfgcn.2016.9.12.23. Security, vol. 13, no. 5, pp. 1317–1332, May 2018.
[16] H. Yang, ‘‘The novel modern Internet of Things system structure optimiza- [35] S. Ahmad, S. Malik, and D.-H. Kim, ‘‘Comparative analysis of simulation
tion methodology based on information theory and communication signal tools with visualization based on realtime task scheduling algorithms for
transmission model,’’ Int. J. Future Gener. Commun. Netw., vol. 9, no. 9, IoT embedded applications,’’ Int. J. Grid Distrib. Comput., vol. 11, no. 2,
pp. 119–132, Sep. 2016, doi: 10.14257/ijfgcn.2016.9.9.11. pp. 1–10, Feb. 2018, doi: 10.14257/ijgdc.2018.11.2.01.
[17] P. Kumar and U. C. Pati, ‘‘IoT based monitoring and control of appli- [36] Y. Yin, L. Chen, Y. Xu, and J. Wan, ‘‘Location-aware service recommenda-
ances for smart home,’’ in Proc. IEEE Int. Conf. Recent Trends Elec- tion with enhanced probabilistic matrix factorization,’’ IEEE Access, vol. 6,
tron., Inf. Commun. Technol. (RTEICT), Bangalore, India, May 2016, pp. 62815–62825, 2018, doi: 10.1109/ACCESS.2018.2877137.
pp. 1045–1050, doi: 10.1109/RTEICT.2016.7808011. [37] J. Yu, M. Tan, H. Zhang, D. Tao, and Y. Rui, ‘‘Hierarchical deep
[18] S. Kwon, D. Park, H. Bang, and Y. Park, ‘‘Real-time and parallel seman- click feature prediction for fine-grained image recognition,’’ IEEE
tic translation technique for large-scale streaming sensor data in an Trans. Pattern Anal. Mach. Intell., early access, Jul. 30, 2019, doi:
IoT environment,’’ J. KIISE, vol. 42, no. 1, pp. 54–67, Jan. 2015, doi: 10.1109/TPAMI.2019.2932058.
10.5626/JOK.2015.42.1.54.
[19] C. Imtar, U. Muhammad, F. Arshad, and U. K. Wajid, ‘‘Towards the
development of an efficient and cost effective intelligent home system
TAE-YEUN KIM received the B.S., M.S., and
based on the Internet of Things,’’ Int. J. Comput. Sci. Inf. Secur., vol. 14,
Ph.D. degrees from the Department of Com-
no. 6, pp. 343–350, 2016.
puter Science and Statistics, Chosun University,
[20] K. Nair, J. Kulkarni, M. Warde, Z. Dave, V. Rawalgaonkar, G. Gore, and
J. Joshi, ‘‘Optimizing power consumption in iot based wireless sensor Gwangju, South Korea, in 2002, 2005, and 2015,
networks using Bluetooth low energy,’’ in Proc. Int. Conf. Green Comput. respectively. From 2012 to 2015, he was a Senior
Internet Things (ICGCIoT), Oct. 2015, pp. 589–593, doi: 10.1109/ICG- Researcher with Shinhan Systems Corporation.
CIoT.2015.7380533. He is currently working as a Professor with
[21] C. K. Dehury and P. K. Sahoo, ‘‘Design and implementation of a novel Chosun University, South Korea. His research
service management framework for IoT devices in cloud,’’ J. Syst. Softw., interests include artificial intelligence, bioinfor-
vol. 119, pp. 149–161, Sep. 2016, doi: 10.1016/j.jss.2016.06.059. matics, smart grid computing, and the IoT.
SANG-HYUN BAE received the B.S. and M.S. YOUNG-EUN AN received the Ph.D. degree in
degrees from the Department of Electrical Engi- information and communication engineering from
neering, Chosun University, Gwangju, South Chosun University, in 2010. She was a Professor at
Korea, in 1982 and 1984, respectively, and the the Chosun University College of Science & Tech-
Ph.D. degree from the Department of Infor- nology, South Korea, from 2011 to 2014. Since
mation Science, Tokyo Metropolitan University, March 2014, she has been a Professor at Chosun
Tokyo, Japan, in 1988. He was a Researcher with University, South Korea.
the Department of Electrical Engineering, Tokyo
Institute of Technology, Japan, in 1985. He was
also a Visiting Professor with the Department of
Information Engineering, Nara Institute of Technology, Japan, in 1997, and at
the Department of Information Engineering, University of Alberta, Canada,
in 2002. He is currently a Professor with the Department of Computer
Science and Statistics, Chosun University, Gwangju. He was a member of
the Board of Directors of NRF, South Korea, from 2012 to 2013.