context-aware computing, learning, and big data in...

27
IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware Computing, Learning, and Big Data in Internet of Things: A Survey Omer Berat Sezer , Erdogan Dogdu, and Ahmet Murat Ozbayoglu Abstract—Internet of Things (IoT) has been growing rapidly due to recent advancements in communications and sensor tech- nologies. Meanwhile, with this revolutionary transformation, researchers, implementers, deployers, and users are faced with many challenges. IoT is a complicated, crowded, and complex field; there are various types of devices, protocols, communication channels, architectures, middleware, and more. Standardization efforts are plenty, and this chaos will continue for quite some time. What is clear, on the other hand, is that IoT deployments are increasing with accelerating speed, and this trend will not stop in the near future. As the field grows in numbers and het- erogeneity, “intelligence” becomes a focal point in IoT. Since data now becomes “big data,” understanding, learning, and reasoning with big data is paramount for the future success of IoT. One of the major problems in the path to intelligent IoT is understand- ing “context,” or making sense of the environment, situation, or status using data from sensors, and then acting accordingly in autonomous ways. This is called “context-aware computing,” and it now requires both sensing and, increasingly, learning, as IoT systems get more data and better learning from this big data. In this survey, we review the field, first, from a historical perspective, covering ubiquitous and pervasive computing, ambi- ent intelligence, and wireless sensor networks, and then, move to context-aware computing studies. Finally, we review learning and big data studies related to IoT. We also identify the open issues and provide an insight for future study areas for IoT researchers. Index Terms—Big data in Internet of Things (IoT), context awareness, data management and analytics, machine learning in IoT. I. I NTRODUCTION I NTERNET of Things (IoT) is the umbrella phrase covering all sorts of things connected to Internet. These “things” include everything from dummy sensors, like motion sensors, temperature measuring devices, etc., to various types of smart things, such as smart phones, smart meters, autonomous cars, buildings, etc. The idea is that all these things will collect data, share data, and information, and at the end everything in this ecosystem (systems, people, etc.) act accordingly in smart ways so that our lives are easier, better, and in harmony. Manuscript received January 26, 2017; revised June 22, 2017 and August 29, 2017; accepted November 11, 2017. Date of publication November 15, 2017; date of current version February 9, 2018. (Corresponding author: Omer Berat Sezer.) O. B. Sezer and A. M. Ozbayoglu are with the Department of Computer Engineering, TOBB University of Economics and Technology, 06560 Ankara, Turkey (e-mail: [email protected]; [email protected]). E. Dogdu is with the Department of Computer Engineering, Cankaya University, 06790 Ankara, Turkey (e-mail: [email protected]). Digital Object Identifier 10.1109/JIOT.2017.2773600 The IoT paradigm started with radio frequency identifica- tion (RFID) and sensor network technologies. In 1999, this term was first mentioned by Ashton [1]. However, the def- inition has been changing with the evolving technology, and lately, it has become “The Internet of Things allows people and things to be connected Anytime, Anyplace, with Anything and Anyone, ideally using Any path/network and Any service” [2]. In other words, intelligent devices (things) sense their sur- rounding environment, understand changes, interact with each other, and analyze the results by using existing Internet infras- tructure and standards. Today, IoT is widely used in different areas, such as transportation, healthcare, and utilities. The projected impact of IoT devices usage is tremendous. The U.S. National Intelligence Council predicts that “by 2025 Internet nodes may reside in things that we use everyday, food packages, furniture, paper documents, and more” [3]. In the future, almost all active devices will have an Internet interface. This vision enforces data scientists to provide solutions for the inevitable challenge of how to process the large amount of data coming from things, and how to make sense of the raw extracted data. The IoT paradigm covers a vast amount of different areas and poised to attack various existing and upcoming problems, such as hardware, power, security, reli- ability, interoperability, and data sharing problems. Several different architectures and middleware solutions are proposed for attempting to solve these aforementioned problems. In addition, there are also other study areas like context aware- ness, semantic and cloud computing, reasoning and processing, and data and service management, associated with the IoT concept. To better understand the studies and technologies regarding the IoT, it might also be beneficial to examine related areas, such as ubiquitous computing (UbiComp), pervasive com- puting, ambient intelligence (AmI), smart homes and cities, machine to machine (M2M) communication, wireless sensor networks (WSNs), semantic sensor networks (SSNs), Web of Things (WoT), context awareness, semantics and big data, machine learning, and data mining. UbiComp, pervasive computing, and AmI were proposed before the era of IoT studies and technologies. In the late 1980s, researchers studied the human-to-human interface using technology, and as a result, UbiComp was formed. Mark Weiser, the father of the idea, defined UbiComp and the smart environment as “the physical world that is richly and invisibly interwoven with sensors, actuators, displays, and computational elements, embedded seamlessly in the every- day objects of our lives, and connected through a continuous 2327-4662 c 2017 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

Upload: others

Post on 25-May-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1

Context-Aware Computing, Learning, and Big Datain Internet of Things: A SurveyOmer Berat Sezer , Erdogan Dogdu, and Ahmet Murat Ozbayoglu

Abstract—Internet of Things (IoT) has been growing rapidlydue to recent advancements in communications and sensor tech-nologies. Meanwhile, with this revolutionary transformation,researchers, implementers, deployers, and users are faced withmany challenges. IoT is a complicated, crowded, and complexfield; there are various types of devices, protocols, communicationchannels, architectures, middleware, and more. Standardizationefforts are plenty, and this chaos will continue for quite sometime. What is clear, on the other hand, is that IoT deploymentsare increasing with accelerating speed, and this trend will notstop in the near future. As the field grows in numbers and het-erogeneity, “intelligence” becomes a focal point in IoT. Since datanow becomes “big data,” understanding, learning, and reasoningwith big data is paramount for the future success of IoT. One ofthe major problems in the path to intelligent IoT is understand-ing “context,” or making sense of the environment, situation,or status using data from sensors, and then acting accordinglyin autonomous ways. This is called “context-aware computing,”and it now requires both sensing and, increasingly, learning, asIoT systems get more data and better learning from this bigdata. In this survey, we review the field, first, from a historicalperspective, covering ubiquitous and pervasive computing, ambi-ent intelligence, and wireless sensor networks, and then, move tocontext-aware computing studies. Finally, we review learning andbig data studies related to IoT. We also identify the open issuesand provide an insight for future study areas for IoT researchers.

Index Terms—Big data in Internet of Things (IoT), contextawareness, data management and analytics, machine learningin IoT.

I. INTRODUCTION

INTERNET of Things (IoT) is the umbrella phrase coveringall sorts of things connected to Internet. These “things”

include everything from dummy sensors, like motion sensors,temperature measuring devices, etc., to various types of smartthings, such as smart phones, smart meters, autonomous cars,buildings, etc. The idea is that all these things will collectdata, share data, and information, and at the end everything inthis ecosystem (systems, people, etc.) act accordingly in smartways so that our lives are easier, better, and in harmony.

Manuscript received January 26, 2017; revised June 22, 2017 andAugust 29, 2017; accepted November 11, 2017. Date of publicationNovember 15, 2017; date of current version February 9, 2018. (Correspondingauthor: Omer Berat Sezer.)

O. B. Sezer and A. M. Ozbayoglu are with the Department of ComputerEngineering, TOBB University of Economics and Technology, 06560 Ankara,Turkey (e-mail: [email protected]; [email protected]).

E. Dogdu is with the Department of Computer Engineering, CankayaUniversity, 06790 Ankara, Turkey (e-mail: [email protected]).

Digital Object Identifier 10.1109/JIOT.2017.2773600

The IoT paradigm started with radio frequency identifica-tion (RFID) and sensor network technologies. In 1999, thisterm was first mentioned by Ashton [1]. However, the def-inition has been changing with the evolving technology, andlately, it has become “The Internet of Things allows people andthings to be connected Anytime, Anyplace, with Anything andAnyone, ideally using Any path/network and Any service” [2].In other words, intelligent devices (things) sense their sur-rounding environment, understand changes, interact with eachother, and analyze the results by using existing Internet infras-tructure and standards. Today, IoT is widely used in differentareas, such as transportation, healthcare, and utilities.

The projected impact of IoT devices usage is tremendous.The U.S. National Intelligence Council predicts that “by 2025Internet nodes may reside in things that we use everyday, foodpackages, furniture, paper documents, and more” [3]. In thefuture, almost all active devices will have an Internet interface.This vision enforces data scientists to provide solutions forthe inevitable challenge of how to process the large amountof data coming from things, and how to make sense of theraw extracted data. The IoT paradigm covers a vast amountof different areas and poised to attack various existing andupcoming problems, such as hardware, power, security, reli-ability, interoperability, and data sharing problems. Severaldifferent architectures and middleware solutions are proposedfor attempting to solve these aforementioned problems. Inaddition, there are also other study areas like context aware-ness, semantic and cloud computing, reasoning and processing,and data and service management, associated with the IoTconcept.

To better understand the studies and technologies regardingthe IoT, it might also be beneficial to examine related areas,such as ubiquitous computing (UbiComp), pervasive com-puting, ambient intelligence (AmI), smart homes and cities,machine to machine (M2M) communication, wireless sensornetworks (WSNs), semantic sensor networks (SSNs), Web ofThings (WoT), context awareness, semantics and big data,machine learning, and data mining.

UbiComp, pervasive computing, and AmI were proposedbefore the era of IoT studies and technologies. In the late1980s, researchers studied the human-to-human interface usingtechnology, and as a result, UbiComp was formed. MarkWeiser, the father of the idea, defined UbiComp and thesmart environment as “the physical world that is richly andinvisibly interwoven with sensors, actuators, displays, andcomputational elements, embedded seamlessly in the every-day objects of our lives, and connected through a continuous

2327-4662 c© 2017 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission.See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

Page 2: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

2 IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018

network” [4], [5]. This vision supporting the interconnectionof embedded devices and computers was a pioneer in thedevelopment of the Internet. Moreover, the UbiComp ideaprovided an inspiration showing that computing is not lim-ited only to one platform, but is embedded with any device,anywhere, and anytime. These are the key terms of the IoT.

Pervasive computing is a term that is defined as “con-nected computers and sensors are communicating with eachother to understand the surrounding environment.” In the late1990s, researchers proposed another term called “AmI” thatwas expressed as “electronic devices support people for every-day activities by sensing and responding to them according tothe environmental changes.” AmI most frequently focuses onhome consumer electronics and their implementations. In the2000s, companies began to focus on smart home and homeautomation. Their applications and products were mostly basedon the communication of home appliances, and responding topeople via wired and wireless technology. Smart home tech-nologies generally focus on home appliances. On the otherhand, M2M technologies propose more comprehensive solu-tions in such a way that the machines can communicate witheach other directly using wired or wireless technologies. Thesesolutions and terms form the basis of the IoT.

In the 2000s, the researchers began to study WSN, whichis considered to be the ancestor of the IoT. In a WSN, dif-ferent types of sensors, such as temperature, pressure, sound,each behaving as a unique node, create networks together topass data through the network. WSNs can consist of hun-dreds or thousands of nodes. The size of a WSN dependson the application area and purpose of the application. SSNis a particular type of WSN that combines the semantic Weband sensor network. The data and descriptions from the sen-sors are encoded, defined, and expressed comprehensively viasemantic Web languages. WSN and SSN are the subset areasof IoT. In Section III, all related terms and studies on thesesubjects will be explained in detail.

In this paper, we also cover “the extended IoT” researchareas, namely WoT and semantic WoT (SWoT). WoT extendsIoT with standard Web protocols, such as the standard URLaccess to things, hyper-text transfer protocol (HTTP) com-munication protocol with things, and other standard Webprotocols, such as JSON for data format. This way IoTwill be more integrated with the ubiquitous Web. In 2007,several researchers (Dominique Guinard and Vlad Trifa areamong them) proposed the WoT and published the firstmanifesto of the WoT [6], [7]. SWoT on the other handfurther extends WoT by using standard semantic Web pro-tocols, so that data obtained in IoT is semantically mean-ingful and more interoperable within the ecosystem. Thingsare encoded through semantic Web languages [ResourceDescription Framework (RDF), Web Ontology Language(OWL), etc.] to handle the interoperability problem betweenontologies and data [8], [9]. The overall goal of these effortsis to make all IoT components more interoperable.

Some of the IoT research areas have overlaps with otherfields, such as context awareness, big data analytics, machinelearning, and data mining. Context awareness is a term that isused for representing the case where computer and embedded

devices sense and react according to the changes in their envi-ronment. First introduced by Schilit and Theimer [10] in 1994,a context-aware system acquires, understands, recognizes thecontext, and takes an action according to that particular con-text. For the IoT side, Perera et al. [2] completed a surveyon context-aware computing in IoT with a comparison of 50different projects. In Section IV, all related terms and studieson this subject will be covered in detail.

Big data is another overlapping study area where the corre-sponding methodologies for processing large data sets, whichcannot be processed through traditional data processing tech-niques, are examined. In real life, IoT data sets can easily havelarge volumes, varieties, and velocities due to the nature ofdata. In addition, IoT has the following features: “intermittentsensing, regular data collection, and sense-compute-actuateloops” [11]. Hence, IoT converges to big data to analyze dataand make inferences from collected datasets. According to apaper published by Zaslavsky et al. [11], it is expected thatthe total amount of data on earth will reach up to 35 ZB in2020. In Section VI, all related studies on this subject will bediscussed in detail.

Besides these topics, machine learning and data miningalso have some common studies that overlap with IoT. In1950s, Simon [12] defined machine learning as a “field ofstudy that gives computers the ability to learn without beingexplicitly programmed.” While analyzing the IoT data, inorder to get better results and higher overall performance,it might be necessary to include some predictive analyticswithin the system. Machine learning algorithms have beenstudied extensively in the last few decades and researchshows that these algorithms provide better predictions anddecisions with more available data collected from differentsources. In addition to machine learning, data mining alsosupports better predictions and decisions through using appro-priate learning algorithms. In the “machine learning” and“data mining” sections, all related terms and studies on thesesubjects in conjunction with the IoT will be explained indetail.

This survey paper focuses on the IoT related subjects:“context awareness,” “inferences from context,” “context rea-soning,” and “learning algorithms” to make predictions, pro-filing, and data analysis using big data. When the literature isreviewed, IoT related survey papers can be grouped into thefollowing categories.

1) IoT general purpose surveys and open issues [3], [4],[13]–[18].

2) Survey of IoT platforms and frameworks [19]–[22].3) Survey of context awareness [21], [23]–[29].4) Survey of machine learning on specific topics (human

activity recognition, mobile phones sensing, body sensornetworks, and WSN) [24], [30], [31].

5) Survey of data mining [27], [31], [32].6) Survey of IoT related areas [sensor network, Social IoT

(SIoT), and mobile phone sensing] [33]–[36].7) Survey of big data analytics [37], [38].This survey paper covers the IoT related literature from

both historical and conceptual perspectives for context aware-ness, machine learning, and big data. None of the existing

Page 3: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

SEZER et al.: CONTEXT-AWARE COMPUTING, LEARNING, AND BIG DATA IN IoT: SURVEY 3

Fig. 1. Different visions intersection: IoT, adapted from [3].

survey papers covers these closely related fields all togetherfrom a fully functional framework or system of systemsperspective. However, recent advancements in sensors, IoTtechnologies, and big data systems created the opportuni-ties for the emergence of machine and deep learning-based,real-time predictive, and preventive maintenance and analyt-ics systems. To the best of our knowledge, no single surveypaper has covered these topics together even though they arehighly related. In addition, this survey paper consists of a com-parison of IoT platforms and frameworks. Furthermore, IoTmachine learning and big data topics are also examined andsurveyed together because IoT big data and streaming dataare analyzed using machine learning methods. We also reviewnew and recent advancements in IoT. Open Issues and futuredirections for IoT machine learning and IoT big data are alsodiscussed.

The rest of this paper is organized as follows. In Section II,we introduce IoT under the following headlines: IoT paradigmand definition, IoT potential and application domains, IoTcharacteristics and features, and IoT research trends, areas,and open issues. In Section III, related areas and history ofIoT technologies, in regard to UbiComp, pervasive comput-ing, AmI, WSNs, WoT, and SIoT, are presented. In Section IV,context awareness is analyzed in the following sections: con-text and context awareness; context-aware features and contexttypes; and context life cycle in IoT. In Section V, machinelearning algorithms for IoT are categorized as supervised,unsupervised, and reinforcement learning (RL). In additionto these topics, proposals and studies in the literature arecompared and analyzed. In Section VI, IoT data processingis evaluated through the vision of big data. In Section VII,open issues in context awareness, machine learning, and bigdata analytics in IoT are evaluated. We then conclude inSection VIII.

II. IOT

A. IoT Paradigm and Definition

The IoT is a network of Internet connected physicalobjects—embedded devices, vehicles, sensors, computers; andthese objects exchange data among themselves and other sys-tems [39]. Another definition of IoT is “The Internet of Thingsallows people and things to be connected Anytime, Anyplace,with Anything and Anyone, ideally using Any path/networkand Any service” [2]. In fact, IoT stands for “a world-wide net-work of interconnected objects uniquely addressable, based onstandard communication protocols” [40]. The number of suchaddressable objects is growing rapidly.

The IoT paradigm is also defined as an intersection of threevision areas: 1) Internet oriented vision; 2) things orientedvision; and 3) semantic oriented vision [3]. Fig. 1, which isadapted from [3], shows these vision areas and their intersec-tions. Sensors, actuators, sensor networks, RFID, near fieldcommunications (NFCs), electronic product code technolo-gies, wireless sensor, and actuator networks are classified aspart of the things oriented vision. Semantic technologies (Web,languages, execution environment, and so on), reasoning overdata, are classified as a semantic oriented vision. Finally,Internet technologies and the WoT are located in Internetoriented vision. There are also some technologies in the over-lapped regions of these visions. For example, SSNs are in theintersection area of the things and semantic oriented visions.The intersection of all three vision areas is the IoT.

B. IoT Potential Application Domains

The IoT has a huge market potential with an increasinggrowth rate in recent years. In 2014, it was estimated thatthere were 1.5 billion Internet-enabled computers and 1 bil-lion Internet-enabled mobile phones. By 2020, the number of

Page 4: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

4 IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018

Internet connected IoT devices will be somewhere between50 to 100 billion [2] and the total amount of data generatedby humans and devices on earth will reach 35 ZB [11], [41].According to BBC Research, the global market for sensorswas $56.3 billion in 2010 [11], and reached $101.9 billionin 2015. It is expected that the market will reach $113.2 bil-lion by 2016 and $190.6 billion by 2021 [42]. According tothe Gartner Research report, the number of IoT devices willreach 25 billion in a few years [27], [43]. The IoT is used inmany different application domains. An alphabetically sortedshort list follows below [3], [27], [44], [45].

1) Aerospace and aviation (manufacturing: detection ofsuspected unapproved parts).

2) Education (remote education and enhanced reality forlearning).

3) Energy (smart metering and coordination of generationand storage).

4) Entertainment and sports (gaming, sports, cinema, smartgym).

5) Environment (chemical detection, temperature, andhumidity monitoring).

6) Finance and banking (POS terminals, remotely locatedATMs, online desktop, and mobile device banking).

7) Food and farming (controlling and monitoring facili-ties, monitoring of produce, livestock, defect manage-ment, protecting chemical and environmental conditions,automation of ordering service, and automation of deliv-ery process and accounting).

8) Government (real-time environmental monitoring,remote service delivery, asset tracking, smart cities, andcity and building management and security).

9) Healthcare (remote treatment and surgery, remote diag-nostics and examinations, remote patient monitoring andtracking, and medical asset tracking).

10) Home automation (smart appliances, home security, andmonitoring).

11) Information and communication technologies (securityand monitoring, remote management, device tracking,and automation).

12) Logistics (mobile ticketing).13) Manufacturing and heavy industry (process monitoring

and management, equipment monitoring, shipping track-ing, remote servicing, monitoring employees, suppliers,and inventory management).

14) Pharmaceutical industry (drugs tracking, pharmaceuticalproducts, security, and safety).

15) Public safety and military (surveillance network, remoteasset control and tracking, and disaster management).

16) Retail and hospitality (anti-theft and fraud, and facilitiesmonitoring and management).

17) Transportation (smart roads, rails, runways, assisteddriving, traffic signals, augmented maps, and intelligenttransportation systems).

18) Vehicles (smart bus, planes, boats, trains, andautomobiles).

19) Water (system pressure, reservoir levels, and waterquality).

C. IoT Characteristics and Features

The IoT has different characteristics when compared tosensor networks. According to [21], there are seven main char-acteristics: 1) architecture; 2) complex system; 3) everythingas a service; 4) intelligence; 5) size considerations; 6) spaceconsiderations; and 7) time considerations.

Although there are different architectures for the IoT, twomain architectures are more relevant: 1) event-based and2) time-based. Event-based architectures are triggered withevents (e.g., motion detection and window open). On the otherhand, time-based architectures produce data continuously (e.g.,humidity and pressure sensors) [55].

In the IoT world, there are billions of devices. Some ofthem have high-level architectures with large memory capac-ities, high CPU speed, and high reasoning capabilities (e.g.,mobile phones). Meanwhile, some of them, on the contrary,have low-level architectures, limited memory, and computingcapabilities (e.g., temperature sensors). The interconnectionsbetween these devices make the IoT a very complex system,in general.

Cloud computing is expected to play an important role inthe IoT ecosystem. With cloud computing, IoT storage andcomputing capacities can be increased in a scalable manner.Moreover, sensors can be used everywhere and processingsensor data can be accomplished through cloud comput-ing services. Everything as a service, proposed by [56] isa cloud computing term that all services (main services:infrastructure as service, software as service, and platformas service and others: desktop-as-service, storage-as-service,and database-as-service) are collected in one hand. These ser-vices fulfill the needs of the IoT, including infrastructure,sensing-as-service [11], and more.

In the IoT infrastructure, data knowledge extraction can beimplemented by collecting, modeling, and reasoning over themassive amounts of data collected from devices. This is sim-ply described as the intelligence of IoT. Context awareness isfurther added to the picture with the fusion of sensor data,modeling, and reasoning about context. It is predicted thatthe number of Internet connected IoT devices will be 50 to100 billion by 2020 [2]. The interaction of billions of inter-connected devices will therefore cause problems leading tosize considerations for IoT environments and big data prob-lems that can be solved with cloud computing, as mentionedabove.

Another important characteristic of IoT is space consid-eration, including time and location. While extracting andevaluating context awareness information from sensor data, thelocation, time, and duration of data become important factorsfor IoT processing. The number of IoT devices is increasingrapidly in time, and tracking these devices will be more andmore difficult [2].

According to [14], there are also system-level featuresthat IoT should support. Heterogeneity of devices, scalability,data exchange through wireless technologies, energy saving,tracking capabilities, self-organization capabilities, securityand privacy-preserving, semantic interoperability, and datamanagement are some of the noteworthy features.

Page 5: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

SEZER et al.: CONTEXT-AWARE COMPUTING, LEARNING, AND BIG DATA IN IoT: SURVEY 5

D. IoT Standards

There are many IoT related standardization activities in lit-erature. A number of standards organizations, such as theIEEE, International Organization for Standardization (ISO),International Telecommunication Union, International Electro-technical Commission, European Committee for Electro-technical Standardization, China Electronics StandardizationInstitute, and American National Standards Institute are work-ing on the IoT standardization activities [13]. For example,the IEEE lists a long list of their IoT related standards intheir website.1 Standardization activities in this area can beclassified as RF layer, lower layer, communication layer, dataprotocols layer, and semantic and higher layer standardizationactivities. IoT technologies mostly use these standards.

RF layer and NFC interface and protocol are standardized[ISO 18092, 21481, 22536, and 23917; European ComputerManufacturers Association (ECMA) 340, 352, 356, and 365;and European Telecommunications Standards Institute (ETSI)TS 102 190] by various authorities, such as the ISO, ECMA,Global System for Mobile Communications Association, andETSI [14].

Lower layer (PHY and MAC) is standardized by the IEEE[the IEEE 802.16 Wireless Broadband Standards, the IEEE1547 Standard for Interconnecting Distributed Resources WithElectric Power Systems, the IEEE 1609 IEEE Wireless Accessin Vehicular Environments, IPv6 over low-power WPAN(6LoWPAN); the routing over low-power and lossy networks,Ethernet] by the IEEE Standards Association and InternetEngineering Task Force (IETF) [14].

Communication layer is also standardized by the IEEE(the IEEE 802.15 Wireless Personal Area Network, theIEEE 802.15.1 WPAN/Bluetooth, the IEEE 802.15.4 Low-Rate Wireless Personal Area Networks, and the IEEE802.15.6 Wireless Body Area Network). ZigBee (standard-ized with the IEEE 802.15 and the IEEE 802.15.4). OtherIoT related standards and technologies are listed as fol-lows: Zwave (Standard: Z-Wave Alliance ZAD12837/ITU-TG.9959), Insteon, NFC, Narrow-Band IoT (NB-IoT), andLTE-Machine Type Communication.

Data protocol layer is also standardized by a number oforganizations. Data protocol standards related to IoT tech-nologies can be listed as follows: Message Queuing TelemetryTransport (MQTT),2 MQTT for Sensor Networks, ConstrainedApplication Protocol,3 the Simple Text Oriented MessagingProtocol,4 Extensible Messaging and Presence Protocol(XMPP),5 XMPP-IoT, Advanced Message Queuing Protocol,6

Data-Distribution Service for Real-Time Systems, JavaMessage Service, Lightweight Local Automation Protocol,Lightweight M2M (LWM2M), Simple Sensor Interface,Representational State Transfer (REST), Simple Object AccessProtocol, and Websocket.

1[Online]. Available: http://standards.ieee.org/innovate/iot/stds.html2[Online]. Available: http://mqtt.org/3[Online]. Available: https://datatracker.ietf.org/doc/rfc7252/4[Online]. Available: https://stomp.github.io/implementations.html5[Online]. Available: https://xmpp.org/6[Online]. Available: http://www.amqp.org/

IoT related technologies also use semantic standards, suchas IOTDB,7 SensorML, Semantic Sensor Net Ontology,RESTful API Modeling Language,8 Media Types for SensorMarkup Language, and Lemonbeat Smart Device Language.

Higher level IoT layer is standardized by ETSI,Object Management Group, AllSeen Alliance, WorldWide Web Consortium (W3C), Semantic Sensor NetworkIncubator Group (SSN-XG), OneM2M Partners, IndustrialInternet Consortium, Open Interconnect Consortium—OpenConnectivity Foundation. OneM2M9 is a high level standard-ization activity on IoT devices, working on an interoperabilityframework toward a common M2M or IoT service layer forall types of devices and framework. OneM2M organizationconsists of eight leading standards bodies from differentcountries and over 200 members. AllSeen Alliance is devel-oping an open source software framework, called AllJoyn,10

that provides IoT device communication and managementfunctions. In addition to these, there are also high level frame-works and solutions, such as IoTivity, IEEE P2413, Thread,IPSO Application Framework, OMA LightweightM2M v1.0,and Weave.

E. IoT Research Trends and Areas

IoT is in the intersection of many different visions and dis-ciplines. Thus, it contains several subtopics and research areas.Many articles in the literature classify and study these researchareas and trends in many different subtopics. We list the majorIoT related research areas in Table I with a brief explanationand relevant references.

According to [3], research topics and open issues canbe classified into standardization activities, addressing andnetworking issues, and security and privacy. In the litera-ture, many different standards are mentioned, such as theIETF, ETSI standards, and others. However, there is no sin-gle integrated framework to combine all different standards.Therefore, there are several devices working with differentstandards and frameworks within their domain, and this leadsto interoperability problems between heterogeneous systems.This problem could be solved with a joint and unified set ofstandards and frameworks.

According to [15], research areas for IoT are categorizedas massive scaling, architecture and dependencies, creatingknowledge and big data, robustness, openness, security, pri-vacy, and humans in the loop. The number of Internetconnected devices is increasing rapidly, hence current existingsolutions, protocols, and research, in terms of meeting expec-tations and requirements need to be re-evaluated continuously.Massive scaling, architecture, and dependencies focus on theseproblems. With ever increasing devices, collected data alsoincrease and create big data that is not immediately seman-tically meaningful. Meanwhile, it is expected that knowledgecan be extracted from this massive data. These problems canbe solved with data mining and machine learning algorithms

7[Online]. Available: https://iotdb.org/8[Online]. Available: http://raml.org/9[Online]. Available: http://www.onem2m.org/10[Online]. Available: https://allseenalliance.org/framework

Page 6: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

6 IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018

TABLE IIOT RESEARCH AREAS, BRIEF INFORMATION, AND RECOMMENDATION

in scalable architectures. Another research area is openness.Traditionally, all devices and vehicles, which have sensor-based systems, have closed loop systems, and that is no longerconvenient for many real-world IoT scenarios. These sys-tems should be open for interoperability to solve the securityproblems as well.

Xu et al. [13] collected research trends under these sub-headings. Integrating IoT solutions to social networking,developing green technologies, developing context-aware IoTmiddleware solutions, using artificial intelligence techniquesto create intelligent things, and combining cloud comput-ing and IoT. Different research areas and paradigms emergedover the years. One of them was integrating social network-ing with IoT solutions. Atzori et al. [46] proposed the SIoTparadigm that connects IoT devices with each other usingsocial networks. Other paradigm is the WoT [8], [57], [58]that connects devices by using existing and well-known Webstandards. SIoT and WoT will be discussed in detail inSection III. Another issue is the reduction of power consump-tion for IoT devices and sensors. Energy efficient techniquesshould be developed to save energy [59]. Billions of IoT sen-sors and devices connect to the Internet and other systemsand require semantically meaningful and context awarenesscapabilities. Most IoT middleware solutions do not havecontext-aware capability [13]. The European Union hopes thatcontext-aware solutions will be proposed in the time frameof 2015–2020 [60]. Some of the context-aware studies inIoT are summarized in [27]. Another research area is theaddition of artificial intelligence to IoT devices and systems.Bringing artificial intelligence to the IoT was proposed by

Arsénio et al. [61]. Futuristic ideas for IoT are also emerg-ing and defined as self-configurable, self-optimized, self-protected, and self-healed IoT devices and systems [62], [63].Combining cloud computing and the IoT accelerate IoT com-puting capabilities. Sensing as a cloud service structure isan example solution of combining cloud computing and theIoT [4], [64].

As previously mentioned, there are many research areas andopen issues, however, we focus on context awareness, draw-ing inferences from context, context reasoning, and learningalgorithms to make predictions and profiling, and also dataanalysis using big data. The main research areas, studies, andissues will be reviewed in Section IV for context awareness,Section VI for big data, and Section V for machine learning.Open issues and possible future directions for research arediscussed in Section VII.

F. IoT Platforms, Frameworks, Services, and Middleware

There are many IoT platforms, frameworks, services, andmiddleware that can collect, process, and analyze sensordata. Our aim is not to review and survey existing platformsand frameworks. References [19], [20], and [65] surveyedexisting IoT platforms, frameworks, systems, prototypes, mid-dleware, and different approaches. Some of the important IoTplatforms are listed in Table II. They are listed with theirdevice management, data management, real-time analytics,big data analytics, and learning capabilities. It is clear thatmany existing platforms have limited analytics and learningcapabilities.

Page 7: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

SEZER et al.: CONTEXT-AWARE COMPUTING, LEARNING, AND BIG DATA IN IoT: SURVEY 7

TABLE IIIOT PLATFORMS (DEVICE M: DEVICE MANAGEMENT, DATA M: DATA MANAGEMENT, RT ANALYTICS:

REAL TIME ANALYTICS, BD ANALYTICS: BIG DATA ANALYTICS, AND LT: LEARNING TOOL)

G. IoT Security and Privacy

IoT networks all over the world consist of billions ofdevices. Security and privacy issues are raised due to the largenumber of devices and lack of unified standardization studieson IoT security. Every Internet connected device can easilycause security problems. Hence, these studies should not beignored. In recent years, denial-of-service (DoS) attacks haveshown that research and implementation of IoT security solu-tions are very important. In this paper, we do not aim to reviewand survey all IoT security issues and research areas.

In literature, there are many papers covering IoT securityissues [66]–[69]. Abomhara and Køien [66] surveyed dif-ferent types of threats related to IoT in terms of intrudermodel, DoS attacks, physical attacks, eavesdropping and pas-sive monitoring, traffic analysis, and data mining. They alsoexamined the security and privacy challenges in IoT withthe following subheadings: user privacy and data protection,authentication and identity management, trust managementand policy integration, authorization and access control, end toend security, and attack resistant security solutions. In addition,Mahmoud et al. [67] defined security principles that should beenforced to achieve security between IoT devices and people inregards to confidentiality, integrity, availability, authentication,

lightweight solutions, heterogeneity, policies, and key man-agement systems. They also defined the security challengesin each layer of IoT devices and IoT security countermea-sures in their survey paper. Zhang et al. [68] summarizedongoing research studies in IoT security with the follow-ing topics: object identification, authentication, authorization,privacy, lightweight cryptosystems and security protocols, soft-ware vulnerability, backdoor analysis, and malware in IoT.Zhao and Ge [69] surveyed security problems in the IoTin terms of node capture, fake node and malicious data,DoS attack, timing attack, routing threats, replay attack,side channel attack, mass node authentication problem, dataaccess permissions, identity authentication, data protection andrecovery, and software vulnerabilities.

H. Distribution of Publications in IoT

There are many studies and publications that can be catego-rized under the IoT subject. Table III summarizes the numberof journal articles related to the IoT by year and subject. Thenumber of journal articles in the table are collected by subjectrelated search queries on Thomson Reuters Web of Science.11

11[Online]. Available: https://webofknowledge.com/

Page 8: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

8 IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018

TABLE IIINUMBER OF JOURNAL ARTICLES BY YEAR RELATED IOT AND SUBJECTS IN IOT

TABLE IVNUMBER OF JOURNAL ARTICLES BY YEAR RELATED LEARNING SUBJECTS IN IOT

We further searched “learning” related journals on the samesite with more specific search queries, such as popular learningtechniques, related to the IoT, and these are listed in Table IV.Both tables show that the number of journal articles has beenincreasing in recent years in this area. It is also clear thatthe number of journal articles related to machine learning,deep learning, and neural networks with IoT topics are alsoincreasing recently.

III. RELATED AREAS

The IoT is the end result of many developments in the pasttwo decades. Here, we review related areas from a historicalperspective. These include, but are not limited to, UbiComp,pervasive computing, AmI, WSNs, WoT, SIoT, and informa-tion centric networking (ICN). Fig. 2 shows these areas andtheir development in time.

A. Ubiquitous Computing

UbiComp is about computing anywhere, on any device,and in any format. UbiComp covers a wide range of studyareas, including artificial intelligence, context aware com-puting, distributed computing, human-computer interaction,mobile computing, and sensor networks. Mark Weiser, whocoined the phrase UbiComp, proposed to classify ubiquitoussystems as “tabs” (wearable centimeter sized devices, suchas smartphones), “pads” (hand-held decimeter-sized devices,such as laptops), and “boards” (meter sized interactive dis-play devices, such as surface computers) [70], [71]. However,this proposal does not include micro-size computing platforms.Therefore, it can be expanded to new forms: “dust” [miniatur-ized devices without display, e.g., micro electro-mechanicalsystems (MEMS)], “skin” (e.g., organic computer devices),and “clay” (ensembles of MEMS) [72]. UbiComp is a transfor-mation of real world objects to the virtual world nodes/objects.For instance, a smart meeting room that senses the existence of

people in the room, records their actions and voices, obtainsthe writing from the whiteboard, and fuses the data of allsensors to extract meaningful knowledge [73].

B. Pervasive Computing

The terms UbiComp and pervasive computing are usedinterchangeably. However, they are conceptually different.UbiComp uses the advantages of mobile computing and perva-sive computing. Mobile computing is expanding as technologyimproves and the number of computing devices increases. Thisenables mobile computing anywhere and anytime. However,it does not necessarily change or adapt the computing modelsbased on context. On the contrary, pervasive computing treatscontext as a first-class citizen and adapts computing modelsbased on context. Pervasive computing offers computing ser-vices that are invisible to the user. The objective of UbiCompis to provide a pervasive computing environment when userschange locations and context [74], [75].

Pervasive computing acquires context knowledge from theenvironment and provides dynamic, proactive, and contextaware services to the user. Smart devices also provide loca-tion data, and therefore, context data. Not every smart deviceis suitable for applications requiring mobility due to the shape,weight, and battery power constraints. Smart devices can beadapted to the pervasive environment using the Internet, Web,and semantic Web architectures [75].

C. Ambient Intelligence

AmI is a concept in which the digital environment (sen-sor and device network) senses, computes interactions, andassists people in their daily lives. Ubiquitous and pervasivecomputing, sensors, networks, human-computer interfaces,and artificial intelligence are related to AmI; however, noneof them individually cover AmI. AmI has invisible, intel-ligent, and flexible services that aim to benefit users and

Page 9: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

SEZER et al.: CONTEXT-AWARE COMPUTING, LEARNING, AND BIG DATA IN IoT: SURVEY 9

Fig. 2. IoT-related areas and their development in time.

meet their expectations [76]. The European CommissionsInformation Society Technologies Advisory Group (ISTAG)supports the development of AmI with funding in the FP6program [77], [78]. ISTAG defines the components in AmI,including sensors, embedded devices, smart materials, MEMS,communication between devices, and adaptive software sys-tems [79].

Smart homes, offices, buildings, and cities are among someof the examples that utilize AmI technologies. Embeddeddevices, sensors, actuators, and computers can communicatewith each other using the network (sensor network, Internet,Web, etc.). Moreover, there are smart city IoT implementa-tions used for daily life activities. SmartSantander12 is anexample of smart city IoT implementation. Zanella et al. [80]also proposed smart city IoT implementation in their studies.Ambient assisted living (AAL) is another sample applicationarea for AmI systems. AAL systems support elderly people intheir daily lives and activities. Services and products (health,security, safety, mobility, social contact, etc.) that increase thequality of life consist of the primary applications of AAL [81].There are also implementations of IoT platforms for AAL.Cubo et al. [82] proposed a cloud-based IoT platform for AAL.

D. WSNs

Low-power, low-cost, and multifunctional sensor nodes canbe combined and communicate with each other using wire-less protocols. This is known as WSN. This network canbe composed of hundreds or thousands of autonomous sen-sor nodes. Sensing, data processing, and communicating witheach other are the tasks of these sensors in the network. Low-cost, energy-efficient, wireless, multihop, distributed sensing,and distributed computing are the characteristics and require-ments of the WSN [83]. It is widely used in health, military,surveillance, computing, intelligence, control, reconnaissance,communications, and targeting systems. Wireless sensor stan-dards are developed according to their power consumptions.IEEE 802.15.4, IEEE 802.15.3, ZigBee, WirelessHART, IETF,and 6LoWPAN are some of the standards [34], [84].

To overcome the complexity of network and data in WSN,semantic approaches were taken. Hence, SSNs were born.

12[Online]. Available: http://smartsantander.eu/

1) Semantic Sensor Networks: Managing networks and dataoperations such as searching and querying are difficult tasksin sensor networks with complex structures and heterogene-ity. Semantics help in declarative description of sensors, nodes,domains, and networks. SSNs provide these capabilities (man-aging, searching, and querying) with semantic definitions andreasoning over them. OWL and RDF semantic languages areused in the definition of the SSN. Classifying the sensorswith respect to their functionalities, output, and measure-ment, as well as inferring domain knowledge and classifyingdata according to spatially, temporally, accurately, producingevents according to conditions, are potential capabilities of theSSN [85].

The W3C SSN-XG developed SSN ontology that candescribe sensors, relationships between sensors, stimulus,observations, accuracy, and the capabilities of sensors. SSNontology can be seen in different perspectives: sensor, observa-tion, system, feature, and property. Sensor perspective focuseson “what senses, how it senses, and what is sensed.” Anobservation perspective interests observation data. A systemperspective focuses on “systems of sensors and deployments.”A feature and property perspective is interested in “what sensesa particular property or what observations have been madeabout a property” [86].

2) Semantic Sensor Web: When sensors are connected tothe Internet and Web, they become part of what is called asemantic sensor Web (SSW). Sensors in an SSW can thendiscover new sensors, and share semantic sensor data (timestamp and spatial coordinates) with each other. The OpenGeospatial Consortium and semantic Web activity of the W3Cenhance the SSN and standardize the SSW. The sensor Web isa specialized area that has a Web-centric information infras-tructure (collecting, modeling, reasoning, storing). The SSWuses ontologies, rules, semantic languages OWL and RDF forinteroperability, reasoning, and analysis of sensor data fromdifferent devices and platforms [8], [87].

E. WoT

The WoT is a specialized area of the IoT that uses stan-dard Web technologies in all areas. Web technologies includeREST, HTTP, transmission control protocol, user datagram

Page 10: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

10 IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018

protocol, Internet protocol (IP), JavaScript object notation(JSON), JSON for linked data, microdata, and Web sock-ets for intercommunication, data processing, and visualiza-tion [7]. Sensors and devices in WoT can be connected tothe Web directly and their data can be processed in the cloud.Therefore, it is larger than SSW.

F. SWoT

The SWoT is an intersection area that combines semantictechnologies and IoT. It is an evolution of WoT. With seman-tic technologies, WoT sensors and devices can be definedsemantically with semantic languages, such as OWL andRDF, that support reasoning, storing (triple store), query-ing (with SPARQL RDF Query Language), searching, andmonitoring [9].

G. SIoT

The SIoT is a term coined to signify that sensors and devicesare connected with each other and with humans via specializedsocial networks [36]. Holmquist et al. [88] initially proposedthe idea. In their proposal, smart devices used WSN as asocial network. With the development of the IoT, devices canuse Internet instead of WSN. Atzori et al. [46] proposed theSIoT for the interacting network of sensors and devices ashuman social networks. With the SIoT, devices can be discov-erable and reachable. There are different SIoT platforms andimplementations. The SWoT, Evrythng, Paraimpu, Xively, andToyota Friend Network (automobile WoT social network) aresome of them [35].

H. ICN

ICN is a type of Internet architecture that differs fromthe IP address-centric model. It can be considered as anInternet structure to be implemented in the future, for whichthe development is underway. In the ICN approach, data isindependent of server location, distribution channel, and appli-cation. Content is reachable with unique ICN names. ICNarchitecture has the following features: “in-network caching,content-based naming and security, name-based content dis-covery and delivery, and a connectionless receiver-driven com-munication model” [53]. There are different ICN approaches,namely data-oriented, content-centric, publish-subscribe net-work architecture, and network of information. These designmodels are compared in [89].

In addition, ICN can be used in the IoT world by consid-ering IoT data as content. Without using the IP request-replymechanism, IoT sensor data can be reachable with address-able content by using ICN, which is helpful for mapping thedigital world to the physical world [53]. Moreover, using ICNis beneficial in fulfilling the general requirements of the IoT.Energy efficiency, heterogeneity, mobility, quality of service,scalability, and security IoT requirements are handled withICN features. These are known as anycasting, content-basedsecurity, connection-less mode, data, in-network caching, andmulticasting. Amadeo et al. [53] discussed and summarizedthese in their paper.

I. Software-Defined Networking

Software-defined networking (SDN) and network virtual-ization (NV) are two technologies that can assist in thesolution of the fundamental IoT problems, such as scalabil-ity, interoperability of heterogeneous devices, discoverability,security, management, and application specific requirements.With the usage of SDN and NV, IoT networks can bemore dynamic, elastic and scalable [90]. In literature, thereare different papers that mentioned IoT-SDN-NV relations.Bizanis and Kuipers [91] surveyed SDN and NV solutions forthe IoT devices. They mentioned SDN and virtualization solu-tions for mobile and cellular networks, WSNs and IoT archi-tectures. SDN-based, virtualization-based IoT architectures,and SDN-based important frameworks, such as UBiFlow,SDIoT, and MINA are mentioned in this survey paper. Thereare also novel studies and researches about SDN-IoT architec-tures. Qin et al. [92] implemented the extended MINA-SDNprototype for IoT scenarios, such as integration of the elec-tric vehicles, electric charging sites, smart grid infrastructures.Bedhief et al. [93] proposed an SDN-Docker-based IoT archi-tecture that consists of Dockers implemented IoT devices.

IV. CONTEXT-AWARENESS

This section discusses the definition of context awareness,features, and levels of context awareness, context awarenessdesign principles, context life cycle (context acquisition, mod-eling, reasoning, and distribution) and context aware solutionsand technology.

A. What Are Context and Context Awareness?

Various definitions of context exist. The word context isdefined as “ambience, attitude, circumstance, dependence,environment, location, occasion, perspective, phase, place,position, posture, situation, status, standing, surroundings, andterms” in dictionaries (Thesaurus13). Dey and Abowd [94],Abowd and Mynatt [95], and Sanchez et al. [96] definedcontext as: “any information that can be used to charac-terize the situation of an entity. An entity is a person,place, or object that is considered relevant to the interac-tion between a user and an application, including the userand applications themselves [94].” Abowd and Mynatt [95]also identified the minimum requirements—five W’s (what,who, where, why, and when) in order to be able to ana-lyze and understand context. In addition to these definitions,Sanchez et al. [96] explained the difference between raw data(unprocessed, directly from sources) and context information(processed and generated from raw data).

B. Context Aware Features and Context Types

Perera et al. [21] defined the features of context aware-ness related with IoT, according to [10], [94], and [97].Presentation, execution, and tagging (annotation) were the fea-tures of context aware systems. Within that concept, a contextaware system decided what information and which serviceshould be presented to the user. When the user went for

13[Online]. Available: http://www.thesaurus.com/

Page 11: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

SEZER et al.: CONTEXT-AWARE COMPUTING, LEARNING, AND BIG DATA IN IoT: SURVEY 11

Fig. 3. Context life cycle in IoT.

shopping, the system perceived that user during the shoppingprocess and the shopping list was updated according to thesmart fridge decision. This feature was called presentation. Inan IoT system, devices should execute automatically. Whenthe user has a health problem, such as a heart attack, the con-text aware system has to consider the possible problems withthe corresponding wearable IoT devices, and if necessary, callthe nearest hospital for emergency, sending the user’s loca-tion to the smart car for fast transportation. With this feature,the devices in the system should execute automatically andsynchronously. Tagging (annotation) is another feature of acontext aware system. Single sensor data might not be neces-sary for interpretation and analysis. As a result, the sensor dataproduced by multiple sensors can be used for interpretationand analysis. Multiple sensor data fusion is an important stepfor capturing meaningful information. Tagging, also knownas context annotation, provides particular information aboutwhich data is associated with which sensor and what value isstored for that sensor. Sensor location and data collection timeare among the other issues that should be tagged for contextawareness.

C. Context Life Cycle in IoT

The context life cycle expresses how sensor data is col-lected, modeled, and processed, and how knowledge is

extracted from the collected data. As a result, it is bene-ficial to develop frameworks, structures, and solutions forthe IoT. Perara et al. [21] mentioned that there were differ-ent context life cycles. Common characteristics of these lifecycles are categorized into four main parts: context acquisition,context modeling, context reasoning, and context distribu-tion [21], [26]. In the context acquisition phase, the data isacquired from various physical and virtual sensors. In the con-text modeling part, the data is required to be modeled accord-ing to the meaningful data. In the context reasoning phase,raw data is required to be processed first, and then, the knowl-edge is extracted. For the last category, context distribution, theobtained knowledge is distributed via servers, query languages,and frameworks. Fig. 3 illustrates context life cycle in IoT.

1) Context Acquisition: Context acquisition is evaluatedbased on five factors: 1) the acquisition process; 2) frequency;3) responsibility; 4) sensor types; and 5) source. These fivefactors are explained in [21].

2) Context Modeling: Context modeling is defined as thecontext representation that provides assistance in the under-standing of properties, relationship, and details of context.It varies depending on the domain and features of the con-text. Context modeling varies depending on the requirementsthat are defined as distributed composition, efficient contextprovisioning, dependencies and relationships, heterogeneity

Page 12: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

12 IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018

and mobility, imperfection, incompleteness and ambiguity,level of formality, partial validation, reasoning, richness andquality of information, timeliness, and usability of model-ing formalisms [23], [98]. The most popular classification ofcontext modeling is defined as key-value, markup scheme,graphical, object oriented, logic-based, ontology-based, spa-tial, uncertainty, and hybrid context modeling [21], [23], [26],[98], [99]. There are also different approaches for context mod-eling, such as multidisciplinary, domain focused, user-centric,and chemistry inspired [26].

1) Key-Value Modeling: In this model, values are storedas key-value pairs that provide simplicity, flexibilityand user-friendliness. However, this particular modelingmethod is not convenient for complex and hierarchi-cal structures and relationships. It is hard to retrieveinformation and there is no standard tool for process-ing. Meanwhile, it is suitable for temporal storage,application preferences, and configuration.

2) Markup Scheme Modeling: In this model, tagging is usedto store data. XML is probably the most frequently usedmarkup language for markup scheme modeling that pro-vides temporarily data storage. However, it does not sup-port reasoning, and retrieval of information is difficult.Composite capabilities/preference profiles (CC/PP)14 isanother commonly used markup scheme model.

3) Graphical Modeling: In this modeling technique, thecontext is modeled with relationships. Unified modelinglanguage (UML)15 and object role modeling (ORM)16

represent some of the examples of this modeling tech-nique. Relational SQL, NoSql databases, and XML canbe used for graphical modeling. This modeling is betterthan key-value and markup scheme modeling in termsof modeling context.

4) Object Oriented Modeling: In object oriented modeling,classes and relationships are used for modeling contextand data. Object oriented, high level languages are suit-able for this modeling. However, validation is difficultdue to specifications and standardizations. In addition, inthis modeling, reasoning is not convenient for inference.

5) Logic-Based Modeling: In this model, context is rep-resented with rules, logical expressions, and variables.Logical reasoning can be applied with an implementa-tion of logic-based modeling. Additionally, high-levelcontext can be extracted with low-level context, whichcan be provided via existing processing tools. However,validation and standardization are difficult to implementin this model.

6) Ontology-Based Modeling: In ontology-based model-ing, context is modeled with ontology, and representedwith semantic ontology languages, such as OWL, RDF,and RDF schema (RDFS). These languages are used insemantic technologies (semantic Web, databases, Sparql,etc.) With ontology-based modeling, both reasoning and

14[Online]. Available: https://www.w3.org/TR/2007/WD-CCPP-struct-vocab2-20070430/

15[Online]. Available: uml.org16[Online]. Available: ormfoundation.org

knowledge extraction can be implemented. In addition,rich context expressions and strong validation can beprovided. However, information retrieval may be com-plicated due to the complex representation of ontologylanguages. In Section VI, ontology definition, ontologylanguages, and review of the papers related to semantictechnologies will be covered.

7) Spatial Modeling: In this model, physical space, loca-tion of sensors, and real world entities are modeled andexpressed as context information. Geometric (latitude,longitude, elevation, etc.) and symbolic (room number,ID of access point, etc.) coordinates are used by posi-tioning systems for spatial modeling. Spatial contextmodeling is achieved with tiers of spatial ontologies:tier0 (ontology of the physical reality), tier1 (obser-vations of reality), tier2 (observations are defined byuniform properties), tier3 (social reality and relations ofall objects), and tier4 (rules are modeled) [100].

8) Uncertainty Modeling: The physical world containsuncertainties and ambiguities. Meanwhile, real worldmodeling also causes imperfection and ambiguity issues.Therefore, in order to solve that particular problem, qual-ity of context is proposed by researchers. Quality ofcontext can be measured in terms of attributes, suchas accuracy, coverage, confidence, frequency, freshness,repeatability, resolution, and timeliness [101], [102].

9) Hybrid Context Modeling: In this model, com-bined and hybrid modeling techniques are used.Hybrid fact-based/ontological modeling and markup-based/ontological modeling are some examples of hybridcontext modeling [103], [104]. In hybrid modeling,the advantages of modeling techniques are used. Forinstance, ontological modeling is used for rule-basedreasoning.

3) Context Reasoning: Context reasoning can be describedas the extraction of new knowledge from the available contextand extraction of context sets from high level context for bet-ter understanding [105], [106]. Uncertainty and imperfectionof raw data are the requirements for context reasoning. Thereare three main steps of context reasoning: 1) context prepro-cessing; 2) sensor fusion; and 3) context inference [21], [107].In the context preprocessing phase, data are cleaned andformed by defining the relevant context attributes (dimension-ality reduction and feature subset induction), filling missingdata, validating context, removing outliers, and using datamining techniques for preparation of processing. In sensorfusion step, multiple sensor data are combined to producemore dependable, accurate, reliable, and complete data thatcannot be provided by single sensor data. In the inferencephase, recognizing new context, which is relevant, and map-ping lower level context to higher level context (logical andprobabilistic reasoning) are important steps in producing highlevel context for inference. Reasoning approaches for differentcontext awareness problems are listed in Table V.

There are also different context reasoning and inferencemodels, in terms of artificial neural networks (ANNs), deci-sion tree (DT), fuzzy reasoning, hidden Markov models(HMMs), k-nearest neighbor (KNN), naive Bayes (NB),

Page 13: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

SEZER et al.: CONTEXT-AWARE COMPUTING, LEARNING, AND BIG DATA IN IoT: SURVEY 13

TABLE VREASONING APPROACHES FOR CONTEXT AWARENESS: ADAPTED FROM [108]

ontology-based, rule-based, support vector machines (SVMs),etc. In Section V, these learning schemes, decision techniquesand related papers will be compared and surveyed in the IoTperspective. However, in the following section, main methodsfor context reasoning will be mentioned. Context reasoningcan be classified as different categories [21]: fuzzy logic,ontology-based, probabilistic logic, rules, supervised learning,and unsupervised learning. Some of the important papers andsolutions are listed and compared in Table VI.

1) Fuzzy Logic: Fuzzy logic is different from traditionallogic. In traditional logic, everything is represented with0 or 1. However, in fuzzy logic, partial truth is alsoacceptable. In this way, the representation of the realworld with fuzzy logic is more acceptable than usingtraditional logic (speed: slightly fast, very slow, etc.).Fuzzy logic reasoning technique is not used standalone.Instead, it is most frequently used with other reasoningtechniques with regard to ontological, probabilistic, andrule-based reasoning.

2) Ontology-Based: Ontology-based logic depends ondescription logic, and reasoning can be achieved withontology modeled data. Semantic Web languages, suchas RDF, RDFS, and OWL are used to implementontology-based reasoning. It can be combined withontology modeling, which is the advantage of this rea-soning. However, it is not capable of supplying missingvalues and finding ambiguity. Thus, it is mostly usedwith rule-based reasoning. Event detection and hybridreasoning are some examples of the application domainof ontology-based reasoning.

3) Probabilistic Logic: In this technique, decisions arebased on the calculation of event probabilities andfacts. Different sensor data are combined with prob-abilistic logic. Dempster–Shafer and HMMs are usedas probabilistic reasoning for predicting the nextevent, recognizing activities, and forecasting uncertainty.Dempster-Shafer uses sensor data fusion to calculate theprobability of events. HMMs provide vision for the nextstate by using the current state. They are most frequentlyused in context awareness.

4) Rules: In this technique, reasoning can be acquiredwith an if-else structure. Rules are used with ontolog-ical reasoning. User preferences, event detection, andhuman thought can be modeled with rules for use inIoT applications.

5) Supervised Learning: Generally, in this technique, sen-sor data are collected and labeled for training. Then,functions and algorithms are generated according tothe expected data, and they are applied to all avail-able data. An ANN is a supervised learning techniqueused for finding patterns and modeling complex mod-els between input and output. The Bayesian network(BN) is another technique that is used for probabilis-tic reasoning. Directed acyclic graphs are used in BNsto express events and relationships. The DT is also usedas a supervised technique to build a tree for classifica-tion of data. SVMs are used for recognizing patterns. InSection V, related papers and solutions will be reviewedand compared.

6) Unsupervised Learning: In this technique, clusteringis used to extract meaningful results from unlabeleddata. The KNN clustering technique is used for con-text aware reasoning. Low-level, simple actions andoperations (positioning and location) can be resolvedwith a clustering technique. Another unsupervised learn-ing technique is the Kohonen’s self-organizing map(KSOM) (unsupervised neural network technique) thatis used for classifying incoming real sensor data andfor context aware applications, such as noise and outlierdetection [21].

4) Context Distribution: Context distribution delivers con-text to users. Context acquisition methods can also be contextdistribution methods, in terms of the user’s changing usageperspective [21]. There are other context distribution tech-niques in regards to querying and subscription. In the queryingmethod, users create queries to produce results. In the sub-scription method, users subscribe to the context system toperiodically obtain specific sensor data, or when a specificevent occurs. This method is used for real-time processingsystems.

V. MACHINE LEARNING

In this section, we focus on machine learning algorithms,which are used in areas, such as UbiComp, AmI, pervasivecomputing, mobile computing, context aware systems, andsensor networks that are all related to IoT. We review super-vised learning, unsupervised learning, and RL techniques inthe following sections. Since machine learning has a verywide coverage span, we review only IoT related and context

Page 14: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

14 IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018

TABLE VICONTEXT REASONING TECHNIQUES AND RELATED PAPERS

aware machine learning-related algorithms and techniqueshere. Fig. 4 illustrates IoT related (and also general) machinelearning algorithms and their classifications.

A. Supervised Learning

In supervised learning training data, which consists of a setof samples of labeled data, is used to learn and train a model.Then this model is later used to predict new sample data. Thereare different supervised learning techniques. Main techniquesthat are relevant to context reasoning in IoT can be listedas follows: ANNs, BNs, case-based reasoning (CBR), DTs,ensembles of classifiers (ECs), HMMs, instance-based learn-ing (IBL), KNN, and SVMs. Some of the important papersthat are focused on supervised learning algorithms are listedand compared in Table VII.

1) Artificial Neural Networks: ANN mimics a biologicalneural network, which provides an autonomous learning struc-ture. There are different types of ANNs in the supervisedlearning paradigm: backpropagation, ensemble, multilayer per-ceptron, Hopfield networks, and Boltzmann machines. Thereare also other ANN types in unsupervised and RL paradigm.Backpropagation neural networks are used in human activity

Fig. 4. IoT related machine learning algorithms.

recognition (walking, running, sitting, etc.) with wearable sen-sors [139], [140]. Guan et al. [105] used 40 sensors for bothlegs to sense activity recognition and used backpropagationneural networks for context reasoning. Saeedi et al. [141] usedsmartphone sensors (accelerometer, gyroscope, GPS, magne-tometer, and temperature) for personal navigation that usedbackpropagation neural networks for the learning part of thesystem. In addition, Choi et al. [142] used neural networks

Page 15: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

SEZER et al.: CONTEXT-AWARE COMPUTING, LEARNING, AND BIG DATA IN IoT: SURVEY 15

TABLE VIISUPERVISED LEARNING ALGORITHMS—ANNS, DNN, BNS, CBR, DTS, ECS, HMMS, IBL, KNN, AND SVMS

for the learning section of a smart home application system.Moreover, Mishra et al. [143] used multilayer perceptron anda fuzzy-neuro genetic algorithm to process IoT big data intheir framework, which is a cognitive-oriented IoT big dataframework.

2) Deep Learning: Deep learning is a type of ANN thatconsists of multiple processing layers and enables high levelabstraction to model data [144]. There are different types ofdeep learning models, namely backpropagation (with multiplehidden layers), convolutional deep neural networks (CNNs),recurrent neural networks (RNNs), deep belief networks,restricted Boltzmann machines (RBMs), and long short-termmemory (LSTM) networks.

In the IoT world, deep learning techniques have been usedin recent years. In literature, the use and implementation ofdeep learning techniques for learning from data collected inthe IoT and cloud are still under development. Lane et al. [145]researched the use of deep learning implementations to processdata from IoT devices, such as wearables and smart phones.They compared IoT hardware platforms (Snapdragon 800,Tegra K1, Edison) in terms of energy consumption, execution

time, and other performance metrics, when implementing deepneural network (DNN) and CNN models to process audio andimage sensor data. De Coninck et al. [146] proposed the big-little approach, implementing DNN in IoT. In their approach,if the little DNN in a smart device cannot classify input data,this input data is sent to a remote cloud DNN for classification.Ma et al. [147] used an RNN and deep RBM to fit a model andpredict traffic congestion in China using GPS data from taxis.Zhang et al. [148] used a deep autoencoder to process fusedIoT data (sensor, social, and background data) for pollutiondetection and traffic patterns. Alsheikh et al. [149] proposedanalysis of mobile (human activity recognition) data using adeep learning neural network. They used Apache Spark toprocess mobile big data in parallel. In addition, deep learn-ing algorithms are used for feature extraction from sensordata. Plötz et al. [150] used deep belief networks, RBMs andcompare the performance of deep learning algorithms withstatistical and fast fourier transform-based feature extractionapproaches.

3) Bayesian Networks: BNs are the types of networksbased on directed acyclic graphs. In this method, sensor data

Page 16: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

16 IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018

are classified with random variables and statistics. In addi-tion, an NB classifier is a specific type of classifier based onthe assumption that the representative features for classifica-tion might be considered independent. BNs and NB classifiersare used in human activity recognition [151] and health mon-itoring areas, such as monitoring and classifying respirationrate, step count [160], and heart rate data [152], [153]. Inaddition to these, Korpipää et al. [154] used BNs and NBclassifiers to extract features from audio data and to classifydata. In their studies, they recognized activities according tocontext. Ramakrishnan et al. [155] used BNs to implement aheterarchical autonomic recursive distributed BN frameworkthat provides learning and reasoning using IoT sensor data.Further, Krause et al. [156] used BNs and NB classifiers toimplement wearable sensor platform probabilistic reasoningparts that support inference from collecting data using sensors,such as armbands, headsets, smart phones, and GPS receivers.In addition to these, BNs and NB classifiers are also commonlyused solutions and learning models for home automation [157]and navigation systems [141].

4) Case-Based Reasoning: In this supervised learningmethod, new problems are solved using past solutions of sim-ilar problems. It is similar to making analogies. There arefour main steps for case-based reasoning: 1) retrieve; 2) reuse;3) revise; and 4) retain [158]. A past problem, which is similarto the new problem, is retrieved from memory. The solu-tion of that problem is reused for the new problem. Problemattributes are revised according to the new case, and the solu-tion is retained in memory. Reference [159] is one exampleof case-based reasoning.

5) Decision Trees: In this method, values and attributesare implemented with tree hierarchical models and mappedwith nodes and edges. Classification rules are used in travers-ing from root to leaf. The C4.5 algorithm (extension ofID3) is a widely used DT algorithm [30], [151]. Humanactivity recognition papers [151], [160] (used CART andID3 algorithms), and [161] are among the examples usingDTs algorithms. In these papers, human activities (walk-ing, running, sitting, etc.) are determined with wearablesensor networks (acceleration sensors, etc.) and embeddeddevices. In addition, Huebscher and McCann [162] useda relevance-based DT learning approach to implement anadaptive middleware framework for context aware appli-cations. Moreover, Byun and Cheverst [163] proposed asolution that provides a dynamic adaptation using DT algo-rithms. Brdiczka et al. [164] proposed a context modelfor an intelligent environment that used DTs algorithms forreasoning.

6) Ensemble Algorithms (Ensembles of Classifiers): In thismethod, multiple classifier algorithms and models are usedtogether to achieve better classification, instead of using a sin-gle classifier and model. There are different methods of ECs:voting, bagging, and boosting. In the voting method, each clas-sifier returns a result. The final classifier is generated with thegreatest number of results, that is called voting. In the bag-ging method, subsets of the initial training set are formedby random sampling with replacement. The base classifieris generated (learned) using each subsample. In the boosting

method, subsamples of the training set are weighted accord-ing to difficulty of the classification. The boosting methodis similar to the bagging method. However, the learning forthe final classifier is achieved through the weighted votes ofthe classifiers [165], [166]. Anagnostopoulos et al. [166] usedAdaBoost M1, bagging, voting methods, and NB classifiersin their proposed model, for predicting the location of mobileusers. Ravi et al. [167] used DTs, KNNs, SVM, and NB algo-rithms with voting methods in their study, activity recognitionfrom accelerometer data.

7) Hidden Markov Models: HMMs are simple dynamicBNs based on the statistical Markov model (probabilisticmathematical model that defines future states depending on thecurrent state). The system is modeled with unobserved hiddenlayers. HMM is used for the context reasoning and learn-ing part of the IoT systems. Mannini and Sabatini [168] usedHMM for human physical activity reasoning in their studies.On-body accelerometers collect sensor data and classify datawith ANN, KNN, HMM, NB, and SVM. Oliver et al. [169]used HMM to determine office activities from multiple sen-sory channels. Chen et al. [170] used the BN, SVM, KNN,and HMM in a proposed context-aware search system for theIoT. In addition to these, Chen et al. [180] used Markov chainsto implement a collaborative sensing intelligence frameworkin an industrial IoT.

8) Instance-Based Learning: In this technique, newinstances are compared with other instances in training sets.Comparison can be achieved with a distance function to deter-mine the distances of each instance pair causing expensiveresults, such as more memory requirements and computationtime. Thus, the learning part should not be implemented onthe mobile side/device. The cloud side is more convenient forstorage and computing. The KNN is one example of IBL.

9) K-Nearest Neighbor: KNN is a type of supervised learn-ing algorithm, such that the values are classified with majorityvoting. In this method, new values are categorized with thegreatest number of nearest neighbor values. The KNN algo-rithm is used in human activity recognition and context awaresystems. Altun and Barshan [140] proposed a system thatcontains inertial and magnetic sensor units that sense humanactivity. In their study, they used the KNN, Bayesian deci-sion making, least-squares method, dynamic time warping,SVMs, and ANN. Guan et al. [105] used KNN and back-propagation neural networks for context reasoning. They wereable to achieve over 90% reasoning success. In addition,Jatoba et al. [160] used the KNN for their experiments.

10) Support Vector Machines: The SVM is a popular super-vised classifier and pattern recognition algorithm that providesdata analysis for classification and regression. Classificationcan be achieved with support vectors, which provide the opti-mum distance of target class boundaries. The SVM is used indifferent areas, such as image, video processing, pattern recog-nition, sensor data analysis, and recognition. He and Jin [171]used an SVM in a human activity recognition model to deter-mine the activities of humans. Kranz et al. [172] used anSVM in their middleware that collects data from sensorsand classifies the data for reasoning. Khan et al. [173] pro-posed a method that classifies streaming data from IoT devices

Page 17: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

SEZER et al.: CONTEXT-AWARE COMPUTING, LEARNING, AND BIG DATA IN IoT: SURVEY 17

TABLE VIIIUNSUPERVISED LEARNING ALGORITHMS—KSOM, THE RSOM, NG, ARL-a Priori, k-MEANS, AND DBSCAN

by using simple aggregation approximation, density-basedclustering, and an SVM.

B. Unsupervised Learning

The aim of the unsupervised learning technique is to clus-ter the unlabeled data. In this technique, there is no classifiedand labeled data. Results are returned faster than the super-vised learning approach for hidden patterns and big data.Further, in this technique, a large stack of heterogeneous datais divided into easily understandable and manageable smallerhomogeneous subsets. There are different unsupervised learn-ing approaches: ANN, association rule learning (ARL), andclustering. Some important papers focused on unsupervisedlearning algorithms are listed and compared in Table VIII.

1) ANN: Self-organizing map (SOM) is a type of unsuper-vised learning algorithm that uses ANN. In an SOM algorithm,high-dimensional spaces are mapped to neurons that store thedata. It is a type of clustering, vector quantization algorithm.There are different types of SOM: KSOM, and recurrent self-organizing map (RSOM). Neural gas (NG) is a type of ANNthat is based on SOM. Finding optimum values, which arebased on the feature vector, can be achieved with NG.

Van Laerhoven et al. [176], [177] used KSOM, RSOM,k-means, and Hartigan’s sequential leader clustering algo-rithms to analyze real-time sensor data from wearable sensorsfor comparison of unsupervised ANN algorithms. Further,Van Laerhoven [176] used SOM algorithms for teaching con-text to algorithms. In addition, Mayrhofer et al. [178] usedSOM, RSOM, k-means, Hartigan’s sequential leader cluster-ing, growing k-means clustering, NG, NG with competitiveHebbian learning, growing NG, and incremental density-basedspatial clustering of applications with noise (IDBSCAN), torecognize and predict context by learning from user behaviorby using sensors.

2) Association Rule Learning: The aim of this method isto find interesting relations between variables. There are dif-ferent ARL algorithms, such as a priori, eclat, and FP-growth.Guo [179] used the a priori algorithm and map reduce modelin IoT cloud computing datasets to mine frequent structures.In [155], an adapted a priori algorithm is used for findingcorrelations.

3) Clustering: There are different clustering algorithms inunsupervised learning techniques: k-means algorithm, fuzzyclustering, density-based spatial clustering of applications withnoise (DBSCAN), and ordering points to identify the cluster-ing structure algorithm. k-means is the most frequently usedclustering algorithm, which provides the minimum distancebetween similar data, and maximum difference between clus-ters. In the k-means clustering algorithm, N input datasets

divide the cluster sets into k pieces. Mayrhofer et al. [178]used the k-means clustering algorithm for context reasoning.Van Laerhoven et al. [176] also used the k-means algorithmto cluster real-time wearable sensor data.

C. RL

RL is another type of learning approach used in variousareas, such as control theory, simulation-based optimization,statics, and other fields related to automatic control. In theRL approach, automatic control (convergence to the desiredstate and ideal behavior) is provided with a feedback signal,which is called the reinforcement signal. In context aware-ness studies in WSNs, RL is used to improve the systemperformance. The features of the RL are examined under thefollowing subtitles: state representation, event representation,action representation, rule representation, reward representa-tion, agent interaction and control, and exploration versusexploitation [181].

Q-Learning is the most commonly used RL approach incontext awareness of the WSN [182]. In Q-Learning, the RLsystem chooses a subset of actions, which are defined in rules,then, it determines exploration (random action) or exploitation(choosing action with best Q-value from Q-table). After exe-cution of the action, the state, event, and reward are observed.According to the state of the environment, the Q-table andrules are updated [181].

VI. BIG DATA

In this section, we are focusing on data issues related to theIoT. Due to the rapid growth in IoT installations, the corre-sponding data problems associated with big data are becomingmore common. Here, the definition and features of big data,big data generation and acquisition, big data storage, andfinally big data analytics will be reviewed in the context of IoT.Fig. 5 presents IoT big data-related research and developmentareas.

A. Definition and Features of Big Data

Big data refers to very large unstructured data as comparedto other types of datasets. Hidden and new information canbe found when analyzing this big data, and that is why it isbecoming more interesting and receives significant attentionfrom both industry and academics. In the IoT, sensors createsignificant data and this will rapidly increase. For example,the number of RFID tags are expected to reach 209 billionby 2021 [37]. The number of connected IoT devices are esti-mated to be in the range of 50 to 100 billion in very nearfuture [2], and the total amount of data on Earth will reach

Page 18: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

18 IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018

Fig. 5. Big data in IoT.

35 ZB soon [11]. These numbers show that IoT data will bepart of the big data.

Big data differs from the traditional data in terms of “vol-ume” (great volume and collection), “variety” (various types ofdata), “velocity” (rapid production, generation and analysis),“value” (low density and huge value), “variability” (incon-sistency of data prevents easy handling and processing), and“veracity” (quality of data vary greatly) [37], [183]. Traditionalcomputers and systems were not sufficient to process, ana-lyze, and manage big data when Internet companies, such asGoogle, Yahoo, and Facebook, started collecting huge amountsof data in the early 2000s. Thus, they developed new systems,new approaches, and solutions to process big data.

IoT big data has different characteristics when comparedto common big data problems. These characteristics can beclassified into three categories, namely data generation, dataquality, and data interoperability [32]. In data generation,velocity (generation of data at different rates), scalability,dynamics (things are mostly mobile in IoT), and hetero-geneity (different types of sensors) are specific characteristicsthat make IoT data different from others. From data qualityperspective, uncertainty, redundancy, ambiguity, and incon-sistency are the specific characteristics differentiating IoTdata. Finally, in terms of data interoperability, semantics andincompleteness makes IoT data different [32].

B. Big Data Generation and Acquisition

There are different types of sources of big data, such asenterprise data (production data, sales data, financial data,etc.), IoT data (sensors data), bio-medical data (human gene,bio-measurement data, etc.), and other sources of data (astron-omy, etc.). The IoT is a significant source for big data,which also has specific features in terms of large scale (e.g.,

surveillance video, location, and historical sensors data), het-erogeneity (different types of sensors and devices), strongspace and time correlation (because of analysis and inference),noise, and high-volume low-efficiency (small portion of bigdata is significant for analysis, e.g., traffic accident part inthe whole data). Subsequent to retrieval of raw data, big datasystems include a second phase, big data acquisition, whichinvolves big data collection (logs, sensing, etc.), big data trans-mission, and big data preprocessing (integration, cleaning, andredundancy elimination) [37].

Another important issue in IoT data acquisition is stream-ing. Data from IoT sensors and devices could be coming inreal time and in continuous mode. IoT streaming also requiresreal time data processing. Aggregation, join operations, contin-uous queries, and top-k monitoring are some of the significantqueries to be considered in IoT and sensor systems. Aggregatequeries enable the reduction of sensor power consumption withless querying on sensors. Join queries are helpful in obtainingmultiple sensor data simultaneously. Stream mining providesmethods for clustering, classification, outlier and anomalydetection, and frequent itemset mining in IoT stream data [32].Jeffery et al. [184] proposed statistical smoothing for unreli-able RFID (SMURF) data to clean and smooth filter RFIDstream data. However, SMURF does not solve the cross-reads(false read) in the RFID stream data. Liao et al. [185] proposedKLEAP, which provided a solution for cleaning cross-reads inRFID data using a density-based method.

C. Big Data Storage

Big data storage methods are different from traditional datastorage methods due to large storage requirements, managing,and analysis problems. Traditional massive data storage sys-tems can be classified as direct attached storage, network

Page 19: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

SEZER et al.: CONTEXT-AWARE COMPUTING, LEARNING, AND BIG DATA IN IoT: SURVEY 19

attached storage, and storage area network. They are not suit-able for big data storage. In addition to this, distributed storagesystems were proposed to store massive amounts of data.However, they have critical factors that should be consideredsuch as [37] and [186].

1) Consistency: Multiple distributed storage systems shouldwork consistently. There are also multiple copies of thesame data to prevent server failure.

2) Availability: More servers in the system could causemore problems and failures. All servers working withoutproblems is the desire of user.

3) Partition Tolerance: Multiple servers in the system areconnected to each other via the network. If there is afailure on the network, the entire system could not workproperly. All distributed systems should have tolerancefor link, node, and network problems.

Distributed systems are categorized as CA (systems thathave consistency and availability features), CP (systems thathave consistency and partition tolerance features), and AP(systems that have availability and partition tolerance features)according to the factors that are defined [32]. These criticalfactors are not accomplished simultaneously [187]. Thus, stor-age mechanisms for big data have been developed over theyears. They are categorized as file systems, databases, and pro-gramming models. File systems are the basis of applicationsfor big data storage systems. There are different file systems inbig data, such as Hadoop distributed file system [188], Cosmos(Microsoft development) [189], Haystack (Facebook develop-ment) [190], and Google File System (GFS) [191]. Anotherdevelopment for big data storage is databases. Traditional rela-tional databases do not meet the requirements of the storage ofbig data. NoSQL databases became popular recently for stor-ing big data. There are four main types of NoSQL databases:1) key-value; 2) column-oriented; 3) document-oriented; and4) graph-based databases [37].

1) Key-Value Databases: Data is stored in a key-valuemodel, such as dictionary and hash. Keys in the modelare unique and values are linked to these keys. Dynamo(Amazon) [192], Voldemort (LinkedIn) [193], AzureTable Storage, MemcacheDB, and Berkeley DB areexamples of key-value databases. In addition, Redis,Riak, and Scalaris (Apache), Tokyo Cabinet and TokyoTyrant, and Memcached and Memcache DB are exam-ples of key-value storage systems [37], [38].

2) Column-Oriented Databases: In column-orienteddatabases, columns are used to split and store data.BigTable (Google) [194], Cassandra (Facebook) [195],HBase,17 HyperTable,18 and C-Store19 are the exam-ples of column-oriented databases. Column-orienteddatabases are read-optimized systems, whereas, tra-ditional relational database management systems arewrite-optimized systems. High performance queryingcan be achieved and developed in read-optimizedsystems. This can be an advantage of using

17[Online]. Available: https://hbase.apache.org18[Online]. Available: http://www.hypertable.com19[Online]. Available: http://db.csail.mit.edu/projects/cstore/,Stonebraker

2005

column-oriented systems in the IoT [32]. Traceyand Sreenan [197] proposed an IoT framework thatstore sensor data into an HBase database.

3) Document-Oriented Databases: In document-orienteddatabases, data representation is more complex thankey-value databases due to document complexity. Inaddition, the key-value model features are preserved aswell. There are different document-oriented databases.Some of them are listed as follows: MongoDB(open-source data-store in binary JSON format) [198],SimpleDB (Web services of Amazon) [199], andCouchDB (Apache, datastore in JSON format) [200].Preuveneers and Berbers [133] used CouchDB tostore data from IoT sensors in project Samurai.Cecchinel et al. [201] developed an architectureof IoT sensors in the SophiaTech campus calledSMARTCAMPUS. They used MongoDB as a storageof big data for the IoT.

4) Graph-Based Databases: In this type of database, datais represented as a graph that is used for tasks such asnetwork analysis. There are no rows and tables in graph-based databases. OrientDB,20 Neo4J,21 and Titan22

represent some examples of graph-based databases [38].All big data storage systems mentioned above are related

to IoT data storage and analysis. However, there are alsoresource-constrained devices and things in IoT systems. Forthe resource-constrained devices in the IoT world, storage andenergy usage become crucial and critical points. Therefore,new storage systems and databases are proposed, such asSolarStore (solar-powered storage) [202] and Antelope (DBsystem for resource-constrained devices). Antelope is the firstDBMS that provides every sensor a data-store [203]. Anotherstorage approach is storing data in flash memory for logging,which is called amnesic storage system [204]. Every sensornode stores data, such as audio and image, which also enablescompressing, querying, and efficient organizing of data.

D. Big Data Analytics

Owing to the inadequacies of the traditional parallel pro-cessing models like message passing interface and openmultiprocessing, some parallel processing models and enginesare developed for the process and analysis of big data.MapReduce is an important and popular parallel process-ing programming model [205]. Hadoop [206] is one ofthe big data processing frameworks that implements theMapReduce programming model. Other significant parallelprocessing models and engines for the analysis of big data arelisted as follows: Dryad (general purpose distributed parallelprocessing engine) [207], All-Pairs (used for biometrics, bio-informatics data mining) [37], Pregel (processes large sizedgraphs) [208], Spark (works faster than Hadoop because ofmemory caching) [38], Storm (processes streaming data inreal-time) [38], Flink (batch and stream processing) [38],

20[Online]. Available: http://orientdb.com/21[Online]. Available: http://neo4j.com/22[Online]. Available: http://thinkaurelius.github.io/titan/

Page 20: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

20 IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018

and H2O (parallel processing engine that contains math andmachine learning libraries) [37], [38], [209].

For analyzing streaming real-time data, there are IoTdata analysis, processing, and sharing tools. Ericsson’s IoTFramework23 is one of the tools that can combine virtualstreams with local ones for statistical analysis and prediction.IBM Watson IoT24 is another commercial cloud platform forprocessing IoT data. Yet another IoT analysis tool is Node-Red25 that combines IoT data, services and devices whichprovide data fusion in IoT data and devices [19].

E. Big Data Learning

A higher level service in IoT big data analysis is datalearning. There are now several machine learning tools andframeworks that contain many learning algorithms work-ing on big data and processing in parallel. These include:Mahout [210], Spark MLlib26 [211], H2O [38], SAMOA(Scalable Advanced Massive Online Analysis) [212], Flink-ML [38], Weka [213], Oryx,27 and Vowpal Wabbit [38].Mahout contains clustering (such as k-means), classification(such as NB, HMMs, multilayer perceptron, random forest,and logistic regression), and collaborative filtering (recommen-dation engines) algorithms, modeling tools, and more. SparkMLlib contains the same tools (classification and clusteringalgorithms) as Mahout, but, also includes a regression modelthat does not exist in Mahout. MLlib also contains featureextraction, optimization, and dimensionality reduction tools.H2O differs from the other tools because it contains many toolsfor DNNs. SAMOA is a framework that supports machinelearning on streaming data. Flink-ML includes machine learn-ing algorithms and works on the Flink platform. Weka beganto develop wrappers for distributed processing on Hadoop andSpark. Oryx has machine learning algorithms for clustering,classification, and collaborative filtering. Vowpal Wabbit is dif-ferent from other tools and frameworks, as it is designed forfast online learning [38].

In addition to these, big data deep learning is also anotherimportant part of big data learning. Najafabadi et al. [214]surveyed deep learning applications in big data, and deeplearning challenges in terms of learning from streaming data,scalability of models, high-dimensionality, parallel, and dis-tributed computing. Further, they mentioned the challenges ofbig data analytics as follows: “data quality and validation, datacleansing, feature engineering, high-dimensionality and datareduction, data representations and distributed data sources,data sampling, scalability of algorithms, data visualization,parallel and distributed data processing, real-time analysisand decision making, crowd-sourcing and semantic input forimproved data analysis, tracing and analyzing data provenance,data discovery and integration, parallel and distributed com-puting, exploratory data analysis and interpretation, integratingheterogeneous data, and developing new models for massive

23[Online]. Available: https://github.com/EricssonResearch/iot-framework-engine

24[Online]. Available: http://www.ibm.com/internet-of-things/25[Online]. Available: http://nodered.org/26[Online]. Available: http://spark.apache.org/mllib/27[Online]. Available: https://github.com/cloudera/oryx

data computation” [214]. Moreover, Chen and Lin [215]summarized big data deep learning (large-scale deep beliefnetwork and large-scale CNN) and challenges with regards todeep learning for high volumes of data, high variety of data,and high velocity of data.

F. Big Data Security

Security of big data is an important topic in big data stud-ies. Privacy and security of big data topics became popularwith the emergence of cloud computing, social networks, andanalytics engines. In the IoT research area, big data security isalso important due to the usage of storage for the IoT sensorsand devices. However, in the literature, there are not suffi-cient studies covering the IoT-related big data security issuesspecifically. Big data security problems are studied and sur-veyed in the literature. These studies are also related to IoTbig data security issues as well. Cuzzocrea [216] surveyedbig data security issues and challenges under the followingsubtitles: security issues of big outsourced databases, privacypreserving big data analytics, big data exchange, privacy pre-serving big graph analysis and mining, and querying cloudenabled DBMS. Security issues are summarized and analyzedby the viewpoint of IoT usage scenarios as follows.

1) Outsourced databases can create security problems ingeneral for big data resources.

2) Big data analytics cause privacy preserving problemsdue to the deep analysis of data.

3) Data exchange between databases and IoT devices isextremely important due to security issues.

4) Querying and storing encrypted data from distributed bigdata stores is a solution for big data systems to preventprivacy and security breaches.

G. IoT and Big Data Recent Advancements

The IoT is among the most influential topics, which candirectly affect human daily life activities. Hence, many IoTsolutions have been proposed and developed. Currently, lead-ing cloud companies are developing and presenting theircustomers with machine learning algorithms to analyze IoTbig data. We discussed and analyzed four leading IoT cloudservices, namely Google Cloud,28 Amazon Web Services(AWS),29 Microsoft Azure,30 and IBM Watson.31 All fourIoT cloud services have the following features: Device man-agement, data management, real-time streaming, big dataanalytics, and learning ability. Their machine learning modelshave also similar general purpose machine learning algo-rithms (classification, regression, and clustering algorithms)for anomaly detection, sensor failure, and analysis of IoT data.All these services implement machine learning algorithmson their own frameworks. Further, Google Cloud and IBMWatson use Spark ML to implement a learning structure on

28[Online]. Available: https://cloud.google.com/solutions/iot/29[Online]. Available: https://aws.amazon.com/iot-platform/30[Online]. Available: https://www.microsoft.com/en-us/cloud-

platform/internet-of-things-azure-iot-suite31[Online]. Available: http://www.ibm.com/internet-of-things/

Page 21: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

SEZER et al.: CONTEXT-AWARE COMPUTING, LEARNING, AND BIG DATA IN IoT: SURVEY 21

IoT big data. In addition, Google cloud uses Tensorflow to ana-lyze IoT data in a deep learning structure. They also supportbig data storage and analytics. However, the infrastructuresvary among different services. Google Cloud uses BigTable,BigQuery Streaming for storage and streaming. AWS usesDynamoDB for IoT data storage. Microsoft Azure uses aHadoop environment for storage and analytics. IBM Watsonuses CouchDb for storage.

In addition to these, open source and academic big data ana-lytics and learning tools are proposed and developed. Theseare mentioned in the big data learning section. Apache SparkMLlib32 is the most recently developed IoT big data analyt-ics development environment. IoT data analysis applicationscan be implemented with an MLlib library that consists ofclassification (DT, random forest, gradient-boosted tree, mul-tilayer perceptron, logistic regression, and NB classifiers),regression (linear, generalized linear, regression tree, randomforest, gradient-boosted tree, survival, and isotonic regression),and clustering (k-means, latent Dirichlet allocation, bisect-ing k-means, Gaussian mixture model), collaborative filtering,model selection, and feature extraction feature algorithms.Alsheikh et al. [149] proposed mobile big data analytics usingApache Spark and deep learning. They implemented a deeplearning model using Spark to analyze human activity recogni-tion. Moreover, deep learning implementation can be achievedwith Spark and other deep learning libraries and tools.These are listed as follows: SparkNet,33 CaffeOnSpark,34

Sparkling Water,35 Deeplearning4J,36 and TensorFlow onSpark.37 SparkNet and CaffeOnSpark are projects that canrun with Apache Spark and Caffe, and provides the imple-mentation of deep learning. SparklingWater integrates H2Owith Apache Spark. Deeplearning4J is a java-based library thatprovides the implementation of neural and deep learning net-works running with Apache Spark and Hadoop. TensorFlowon Spark can handle distributed deep learning implementationwith Apache Spark and TensorFlow.

ICN provides a new perspective of implementing IoT appli-cations. Amadeo et al. [54] mentioned that ICN will be usedfor a vehicular communication application. In their surveypaper, they analyzed and discussed the advantages of the usageof ICN in vehicular IoT applications. The motivation of imple-menting a vehicular IoT application with ICN is due to the factthat vehicular communication applications are information-oriented, disregarding the producer identity and focusing oncontent, location, and time interval. In the future, ICN usagefor implementing IoT applications will also contribute to bigdata-IoT studies for reducing the network load by discourag-ing request and packet duplication, and higher scalability. ICNcould manipulate on-the-fly data using filtering and aggregat-ing functions that reduce network resource usage and providedata retrieval scalability [54].

32[Online]. Available: http://spark.apache.org/docs/latest/ml-guide.html33[Online]. Available: https://github.com/amplab/SparkNet34[Online]. Available: https://github.com/yahoo/CaffeOnSpark35[Online]. Available: https://databricks.com/blog/2014/06/30/sparkling-

water-h20-spark.html36[Online]. Available: https://deeplearning4j.org/37[Online]. Available: https://github.com/adatao/tensorspark

VII. OPEN ISSUES AND FUTURE DIRECTIONS

It is clear that there will be many more developments withmassive deployments of the IoT in the coming years, and fur-ther research and development will be needed in the future.Below, we try to summarize some of the open issues in thearea.

A. Enhancing IoT Standards

In recent years, there have been more IoT standardizationefforts with the support of companies and research groups.There is still a lack of standardization in machine learningimplementation and big data processing structures. As seen inthe case of any emerging technology, it might take some timebefore a globally accepted industry standard is adopted. Duringthis standardization process, different vendors and companiesmight try to implement their systems through several attempts.Eventually, the driving technology and underlying economicsmight be the ultimate decision maker in this adaptation pro-cess. Owing to these uncertainties, IoT hardware and softwaredevelopers might be careful in their implementation strate-gies. However, this can also be viewed as an opportunity fortechnological enhancements for the overall industry.

B. Privacy and Security Issues in IoT World

There is a growing concern about security and privacyissues within the IoT networks that require distributed access,high-rate streaming data flow, autonomous decision makingcapabilities, etc. With the increasing complexities of such net-works, it becomes much more difficult to maintain the overallsecurity and privacy. Cyber security has become one of themost important areas due to the aforementioned problems inthe IoT world. Increasing security precautions might degradethe data processing performance of the IoT/big data analyt-ics process. However, a security breach in such a system canhave devastating results, because these systems are currentlyintegrated into several crucial industrial and/or governmentapplications, such as transportation systems, water/sewage sys-tems, healthcare, etc. Thus, a tradeoff between security andperformance might not be possible. As a result, maintainingthe highest possible security level for such systems and, atthe same time, maintaining the overall system performance toaddress real-time data processing necessities are major chal-lenges. This is probably one of the major open issues ofIoT/big data research. There are also security and privacyproblems in IoT devices and frameworks under development.

C. Using Semantics in IoT World

The semantic Web is used in the lower layers of IoT devel-opment, such as SSN ontology, for describing sensors andsensor data. As the heterogeneity and size of the IoT worldis expanding, interoperability between devices, frameworks,and systems will become more difficult. OneM2M standardtries to overcome this, using semantic technologies for abstrac-tion and interoperability. We will see more efforts in thisdirection [217].

Page 22: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

22 IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018

D. Developing Learning Systems for IoT

In recent years, many learning systems and solutions havebeen developed with context awareness features. They aremostly designed as rule-based, logic-based, and ontology-based solutions, and developed using supervised, unsuper-vised, and reinforcement algorithms. They can be improvedwith mixed or hybrid methods, such as rule and ensemblelearning algorithms for better performance. Neural networkscan be used more extensively with the rapidly growing IoTbig data, and solutions can be enhanced with better reason-ing capabilities. Learning frameworks and systems are chieflydesigned for sensor networks with limited data production andusage. New learning frameworks for larger IoT deploymentswith much higher data traffic can be designed and developedwith new big data analytics and reasoning solutions. Moreover,unsupervised learning and sensor fusion techniques can beimproved to process and analyze IoT data.

E. Implementing and Developing Deep LearningTechniques on IoT Big Data

In the last few years, deep learning has emerged as a revolu-tionary technique to provide robust solutions in classificationand/or prediction problems where traditional machine learningmodels are failing. One basic characteristic of deep learningis to use the low-level features (or even raw data itself) andtransform them into meaningful, high level features withinthe model via applying unsupervised and supervised learn-ing through cascaded layers. As a result, better recognition isachieved in the final stages of the model. Successful imple-mentation of deep learning generally requires huge data sets,where the model learns the hidden high-level features fromdata. This fits well with the big data and/or IoT concept.As a result, the number of research and application paperscombining deep learning and the IoT began appearing in lit-erature. Even though interest in big data and the IoT hasbeen quite visible in recent years, the integration of deeplearning with these fields is still an ongoing process; hence,the number of research papers combining these areas is lim-ited. In addition, the combination of different deep learningmodels can be improved (RNN-Reinforcement, RNN-LSTM,LSTM-Reinforcement, etc.).

F. Developing Big Data Solutions for IoT

Big data solutions have emerged with Internet initiatives andsolutions. These big data solutions may not meet the require-ments of IoT data, in terms of analysis, storage, acquisition,and learning. Cloud computing solutions can be combined withthe available big data solutions for the IoT. Then, big datalearning and analytics solutions for the IoT can be developedfor better reasoning performance [217], [218].

G. Increasing Autonomy and Implementing SelfOrganized IoT Structures

IoT applications can be extended and developed with fullyautomated M2M communication, automated reasoning, andlearning systems. Without supplying information and notifica-tion to humans for interaction and decision, devices can be able

to perceive, learn, interact, and decide, using IoT systems andsolutions. Digital personal assistants that manage all surround-ing devices, and communicate with other personal assistancesolutions can be further developed. Distributed knowledge ofIoT structures can be developed and improved. Smart citiesthat manage all IoT devices and communicate with other smartcities, autonomous vehicles, smart road systems, smart gridand energy production systems, and a smarter planet, canbe future projects and initiatives using IoT solutions, whichare capable of perceiving, learning, interacting, and deciding.The realization of this vision, autonomous and self-organizingIoT infrastructures, will be enabled by the ongoing researchin the areas of semantics for interoperability and intelligentcognition, and learning from big data.

VIII. CONCLUSION

In this survey, we covered IoT studies from both histori-cal and conceptual perspectives, as the field has evolved intoa number of different dimensions. Related fields, such asUbiComp, pervasive computing, AmI, and WSN and its varia-tions, have evolved with time and brought us today to what iscalled the IoT (Section III). As the field has evolved over time,context awareness has become an essential part of the IoT.This is because it relates to understanding the changes in theenvironment, and provides an opportunity to act and respondaccordingly. This was the first step toward intelligence in theIoT (Section IV). Understanding context and acting accord-ingly, requires learning and many machine learning techniqueswere developed and adapted in the field (Section V). As thenumber of sensors and devices increases and continues toincrease at an unprecedented rate, data flowing from the IoThas become a major issue. Collecting, managing, processing,and analyzing data requires new methods and techniques asfeatures of data in volume, variety, and veracity dimensionsare completely different from traditional data. This is nowcalled the big data problem, and the IoT data has suddenlybecome the IoT big data. As such, this problem requires newapproaches. We reviewed some existing and upcoming solu-tions, and methods in IoT big data, and big data in general,in Section VI. Finally, in Section VII, we also presented theopen issues that need to be addressed in the near future.

REFERENCES

[1] K. Ashton, “That ‘Internet of Things’ thing,” RFID J., vol. 22, no. 7,pp. 97–114, 2009.

[2] C. Perera, A. Zaslavsky, M. Compton, P. Christen, andD. Georgakopoulos, “Semantic-driven configuration of Internetof Things middleware,” in Proc. IEEE 9th Int. Conf. Semantics Knowl.Grids, Beijing, China, 2013, pp. 66–73.

[3] L. Atzori, A. Iera, and G. Morabito, “The Internet of Things: A survey,”Comput. Netw., vol. 54, no. 15, pp. 2787–2805, 2010.

[4] J. Gubbi, R. Buyya, S. Marusic, and M. Palaniswami, “Internet ofThings (IoT): A vision, architectural elements, and future directions,”Future Gener. Comput. Syst., vol. 29, no. 7, pp. 1645–1660, 2013.

[5] M. Weiser, R. Gold, and J. S. Brown, “The origins of ubiquitous com-puting research at PARC in the late 1980s,” IBM Syst. J., vol. 38, no. 4,pp. 693–696, Dec. 1999.

[6] V. Stirbu, “Towards a RESTful plug and play experience in the Webof Things,” in Proc. IEEE Int. Conf. Semantic Comput., Santa Monica,CA, USA, 2008, pp. 512–517.

Page 23: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

SEZER et al.: CONTEXT-AWARE COMPUTING, LEARNING, AND BIG DATA IN IoT: SURVEY 23

[7] M. V. Trifa, “Building blocks for a participatory Web of Things:Devices, infrastructures, and programming frameworks,” Ph.D. disser-tation, Dept. Comput. Sci., ETH Zurich, Zürich, Switzerland, 2011.

[8] D. Pfisterer et al., “SPITFIRE: Toward a semantic Web of Things,”IEEE Commun. Mag., vol. 49, no. 11, pp. 40–48, Nov. 2011.

[9] A. Gyrard, “Designing cross-domain semantic Web of Things applica-tions,” Ph.D. dissertation, Dept. Comput. Sci., Eurecom, Biot, France,2015.

[10] B. N. Schilit and M. M. Theimer, “Disseminating active map infor-mation to mobile hosts,” IEEE Netw., vol. 8, no. 5, pp. 22–32,Sep./Oct. 1994.

[11] A. Zaslavsky, C. Perera, and D. Georgakopoulos, “Sensing as a serviceand big data,” in Proc. Int. Conf. Adv. Cloud Comput., 2012, pp. 21–29.

[12] P. W. Simon, Too Big to Ignore : The Business Case for Big Data.Hoboken, NJ, USA: Wiley, 2013.

[13] L. D. Xu, W. He, and S. Li, “Internet of Things in industries: A survey,”IEEE Trans. Ind. Informat., vol. 10, no. 4, pp. 2233–2243, Nov. 2014.

[14] D. Miorandi, S. Sicari, F. De Pellegrini, and I. Chlamtac, “Internet ofThings: Vision, applications and research challenges,” Ad Hoc Netw.,vol. 10, no. 7, pp. 1497–1516, 2012.

[15] J. A. Stankovic, “Research directions for the Internet of Things,” IEEEInternet Things J., vol. 1, no. 1, pp. 3–9, Feb. 2014.

[16] E. Borgia, “The Internet of Things vision: Key features, applicationsand open issues,” Comput. Commun., vol. 54, no. 12, pp. 1–31, 2014.

[17] A. Whitmore, A. Agarwal, and L. Da Xu, “The Internet of Things—A survey of topics and trends,” Inf. Syst. Front., vol. 17, no. 2,pp. 261–274, 2015.

[18] D. Singh, G. Tripathi, and A. J. Jara, “A survey of Internet-of-Things:Future vision, architecture, challenges and services,” in Proc. IEEEWorld Forum Internet Things (WF IoT), Seoul, South Korea, 2014,pp. 287–292.

[19] J. Mineraud, O. Mazhelis, X. Su, and S. Tarkoma, “A gap analysis ofInternet-of-Things platforms,” Comput. Commun., vols. 89–90, no. 9,pp. 5–16, 2016.

[20] C. Perera, C. H. Liu, and S. Jayawardena, “The emerging Internet ofThings marketplace from an industrial perspective: A survey,” IEEETrans. Emerg. Topics Comput., vol. 3, no. 4, pp. 585–598, Dec. 2015.

[21] C. Perera, A. Zaslavsky, P. Christen, and D. Georgakopoulos, “Contextaware computing for the Internet of Things: A survey,” IEEE Commun.Surveys Tuts., vol. 16, no. 1, pp. 414–454, 1st Quart., 2014.

[22] A. Botta, W. de Donato, V. Persico, and A. Pescapé, “Integration ofcloud computing and Internet of Things: A survey,” Future Gener.Comput. Syst., vol. 56, no. 3, pp. 684–700, 2016.

[23] C. Bettini et al., “A survey of context modelling and reasoningtechniques,” Pervasive Mobile Comput., vol. 6, no. 2, pp. 161–180,2010.

[24] B. T. Korel and S. G. M. Koo, “A survey on context-aware sens-ing for body sensor networks,” Wireless Sensor Netw., vol. 2, no. 8,pp. 571–583, 2010.

[25] P. Makris, D. N. Skoutas, and C. Skianis, “A survey on context-awaremobile and wireless networking: On networking and computing envi-ronments’ integration,” IEEE Commun. Surveys Tuts., vol. 15, no. 1,pp. 362–386, 1st Quart., 2013.

[26] X. Li, M. Eckert, J.-F. Martinez, and G. Rubio, “Context aware mid-dleware architectures: Survey and challenges,” Sensors, vol. 15, no. 8,pp. 20570–20607, 2015.

[27] D. Gil, A. Ferrández, H. Mora-Mora, and J. Peral, “Internet of Things:A review of surveys based on context aware intelligent services,”Sensors, vol. 16, no. 7, p. 1069, 2016.

[28] V. Borges and W. Jeberson, “Survey of context information fusion forsensor networks based ubiquitous systems,” Comput. Sci. Inf. Technol.,vol. 2, no. 3, pp. 165–178, 2014.

[29] A. Saeed and T. Waheed, “An extensive survey of context-aware mid-dleware architectures,” in Proc. IEEE Int. Conf. Electro/Inf. Technol.,Normal, IL, USA, 2010, pp. 1–6.

[30] O. D. Lara and M. A. Labrador, “A survey on human activity recog-nition using wearable sensors,” IEEE Commun. Surveys Tuts., vol. 15,no. 3, pp. 1192–1209, 3rd Quart., 2013.

[31] C.-W. Tsai, C.-F. Lai, M.-C. Chiang, and L. T. Yang, “Data mining forInternet of Things: A survey,” IEEE Commun. Surveys Tuts., vol. 16,no. 1, pp. 77–97, 1st Quart., 2014.

[32] Y. Qin et al., “When things matter: A survey on data-centric Internetof Things,” J. Netw. Comput. Appl., vol. 64, no. 4, pp. 137–153, 2016.

[33] N. D. Lane et al., “A survey of mobile phone sensing,” IEEE Commun.Mag., vol. 48, no. 9, pp. 140–150, Sep. 2010.

[34] I. F. Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci, “Asurvey on sensor networks,” IEEE Commun. Mag., vol. 40, no. 8,pp. 102–114, Aug. 2002.

[35] L. Atzori, A. Iera, and G. Morabito, “From ‘smart objects’ to ‘socialobjects’: The next evolutionary step of the Internet of Things,” IEEECommun. Mag., vol. 52, no. 1, pp. 97–105, Jan. 2014.

[36] A. M. Ortiz, D. Hussein, S. Park, S. N. Han, and N. Crespi, “The clusterbetween Internet of Things and social networks: Review and researchchallenges,” IEEE Internet Things J., vol. 1, no. 3, pp. 206–215,Jun. 2014.

[37] M. Chen, S. W. Mao, and Y. H. Liu, “Big data: A survey,” MobileNetw. Appl., vol. 19, no. 2, pp. 171–209, 2014.

[38] S. Landset, T. M. Khoshgoftaar, A. N. Richter, and T. Hasanin, “Asurvey of open source tools for machine learning with big data in thehadoop ecosystem,” J. Big Data, vol. 2, no. 1, p. 24, 2015.

[39] Internet of Things Global Standards Initiative. (2015). Internet ofThings Global Standards Initiative. [Online]. Available: www.itu.int

[40] G. Santucci and S. Lange, “Internet of Things in 2020: A roadmapfor the future,” EC INFSO and EPoSS, Brussels, Belgium, WorkshopRep., 2008.

[41] J. B. B. Neto, T. H. Silva, R. M. Assunção, R. A. F. Mini, andA. A. F. Loureiro, “Sensing in the collaborative Internet of Things,”Sensors, vol. 15, no. 3, pp. 6607–6632, 2015.

[42] S. Rajaram, “Global markets and technologies for sensors,” BCC Res.,Wellesley, MA, USA, Tech. Rep. IAS006G, 2016. [Online]. Available:http://www.bccresearch.com/market-research/instrumentation-and-sensors/sensors-tech-markets-report-ias006g.html

[43] O. B. Sezer, S. Z. Can, and E. Dogdu, “Development of a smart homeontology and the implementation of a semantic sensor network simula-tor: An Internet of Things approach,” in Proc. Int. Conf. CollaborationTechnol. Syst., Atlanta, GA, USA, 2015, pp. 12–18.

[44] IoT Mind Map-Application Domains, Swedish Stand. Inst.,Stockholm, Sweden, accessed: Feb. 1, 2016. [Online].Available: http://www.sis.se/PageFiles/15118/IoT%20Mind%20Map-Application%20Domains.pdf

[45] D. Bandyopadhyay and J. Sen, “Internet of Things: Applications andchallenges in technology and standardization,” Wireless Pers. Commun.,vol. 58, no. 1, pp. 49–69, 2011.

[46] L. Atzori, A. Iera, and G. Morabito, “SIoT: Giving a social struc-ture to the Internet of Things,” IEEE Commun. Lett., vol. 15, no. 11,pp. 1193–1195, Nov. 2011.

[47] M. Chan, D. Estève, C. Escriba, and E. Campo, “A review ofsmart homes—Present state and future challenges,” Comput. MethodsPrograms Biomed., vol. 91, no. 1, pp. 55–81, 2008.

[48] V. Sai and M. H. Mickle, “Low power 8051-MISA-based remote exe-cution unit architecture for IoT and RFID applications,” Int. J. CircuitsArchit. Design, vol. 1, no. 1, pp. 4–19, 2013.

[49] V. Sai and M. H. Mickle, “Exploring energy efficient architectures inpassive wireless nodes for IoT applications,” IEEE Circuits Syst. Mag.,vol. 14, no. 2, pp. 48–54, May 2014.

[50] V. Sai and M. H. Mickle, “Low-power smart passive REU for indus-trial IoT applications,” Int. J. Circuits Archit. Design, vol. 2, no. 2,pp. 105–117, 2016.

[51] P. Zhang, C. M. Sadler, S. A. Lyon, and M. Martonosi, “Hardwaredesign experiences in ZebraNet,” in Proc. 2nd Int. Conf. EmbeddedNetw. Sensor Syst. (SenSys), Baltimore, MD, USA, 2004, pp. 227–238.

[52] J. Polastre, R. Szewczyk, and D. Culler, “Telos: Enabling ultra-lowpower wireless research,” in Proc. 4th Int. Symp. Inf. Process. SensorNetw., Boise, ID, USA, 2005, pp. 364–369.

[53] M. Amadeo et al., “Information-centric networking for the Internetof Things: Challenges and opportunities,” IEEE Netw., vol. 30, no. 2,pp. 92–100, Mar./Apr. 2016.

[54] M. Amadeo, C. Campolo, and A. Molinaro, “Information-centric net-working for connected vehicles: A survey and future perspectives,”IEEE Commun. Mag., vol. 54, no. 2, pp. 98–104, Feb. 2016.

[55] S. Alam, M. M. R. Chowdhury, and J. Noll, “SenaaS: An event-drivensensor virtualization approach for Internet of Things cloud,” in Proc.IEEE Int. Conf. Netw. Embedded Syst. Enterprise Appl., Suzhou, China,2010, pp. 1–6.

[56] P. Banerjee et al., “Everything as a service: Powering the newinformation economy,” Computer, vol. 44, no. 3, pp. 36–43, Mar. 2011.

[57] D. Zeng, S. Guo, and Z. Cheng, “The Web of Things: A survey,” J.Commun., vol. 6, no. 6, pp. 424–438, 2011.

[58] M. Mrissa, L. Médini, J.-P. Jamont, N. Le Sommer, and J. Laplace,“An avatar architecture for the Web of Things,” IEEE Internet Comput.,vol. 19, no. 2, pp. 30–38, Mar./Apr. 2015.

Page 24: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

24 IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018

[59] E. Yaacoub, A. Kadri, and A. Abu-Dayya, “Cooperative wireless sensornetworks for green Internet of Things,” in Proc. 8th ACM Symp. QoSSecurity Wireless Mobile Netw., Paphos, Cyprus, 2012, pp. 79–80.

[60] O. Vermesan et al., “Internet of Things strategic research roadmap,” inInternet of Things-Global Technological and Societal Trends, vol. 1.Aalborg, Denmark: Rivers, 2011, pp. 9–52.

[61] A. Arsénio et al., “Internet of Intelligent Things: Bringing artifi-cial intelligence into things and communication networks,” in Inter-Cooperative Collective Intelligence: Techniques and Applications,vol. 495. Berlin, Germany: Springer, 2014, pp. 1–37.

[62] J. O. Kephart and D. M. Chess, “The vision of autonomic computing,”Computer, vol. 36, no. 1, pp. 41–50, Jan. 2003.

[63] G. Kortuem, F. Kawsar, V. Sundramoorthy, and D. Fitton, “Smartobjects as building blocks for the Internet of Things,” IEEE InternetComput., vol. 14, no. 1, pp. 44–51, Jan./Feb. 2010.

[64] B. B. P. Rao, P. Saluia, N. Sharma, A. Mittal, and S. V. Sharma, “Cloudcomputing for Internet of Things & sensing based applications,” inProc. 6th Int. Conf. Sens. Technol., Kolkata, India, 2012, pp. 374–380.

[65] C. Perera, C. H. Liu, S. Jayawardena, and M. Chen, “A survey onInternet of Things from industrial market perspective,” IEEE Access,vol. 2, pp. 1660–1679, 2014.

[66] M. Abomhara and G. M. Køien, “Security and privacy in the Internetof Things: Current status and open issues,” in Proc. Int. Conf. PrivacySecurity Mobile Syst. (PRISMS), Aalborg, Denmark, May 2014,pp. 1–8.

[67] R. Mahmoud, T. Yousuf, F. Aloul, and I. Zualkernan, “Internet ofThings (IoT) security: Current status, challenges and prospective mea-sures,” in Proc. 10th Int. Conf. Internet Technol. Secured Trans.(ICITST), London, U.K., 2015, pp. 336–341.

[68] Z.-K. Zhang et al., “IoT security: Ongoing challenges and researchopportunities,” in Proc. IEEE 7th Int. Conf. Service Orient. Comput.Appl., Matsue, Japan, Nov. 2014, pp. 230–234.

[69] K. Zhao and L. Ge, “A survey on the Internet of Things security,” inProc. 9th Int. Conf. Comput. Intell. Security, Leshan, China, Dec. 2013,pp. 663–667.

[70] R. Abrahart and S. Linda, GeoComputation. Boca Raton, FL, USA:CRC Press, 2014.

[71] M. Weiser, “Some computer science issues in ubiquitous computing,”Commun. ACM, vol. 36, no. 7, pp. 75–84, 1993.

[72] S. Poslad, Ubiquitous Computing: Smart Devices, Environments andInteractions. Chichester, U.K.: Wiley, 2009.

[73] T. Kindberg and A. Fox, “System software for ubiquitous computing,”IEEE Pervasive Comput., vol. 1, no. 1, pp. 70–81, Jan./Mar. 2002.

[74] K. Lyytinen and Y. Yoo, “Issues and challenges in ubiquitous comput-ing,” Commun. ACM, vol. 45, no. 12, pp. 62–65, 2002.

[75] S. Singh, S. Puradkar, and Y. Lee, “Ubiquitous computing: Connectingpervasive computing through semantic Web,” Inf. Syst. e Bus. Manag.,vol. 4, no. 4, pp. 421–439, 2006.

[76] J. C. Augusto and P. McCullagh, “Ambient intelligence: Concepts andapplications,” Comput. Sci. Inf. Syst., vol. 4, no. 1, pp. 1–27, 2007.

[77] ISTAG, Strategic Orientations and Priorities for ISTin FP6, Office Official Publ. Eur. Communities,Luxembourg City, Luxembourg, 2002. [Online]. Available:http://cordis.europa.eu/pub/ist/docs/istag_kk4402456encfull.pdf

[78] K. Ducatel, M. Bogdanowicz, F. Scapolo, J. Leijten, andJ. C. Burgelman, Scenarios for Ambient Intelligence in 2010, OfficeOfficial Publ. Eur. Communities, Luxembourg City, Luxembourg,2001, pp. 3–8.

[79] C. Ramos, J. C. Augusto, and D. Shapiro, “Ambient intelligence—Thenext step for artificial intelligence,” IEEE Intell. Syst., vol. 23, no. 2,pp. 15–18, Mar./Apr. 2008.

[80] A. Zanella, N. Bui, A. Castellani, L. Vangelista, and M. Zorzi, “Internetof Things for smart cities,” IEEE Internet Things J., vol. 1, no. 1,pp. 22–32, Feb. 2014.

[81] A. Dohr, R. Modre-Opsrian, M. Drobics, D. Hayn, and G. Schreier,“The Internet of Things for ambient assisted living,” in Proc. 7thInt. Conf. Inf. Technol. New Gener., Las Vegas, NV, USA, 2010,pp. 804–809.

[82] J. Cubo, A. Nieto, and E. Pimentel, “A cloud-based Internet ofThings platform for ambient assisted living,” Sensors, vol. 14, no. 8,pp. 14070–14105, 2014.

[83] M. A. M. Vieira, C. N. Coelho, D. C. da Silva, and J. M. da Mata,“Survey on wireless sensor network devices,” in Proc. IEEE Conf.Emerg. Technol. Factory Autom., vol. 1. Lisbon, Portugal, 2003,pp. 537–544.

[84] J. Yick, B. Mukherjee, and D. Ghosal, “Wireless sensor networksurvey,” Comput. Netw., vol. 52, no. 12, pp. 2292–2330, 2008.

[85] M. Compton, C. Henson, L. Lefort, H. Neuhaus, and A. Sheth,“A survey of the semantic specification of sensors,” in Proc. 2nd Int.Conf. Semantic Sensor Netw., vol. 522, 2009, pp. 17–32.

[86] M. Compton “The SSN ontology of the W3C semantic sensor networkincubator group,” Web Semantics Sci. Services Agents World Wide Web,vol. 17, no. 12, pp. 25–32, 2012.

[87] A. Sheth, C. Henson, and S. S. Sahoo, “Semantic sensor Web,” IEEEInternet Comput., vol. 12, no. 4, pp. 78–83, Jul./Aug. 2008.

[88] L. E. Holmquist et al., “Smart-its friends: A technique for usersto easily establish connections between smart artefacts,” in Ubicomp2001: Ubiquitous Computing. Berlin, Germany: Springer, 2001,pp. 116–122.

[89] B. Ahlgren, C. Dannewitz, C. Imbrenda, D. Kutscher, and B. Ohlman,“A survey of information-centric networking,” IEEE Commun. Mag.,vol. 50, no. 7, pp. 26–36, Jul. 2012.

[90] M. Ojo, D. Adami, and S. Giordano, “A SDN-IoT architecture withNFV implementation,” in Proc. IEEE Globecom Workshops (GCWkshps), Washington, DC, USA, Dec. 2016, pp. 1–6.

[91] N. Bizanis and F. A. Kuipers, “SDN and virtualization solutions forthe Internet of Things: A survey,” IEEE Access, vol. 4, pp. 5591–5606,2016.

[92] Z. Qin, G. Denker, C. Giannelli, P. Bellavista, andN. Venkatasubramanian, “A software defined networking archi-tecture for the Internet-of-Things,” in Proc. IEEE Netw. Oper. Manag.Symp. (NOMS), Kraków, Poland, May 2014, pp. 1–9.

[93] I. Bedhief, M. Kassar, and T. Aguili, “SDN-based architecture chal-lenging the IoT heterogeneity,” in Proc. 3rd Smart Cloud Netw. Syst.(SCNS), Dubai, UAE, Dec. 2016, pp. 1–3.

[94] A. K. Dey and G. D. Abowd, “Towards a better understanding of con-text and context-awareness,” Comput. Syst., vol. 40, no. 3, pp. 304–307,1999.

[95] G. D. Abowd and E. D. Mynatt, “Charting past, present, and futureresearch in ubiquitous computing,” ACM Trans. Comput. HumanInteract., vol. 7, no. 1, pp. 29–58, 2000.

[96] L. Sanchez, J. Lanza, R. Olsen, M. Bauer, and M. Girod-Genet, “Ageneric context management framework for personal networking envi-ronments,” in Proc. 3rd Annu. Int. Conf. Mobile Ubiquitous Syst.Workshops, San Jose, CA, USA, 2006, pp. 1–8.

[97] J. Pascoe, “Adding generic contextual capabilities to wearable comput-ers,” in Proc. 2nd Int. Symp. Wearable Comput. Dig. Papers, Pittsburgh,PA, USA, 1998, pp. 92–99.

[98] T. Strang and C. Linnhoff-Popien, “A context modeling survey,” inProc. Graph. Models Workshop, 2004, pp. 1–8.

[99] P. Bellavista, A. Corradi, M. Fanelli, and L. Foschini, “A survey ofcontext data distribution for mobile ubiquitous systems,” ACM Comput.Surveys, vol. 44, no. 4, pp. 1–45, 2012.

[100] A. U. Frank, “Tiers of ontology and consistency constraints in geo-graphical information systems,” Int. J. Geograph. Inf. Sci., vol. 15,no. 7, pp. 667–678, 2001.

[101] P. Gray and D. Salber, “Modelling and using sensed context infor-mation in the design of interactive applications,” in EHCI ’01Proceedings of the 8th IFIP International Conference on Engineeringfor Human–Computer Interaction, London, U.K.: Springer-Verlag,2001, pp. 317–335.

[102] A. Ranganathan, J. Al-Muhtadi, S. Chetan, R. Campbell, andM. D. Mickunas, MiddleWhere: A Middleware for Location Awarenessin Ubiquitous Computing Applications. New York, NY, USA:Springer-Verlag, 2004.

[103] K. Henricksen, S. Livingstone, and J. Indulska, “Towards a hybridapproach to context modelling, reasoning and interoperation,” inProc. 1st Int. Workshop Adv. Context Model. Reason. Manag., 2004,pp. 54–61. [Online]. Available: http://henricksen.id.au/publications/UbiCompWorkshop04.pdf

[104] A. Agostini, C. Bettini, and D. Riboni, “Hybrid reasoning in the CAREmiddleware for context awareness,” Int. J. Web Eng. Technol., vol. 5,no. 1, pp. 3–23, 2009.

[105] D. Guan et al., “Devising a context selection-based reasoningengine for context-aware ubiquitous computing middleware,” inUbiquitous Intelligence and Computing. Berlin, Germany: Springer,2007, pp. 849–857.

[106] A. Bikakis, T. Patkos, G. Antoniou, and D. Plexousakis, “A sur-vey of semantics-based approaches for context reasoning in ambientintelligence,” in Constructing Ambient Intelligence. Berlin, Germany:Springer, 2007, pp. 14–23.

[107] P. Nurmi and P. Floréen, Reasoning in Context-Aware Systems, HelsinkiInst. Inf. Technol., Espoo, Finland, 2004, pp. 1–6.

Page 25: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

SEZER et al.: CONTEXT-AWARE COMPUTING, LEARNING, AND BIG DATA IN IoT: SURVEY 25

[108] B. Beamon and M. Kumar, “HyCoRE: Towards a generalized hierar-chical hybrid context reasoning engine,” in Proc. 8th IEEE Int. Conf.Pervasive Comput. Commun. Workshops, Mannheim, Germany, 2010,pp. 30–36.

[109] A. Ranganathan and R. H. Campbell, “A middleware for context-awareagents in ubiquitous computing environments,” in Middleware ’03Proceedings of the ACM/IFIP/USENIX 2003 International Conferenceon Middleware, Rio de Janeiro, Brazil, 2003, New York, NY, USA:Springer-Verlag, 2003, pp. 143–161.

[110] J. Mäntyjärvi and T. Seppänen, “Adapting applications in mobileterminals using fuzzy context information,” in Human ComputerInteraction With Mobile Devices. Berlin, Germany: Springer, 2002,pp. 95–107.

[111] A. Padovitz, S. W. Loke, and A. Zaslavsky, “The ECORA frame-work: A hybrid architecture for context-oriented pervasive computing,”Pervasive Mobile Comput., vol. 4, no. 2, pp. 182–215, 2008.

[112] K. Teymourian, O. Streibel, A. Paschke, R. Alnemr, and C. Meinel,“Towards semantic event-driven systems,” in Proc. 3rd Int. Conf. NewTechnol. Mobility Security, Cairo, Egypt, 2009, pp. 1–6.

[113] Z. Song, A. A. Cardenas, and R. Masuoka, “Semantic middleware forthe Internet of Things,” in Proc. Internet Things, Tokyo, Japan, 2010,pp. 1–8.

[114] A. Zafeiropoulos, N. Konstantinou, S. Arkoulis, D.-E. Spanos, andN. Mitrou, “A semantic-based architecture for sensor data fusion,”in Proc. 2nd Int. Conf. Mobile Ubiquitous Comput. Syst. ServicesTechnol., Valencia, Spain, 2008, pp. 116–121.

[115] A. Zafeiropoulos, D. Spanos, and S. Arkoulis, “Data managementin sensor networks using semantic Web technologies,” in DataManagement in Semantic Web. New York, NY, USA: Nova Sci., 2009.

[116] P. Liu and J. Zhang, “A context-aware application infrastructure withreasoning mechanism based on dempster-shafer evidence theory,” inProc. IEEE Veh. Technol. Conf., Singapore, 2008, pp. 2834–2838.

[117] D. Zhang, J. Cao, J. Zhou, and M. Guo, “Extended dempster-shafertheory in context reasoning for ubiquitous computing environments,”in Proc. Int. Conf. Comput. Sci. Eng., vol. 2. Vancouver, BC, Canada,2009, pp. 205–212.

[118] C. Keßler, M. Raubal, and C. Wosniok, “Semantic rules for context-aware geographical information retrieval,” in Smart Sensing andContext. EuroSSC 2009 (LNCS 5741). Berlin, Germany: Springer,2009, pp. 77–92.

[119] C. Choi, I. Park, S. J. Hyun, D. Lee, and D. H. Sim, “MiRE: A minimalrule engine for context-aware mobile devices,” in Proc. 3rd Int. Conf.Digit. Inf. Manag., London, U.K., 2008, pp. 172–177.

[120] C. Barbero, P. D. Zovo, and B. Gobbi, “A flexible context aware rea-soning approach for IoT applications,” in Proc. IEEE 12th Int. Conf.Mobile Data Manag., vol. 1. Luleå, Sweden, 2011, pp. 266–275.

[121] N. Konstantinou et al., “Priamos: A middleware architecture for real-time semantic annotation of context features,” in Proc. 3rd IET Int.Conf. Intell. Environ. (IE 07), Ulm, Germany, 2007, pp. 96–103.

[122] T. Terada et al., “Ubiquitous chip: A rule-based I/O control devicefor ubiquitous computing,” in Pervasive Computing. Pervasive 2004(LNCS 3001). Berlin, Germany: Springer, 2004, pp. 238–253.

[123] D. Riboni and C. Bettini, “Context-aware activity recognition througha combination of ontological and statistical reasoning,” in UbiquitousIntelligence and Computing. UIC 2009 (LNCS 5585). Berlin, Germany:Springer, 2009, pp. 39–53.

[124] S.-H. Huang, T.-T. Wu, H.-C. Chu, and G.-J. Hwang, “A decisiontree approach to conducting dynamic assessment in a context-awareubiquitous learning environment,” in Proc. 5th IEEE Int. Conf. WirelessMobile Ubiquitous Technol. Educ., Beijing, China, 2008, pp. 89–94.

[125] C. Doukas, I. Maglogiannis, P. Tragas, D. Liapis, and G. Yovanof,“Patient fall detection using support vector machines,” in ArtificialIntelligence and Innovations 2007: From Theory to Applications.Boston, MA, USA: Springer, 2007, pp. 147–156.

[126] H.-S. Park, K. Oh, and S.-B. Cho, “Bayesian network-based high-level context recognition for mobile context sharing in cyber-physicalsystem,” Int. J. Distrib. Sensor Netw., vol. 7, no. 1, pp. 1–10, 2011.

[127] O. Brdiczka, J. L. Crowley, and P. Reignier, “Learning situation modelsin a smart home,” IEEE Trans. Syst., Man, Cybern. B, Cybern., vol. 39,no. 1, pp. 56–63, Feb. 2009.

[128] T.-N. Lin and P.-C. Lin, “Performance comparison of indoor position-ing techniques based on location fingerprinting in wireless networks,”in Proc. Int. Conf. Wireless Netw. Commun. Mobile Comput., vol. 2,2005, pp. 1569–1574.

[129] K. Van Laerhoven, K. A. Aidoo, and S. Lowette, “Real-time analysis ofdata from many sensors with neural networks,” in Int. Symp. WearableComput. Dig. Papers, Zürich, Switzerland, 2001, pp. 115–122.

[130] R. Y. Shtykh and Q. Jin, “Capturing user contexts: Dynamic profil-ing for information seeking tasks,” in Proc. 3rd Int. Conf. Syst. Netw.Commun., Sliema, Malta, 2008, pp. 365–370.

[131] B. Chihani, “Enterprise context-awareness : Empowering serviceusers and developers. La contextualisation en entreprise : Mettreen avant utilisateurs et développeurs,” Ph.D. dissertation, Inst. Nat.Telecommun., Telecom Sudparis, Évry, France, 2014.

[132] A. Ranganathan and R. H. Campbell, “An infrastructure for context-awareness based on first order logic,” Pers. Ubiquitous Comput., vol. 7,no. 6, pp. 353–364, 2003.

[133] D. Preuveneers and Y. Berbers, “SAMURAI: A streaming multi-tenantcontext-management architecture for intelligent and scalable Internetof Things applications,” in Proc. Int. Conf. Intell. Environ., Shanghai,China, 2014, pp. 226–233.

[134] E. Serral, P. Valderas, and V. Pelechano, “Towards the model drivendevelopment of context-aware pervasive systems,” Pervasive MobileComput., vol. 6, no. 2, pp. 254–280, 2010.

[135] J. Hong, E.-H. Suh, J. Kim, and S. Kim, “Context-aware system forproactive personalized service based on context history,” Expert Syst.Appl., vol. 36, no. 4, pp. 7448–7457, 2009.

[136] H. Hagras et al., “Creating an ambient-intelligence environment usingembedded agents,” IEEE Intell. Syst., vol. 19, no. 6, pp. 12–20,Nov./Dec. 2004.

[137] D. Riboni and C. Bettini, “COSAR: Hybrid reasoning for context-aware activity recognition,” Pers. Ubiquitous Comput., vol. 15, no. 3,pp. 271–289, 2011.

[138] S. Jie and W. ZhaoHui, “Context reasoning technologies inubiquitous computing environment,” in Embedded and UbiquitousComputing. EUC 2006 (LNCS 4096). Berlin, Germany: Springer, 2006,pp. 1027–1036.

[139] A. M. Khan, Y.-K. Lee, S. Y. Lee, and T.-S. Kim, “A triaxialaccelerometer-based physical-activity recognition via augmented-signalfeatures and a hierarchical recognizer,” IEEE Trans. Inf. Technol.Biomed., vol. 14, no. 5, pp. 1166–1172, Sep. 2010.

[140] K. Altun and B. Barshan, “Human activity recognition using iner-tial/magnetic sensor units,” in Human Behavior Understanding. HBU2010 (LNCS 6219). Berlin, Germany: Springer, 2010, pp. 38–51.

[141] S. Saeedi, A. Moussa, and N. El-Sheimy, “Context-aware personalnavigation using embedded sensor fusion in smartphones,” Sensors,vol. 14, no. 4, pp. 5742–5767, 2014.

[142] J. Choi, D. Shin, and D. Shin, “Research and implementation ofthe context-aware middleware for controlling home appliances,” IEEETrans. Consum. Electron., vol. 51, no. 1, pp. 301–306, Feb. 2005.

[143] N. Mishra, C.-C. Lin, and H.-T. Chang, “A cognitive adopted frame-work for IoT big-data management and knowledge discovery prospec-tive,” Int. J. Distrib. Sensor Netw., vol. 11, no. 10, pp. 1–12, Jan. 2015.

[144] Y. LeCun, Y. Bengio, and G. Hinton, “Deep learning,” Nature, vol. 521,no. 7553, pp. 436–444, 2015.

[145] N. D. Lane, S. Bhattacharya, P. Georgiev, C. Forlivesi, and F. Kawsar,“An early resource characterization of deep learning on wearables,smartphones and Internet-of-Things devices,” in Proc. Int. WorkshopInternet Things Towards Appl., Seoul, South Korea, 2015, pp. 7–12.

[146] E. De Coninck et al., “Distributed neural networks for Internet ofThings: The big-little approach,” in Proc. 2nd Int. Summit InternetThings IoT Infrastruct. (IoT), Rome, Italy, Oct. 2016, pp. 484–492.

[147] X. Ma, H. Yu, Y. Wang, and Y. Wang, “Large-scale transportationnetwork congestion evolution prediction using deep learning theory,”PLoS ONE, vol. 10, no. 3, 2015, Art. no. e0119044.

[148] N. Zhang, H. Chen, X. Chen, and J. Chen, “Semantic framework ofInternet of Things for smart cities: Case studies,” Sensors, vol. 16,no. 9, p. 1501, 2016.

[149] M. A. Alsheikh, D. Niyato, S. Lin, H.-P. Tan, and Z. Han, “Mobilebig data analytics using deep learning and apache spark,” IEEE Netw.,vol. 30, no. 3, pp. 22–29, May/Jun. 2016.

[150] T. Plötz, N. Y. Hammerla, and P. Olivier, “Feature learning for activityrecognition in ubiquitous computing,” in Proc. Int. Joint Conf. Artif.Intell., Barcelona, Spain, 2011, pp. 1729–1734.

[151] A. Ferscha and F. Mattern, “Pervasive computing,” in Proc. 2nd Int.Conf. PERVASIVE, Vienna, Austria, 2004, pp. 1–17.

[152] E. M. Tapia et al., “Real-time recognition of physical activities and theirintensities using wireless accelerometers and a heart rate monitor,” inProc. 11th IEEE Int. Symp. Wearable Comput., Boston, MA, USA,Oct. 2007, pp. 1–4.

[153] Ó. D. Lara and M. A. Labrador, “A mobile platform for real-timehuman activity recognition,” in Proc. IEEE Consum. Commun. Netw.Conf., Las Vegas, NV, USA, 2012, pp. 667–671.

Page 26: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

26 IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018

[154] P. Korpipää, M. Koskinen, J. Peltola, S.-M. Mäkelä, and T. Seppänen,“Bayesian approach to sensor-based context awareness,” Pers.Ubiquitous Comput., vol. 7, no. 2, pp. 113–124, 2003.

[155] A. K. Ramakrishnan, D. Preuveneers, and Y. Berbers, “Enabling self-learning in dynamic and open IoT environments,” Procedia Comput.Sci., vol. 32, pp. 207–214, Dec. 2014.

[156] A. Krause, A. Smailagic, and D. P. Siewiorek, “Context-aware mobilecomputing: Learning context-dependent personal preferences from awearable sensor array,” IEEE Trans. Mobile Comput., vol. 5, no. 2,pp. 113–127, Feb. 2006.

[157] V. H. Bhide and S. Wagh, “i-learning IoT: An intelligent selflearning system for home automation using IoT,” in Proc. Int.Conf. Commun. Signal Process., Melmaruvathur, India, 2015,pp. 1763–1767.

[158] A. Aamodt and E. Plaza, “Case-based reasoning: Foundational issues,methodological variations, and system approaches,” AI Commun.,vol. 7, no. 1, pp. 39–59, 1994.

[159] T. Ma, Y.-D. Kim, Q. Ma, M. Tang, and W. Zhou, “Context-awareimplementation based on CBR for smart home,” in Proc. IEEE Int.Conf. Wireless Mobile Comput. Netw. Commun., vol. 4. Montreal, QC,Canada, 2005, pp. 112–115.

[160] L. C. Jatoba, U. Grossmann, C. Kunze, J. Ottenbacher, and W. Stork,“Context-aware mobile health monitoring: Evaluation of different pat-tern recognition methods for classification of physical activity,” inProc. 30th Annu. Int. Conf. IEEE Eng. Med. Biol. Soc., Vancouver,BC, Canada, 2008, pp. 5250–5253.

[161] M. Ermes, J. Parkka, and L. Cluitmans, “Advancing from offline toonline activity recognition with wearable sensors,” in Proc. 30th Annu.Int. Conf. IEEE Eng. Med. Biol. Soc., Vancouver, BC, Canada, 2008,pp. 4451–4454.

[162] M. C. Huebscher and J. A. McCann, “An adaptive middlewareframework for context-aware applications,” Pers. Ubiquitous Comput.,vol. 10, no. 1, pp. 12–20, 2006.

[163] H. E. Byun and K. Cheverst, “Utilizing context history to providedynamic adaptations,” Appl. Artif. Intell., vol. 18, no. 6, pp. 533–548,2004.

[164] O. Brdiczka, P. Reignier, and J. L. Crowley, “Supervised learning of anabstract context model for an intelligent environment,” in Proc. JointConf. Smart Objects Ambient Intell. Innov. Context Aware ServicesUsages Technol., Grenoble, France, 2005, pp. 259–264.

[165] Y. Kodratoff, Introduction to Machine Learning. Cambridge, U.K.: MITPress, 2014.

[166] T. Anagnostopoulos, C. Anagnostopoulos, S. Hadjiefthymiades,M. Kyriakakos, and A. Kalousis, “Predicting the location of mobileusers,” in Proc. Int. Conf. Pervasive Services, London, U.K., 2009,pp. 65–72.

[167] N. Ravi, N. Dandekar, P. Mysore, and M. L. Littman, “Activity recog-nition from accelerometer data,” in Proc. AAAI, vol. 5. Pittsburgh, PA,USA, 2005, pp. 1541–1546.

[168] A. Mannini and A. M. Sabatini, “Machine learning methods for classi-fying human physical activity from on-body accelerometers,” Sensors,vol. 10, no. 2, pp. 1154–1175, 2010.

[169] N. Oliver, A. Garg, and E. Horvitz, “Layered representations forlearning and inferring office activity from multiple sensory chan-nels,” Comput. Vis. Image Understand., vol. 96, no. 2, pp. 163–180,2004.

[170] Y. Chen, J. Zhou, and M. Guo, “A context-aware search system forInternet of Things based on hierarchical context model,” Telecommun.Syst., vol. 62, no. 1, pp. 77–91, 2016.

[171] Z.-Y. He and L.-W. Jin, “Activity recognition from acceleration datausing AR model representation and SVM,” in Proc. Int. Conf. Mach.Learn. Cybern., vol. 4. Kunming, China, 2008, pp. 2245–2250.

[172] M. Kranz, R. B. Rusu, A. Maldonado, M. Beetz, and A. Schmidt,“A player/stage system for context-aware intelligent environments,” inProc. UbiSys, vol. 6. Orange, CA, USA, 2006, pp. 17–21.

[173] M. A. Khan, A. Khan, M. N. Khan, and S. Anwar, “A novel learningmethod to classify data streams in the Internet of Things,” in Proc.Nat. Softw. Eng. Conf., Rawalpindi, Pakistan, 2014, pp. 61–66.

[174] J. Schmitt, M. Hollick, C. Roos, and R. Steinmetz, “Adapting the usercontext in realtime: Tailoring online machine learning algorithms toambient computing,” Mobile Netw. Appl., vol. 13, no. 6, pp. 583–598,2008.

[175] S. Sasidharan, A. Somov, A. R. Biswas, and R. Giaffreda, “Cognitivemanagement framework for Internet of Things—A prototype imple-mentation,” in Proc. IEEE World Forum Internet Things (WF IoT),Seoul, South Korea, 2014, pp. 538–543.

[176] K. Van Laerhoven, “Combining the self-organizing map and k-meansclustering for on-line classification of sensor data,” in Artificial NeuralNetworks—ICANN (LNCS 2130). Berlin, Germany: Springer, 2001,pp. 464–469.

[177] K. Van Laerhoven and K. Aidoo, “Teaching context to applications,”Pers. Ubiquitous Comput., vol. 5, no. 1, pp. 46–49, 2001.

[178] R. M. Mayrhofer, H. Radi, and A. Ferscha, “Recognizing and predict-ing context by learning from user behavior,” in Proc. Int. Conf. Adv.Mobile Multimedia, vol. 171, 2003, pp. 25–35.

[179] L. Guo, “Using Apriori to mine IoT frequent structures on computecloud,” J. Inf. Comput. Sci., vol. 9, no. 3, pp. 657–665, 2012.

[180] Y. Chen, G. M. Lee, L. Shu, and N. Crespi, “IndustrialInternet of Things-based collaborative sensing intelligence: Frameworkand research challenges,” Sensors, vol. 16, no. 2, p. 215,2016.

[181] K.-L. A. Yau, P. Komisarczuk, and P. D. Teal, “Reinforcement learningfor context awareness and intelligence in wireless networks: Review,new features and open issues,” J. Netw. Comput. Appl., vol. 35, no. 1,pp. 253–267, 2012.

[182] R. S. Sutton and A. G. Barto, “Reinforcement learning: An intro-duction,” IEEE Trans. Neural Netw., vol. 9, no. 5, p. 1054,Sep. 1998.

[183] M. Hilbert, “Big data for development: A review of promisesand challenges,” Develop. Policy Rev., vol. 34, no. 1, pp. 135–174,2016.

[184] S. R. Jeffery, M. Garofalakis, and M. J. Franklin, “Adaptive cleaningfor RFID data streams,” in Proc. 32nd Int. Conf. Very Large DataBases, Seoul, South Korea, 2006, pp. 163–174.

[185] G. Liao, J. Li, L. Chen, and C. Wan, “KLEAP: An efficientcleaning method to remove cross-reads in RFID streams,” inProc. 20th ACM Int. Conf. Inf. Knowl. Manag., Glasgow, U.K., 2011,pp. 2209–2212.

[186] P. D. Kaur, “A survey on big data storage strategies,” in Proc.Int. Conf. Green Comput. Internet Things, Noida, India, Oct. 2015,pp. 280–284.

[187] S. Gilbert and N. Lynch, “Brewer’s conjecture and the feasibility ofconsistent, available, partition-tolerant Web services,” ACM SIGACTNews, vol. 33, no. 2, pp. 51–59, 2002.

[188] K. Shvachko, H. Kuang, S. Radia, and R. Chansler, “The hadoopdistributed file system,” in Proc. IEEE 26th Symp. Mass Stor. Syst.Technol., 2010, pp. 1–10.

[189] R. Chaiken et al., “SCOPE: Easy and efficient parallel process-ing of massive data sets,” Proc. VLDB Endowment, vol. 1, no. 2,pp. 1265–1276, 2008.

[190] D. Beaver, S. Kumar, H. C. Li, J. Sobel, and P. Vajgel, “Finding aneedle in haystack: Facebook’s photo storage,” in Proc. OSDI, vol. 10.Vancouver, BC, Canada, Oct. 2010, pp. 1–8.

[191] R. Cattell, “Scalable SQL and NoSQL data stores,” ACM SIGMODRec., vol. 39, no. 4, pp. 12–27, 2010.

[192] G. DeCandia et al., “Dynamo: Amazon’s highly available key-valuestore,” ACM SIGOPS Oper. Syst. Rev., vol. 41, no. 6, pp. 205–220,2007.

[193] R. Sumbaly et al., “Serving large-scale batch computed data withproject voldemort,” in Proc. 10th USENIX Conf. File Stor. Technol.,San Jose, CA, USA, 2012, p. 18.

[194] F. Chang et al., “BigTable: A distributed storage system for structureddata,” ACM Trans. Comput. Syst., vol. 26, no. 2, pp. 1–26, 2008.

[195] A. Lakshman and P. Malik, “Cassandra: A decentralized structured stor-age system,” ACM SIGOPS Oper. Syst. Rev., vol. 44, no. 2, pp. 35–40,2010.

[196] M. Stonebraker et al., “C-store: A column-oriented DBMS,” inProc. 31st Int. Conf. Very Large Data Bases, Trondheim, Norway, 2005,pp. 553–564.

[197] D. Tracey and C. Sreenan, “A holistic architecture for the Internetof Things, sensing services and big data,” in Proc. 13th IEEE/ACMInt. Symp. Cluster Cloud Grid Comput., Delft, The Netherlands, 2013,pp. 546–553.

[198] K. Chodorow, MongoDB: The Definitive Guide: Powerful and ScalableData Storage. Sebastopol, CA, USA: O’Reilly Media, 2013.

[199] J. Murty, Programming Amazon Web Services: S3, EC2, SQS, FPS,and SimpleDB. Sebastopol, CA, USA: O’Reilly, 2008.

[200] J. Anderson, J. Lehnardt, and N. Slater, CouchDB: The DefinitiveGuide. Sebastopol, CA, USA: O’Reilly, 2010.

[201] C. Cecchinel, M. Jimenez, S. Mosser, and M. Riveill, “An architec-ture to support the collection of big data in the Internet of Things,”in Proc. IEEE World Congr. Services, Anchorage, AK, USA, 2014,pp. 442–449.

Page 27: Context-Aware Computing, Learning, and Big Data in …csweb.cs.wfu.edu/~pauca/csc332/CASpapers/Context-Aware...IEEE INTERNET OF THINGS JOURNAL, VOL. 5, NO. 1, FEBRUARY 2018 1 Context-Aware

SEZER et al.: CONTEXT-AWARE COMPUTING, LEARNING, AND BIG DATA IN IoT: SURVEY 27

[202] Y. Yang, L. Wang, D. K. Noh, H. K. Le, and T. F. Abdelzaher,“SolarStore: Enhancing data reliability in solar-powered storage-centricsensor networks,” in Proc. 7th Int. Conf. Mobile Syst. Appl. Services(Mobisys), Kraków, Poland, 2009, pp. 333–346.

[203] N. Tsiftes and A. Dunkels, “A database in every sensor,” in Proc. 9thACM Conf. Embedded Netw. Sensor Syst., Seattle, WA, USA, 2011,pp. 316–332.

[204] S. Nath, “Energy efficient sensor data logging with amnesic flash stor-age,” in Proc. Int. Conf. Inf. Process. Sensor Netw., San Francisco, CA,USA, 2009, pp. 157–168.

[205] J. Dean and S. Ghemawat, “MapReduce: Simplified data processingon large clusters,” Commun. ACM, vol. 51, no. 1, pp. 107–113, 2008.

[206] T. White, Hadoop: The Definitive Guide, vol. 54. Sebastopol, CA,USA: O’Reilly, 2012.

[207] M. Isard, M. Budiu, Y. Yu, A. Birrell, and D. Fetterly, “Dryad:Distributed data-parallel programs from sequential building blocks,”in Proc. 2nd ACM SIGOPS/EuroSys Eur. Conf. Comput. Syst., vol. 41.Lisbon, Portugal, 2007, pp. 59–72.

[208] G. Malewicz et al., “Pregel: A system for large-scale graph process-ing,” in Proc. Int. Conf. Manag. Data, Indianapolis, IN, USA, 2010,pp. 135–146.

[209] I. Alagiannis, S. Idreos, and A. Ailamaki, “H2O: A hands-free adap-tive store,” in Proc. ACM SIGMOD Int. Conf. Manag. Data, 2014,pp. 1103–1114.

[210] S. Owen, R. Anil, T. Dunning, and E. Friedman, Mahout in Action.Greenwich, CT, USA: Manning, 2011.

[211] M. P. Consens et al., “Graphical inference for infovis,” in Proc. Int.Conf. Inf. Visual., vol. 16, 2010, pp. 973–979.

[212] G. De Francisci Morales and A. Bifet, “SAMOA: Scalable advancedmassive online analysis,” J. Mach. Learn. Res., vol. 16, no. 1,pp. 149–153, 2015.

[213] G. Holmes, A. Donkin, and I. H. Witten, “WEKA: A machine learningworkbench,” in Proc. ANZIIS Aust. New Zealand Intell. Inf. Syst. Conf.,Brisbane, QLD, Australia, 1994, pp. 357–361.

[214] M. M. Najafabadi et al., “Deep learning applications and challengesin big data analytics,” J. Big Data, vol. 2, no. 1, p. 1, 2015.

[215] X.-W. Chen and X. Lin, “Big data deep learning: Challenges andperspectives,” IEEE Access, vol. 2, pp. 514–525, 2014.

[216] A. Cuzzocrea, “Privacy and security of big data: Current chal-lenges and future research perspectives,” in Proc. 1st Int.Workshop Privacy Secuirty Big Data, Shanghai, China, 2014,pp. 45–47.

[217] O. B. Sezer, E. Dogdu, M. Ozbayoglu, and A. Onal, “An extendedIoT framework with semantics, big data, and analytics,” in Proc.IEEE Int. Conf. Big Data (Big Data), Washington, DC, USA, 2016,pp. 1849–1856.

[218] A. Onal, O. B. Sezer, E. Dogdu, and M. Ozbayoglu, “Weather dataanalysis and sensor fault detection using an extended IoT frame-work with semantics, big data, and machine learning,” in Proc.IEEE Int. Conf. Big Data (Big Data), Boston, MA, USA, 2017,pp. 1–8.

Omer Berat Sezer received the B.S. and M.S.degrees in electrical engineering from METU,Ankara, Turkey, in 2009 and 2013, respectively, withan emphasis on telecommunications and comput-ers. He is currently pursuing the Ph.D. degree incomputer engineering at the TOBB University ofEconomics and Technology, Ankara.

He is also a Senior Researcher with TUBITAK—Space Technologies Research Institute, Ankara. Hiscurrent research interests include machine learning,deep learning, Internet of Things, big data, and timeseries data analytics.

Erdogan Dogdu received the M.S. and Ph.D.degrees in computer science from Case WesternReserve University, Cleveland, OH, USA.

He is a Professor of computer science withthe Department of Computer Engineering, CankayaUniversity, Ankara, Turkey, where he is also theDirector of the Big Data Analysis Laboratory. Hehas authored or co-authored over 60 peer-reviewedinternational conference and journal papers, andtwo books. His current research interests includedatabase systems, semantic Web, Web informationsystems, and big data analytics.

Ahmet Murat Ozbayoglu received the Graduationdegree from the Department of ElectricalEngineering, METU, Ankara, Turkey, in 1991,with an emphasis on telecommunications andcomputers, and the M.S. and Ph.D. degrees insystems engineering from the Missouri Universityof Science and Technology, Rolla, MO, USA, in1993 and 1996, respectively.

He was a Product Development Engineer and aConsultant with Beyond Inc., St. Peters, MO, USA.In 2001, he joined MEMC Electronic Materials

Inc., Maryland Heights, MO, USA, as a Software Project Engineer, aProgrammer, and an Analyst. In 2005, he joined the Department of ComputerEngineering, TOBB University of Economics and Technology, Ankara. Hiscurrent research interests include machine learning, pattern recognition, bigdata, computational intelligence, and machine vision.