outlet: outsourcing wearable computing to the ambient ...zhenjili/2018-ieeeaccess-outlet.pdf · l....

12
Received January 20, 2018, accepted March 6, 2018, date of publication March 12, 2018, date of current version April 23, 2018. Digital Object Identifier 10.1109/ACCESS.2018.2814215 Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing Edge LIN TAO 1,2 , ZHENJIANG LI 2 , (Member, IEEE), AND LIBING WU 1 1 School of Computer Science, Wuhan University, Wuhan 430072, China 2 Department of Computer Science, City University of Hong Kong, Hong Kong Corresponding authors: Zhenjiang Li ([email protected]) and Libing Wu ([email protected]) This work was supported in part by ECS grant from Research Grants Council of Hong Kong under Project CityU 21203516, in part by GRF grant from Research Grants Council of Hong Kong under Project CityU 11217817, in part by the National Natural Science Foundation of China under Grant 61472287and Grant 61772377, and in part by the Natural Science Foundation of Hubei Province of China under Grant 2015CFA068 and Grant 2017CFA007. ABSTRACT Wearable devices, e.g., smart glass and watch, could achieve fine-grained human-centric sensing nowadays, but still lack sufficient capacities to execute sophisticated data processing algorithms. This paper presents Outlet to explore the feasibility to leverage the available computing resources from user’s ambience, e.g., from nearby smart phones, tablets, computers, Wi-Fi APs, and so on, to form a mobile computing edge. We can then outsource wearable computing tasks to this ambient edge to locally digest the sensory data for prompt user feedback and reaction, as it is perfectly located in user’s vicinity. The Outlet design avoids the traditional offloading to the remote clouds, whose performance may highly depend on the high-speed Internet connectivity and availability. To enable the Outlet design, we identify three major challenges: context dependence, scattered resources, and resource dynamics, and propose a series of key techniques to address each of them. To examine Outlet’s performance, we conduct extensive trace-driven evaluations and the results indicate promising performance achieved by Outlet, e.g., mostly within 97.6% to 99.5% closeness of the optimal performance and always outperforming the baseline approach under various system settings. INDEX TERMS Edge computing, wearable sensing, mobile computing, task outsourcing, offloading. I. INTRODUCTION The past few years witnesses the great prevalence of wear- able devices, e.g., smart glasses, smart watches, wrist bands, etc., for a variety of useful application designs. For instance, the camera on Google glass can capture user’s first-person view. Further integrated with advanced sensing techniques, e.g., object and context recognitions [6], cognitive assis- tance service can be provided for the patients of traumatic brain injury [13] or facial paralysis [35]. For the smart watches or bands, their motion sensors can be used for pre- cisely tracking user’s gestures. This enables the monitoring of daily activities, such as smoking [32], [40], falling down [18], workout [3], etc., and even user’s fine-grained motions [12] and attentions [21]. In summary, benefiting from power- ful sensors, wearable devices have been widely used for e-health [36], augmented reality [23], [38], shopping [15] and many other daily aspects. One core design requirement for above wearable applica- tions is the ability to process a large volume of sensory data, e.g., videos, images, audios, motion data, etc., such that the desired ‘‘information’’ can be extracted timely to satisfy the application’s need. For example, after the capture of objects by the camera of Google glass, a patient, assisted by the cog- nitive assistance service, should see the recognition result to guide her consequent actions in the millisecond level without an obvious perceptual lag [13]. However, the computational complexity of sophisticated data processing algorithms are usually high, e.g., object and context recognition, motion tracking, etc., while wearable devices have limited CPU resources and capacities merely. As a result, it is infeasible for wearables to afford such expensive computations locally. In the literature, existing studies propose to outsource extensive computation tasks to the remote cloud [24], [36], but the system performance will highly depend on the high- speed Internet connectivity and availability. Once the Inter- net connectivity quality fluctuates, e.g., the measurement studies [10] already observe that this commonly occurs for remote clouds, the system performance will be remarkably impacted. In addition, the free Internet connection is not always available, which will incur limited service coverage 18408 2169-3536 2018 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. VOLUME 6, 2018

Upload: others

Post on 22-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Outlet: Outsourcing Wearable Computing to the Ambient ...zhenjili/2018-IEEEAccess-Outlet.pdf · L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing

Received January 20, 2018, accepted March 6, 2018, date of publication March 12, 2018, date of current version April 23, 2018.

Digital Object Identifier 10.1109/ACCESS.2018.2814215

Outlet: Outsourcing Wearable Computing tothe Ambient Mobile Computing EdgeLIN TAO 1,2, ZHENJIANG LI2, (Member, IEEE), AND LIBING WU11School of Computer Science, Wuhan University, Wuhan 430072, China2Department of Computer Science, City University of Hong Kong, Hong Kong

Corresponding authors: Zhenjiang Li ([email protected]) and Libing Wu ([email protected])

This work was supported in part by ECS grant from Research Grants Council of Hong Kong under Project CityU 21203516, in part byGRF grant from Research Grants Council of Hong Kong under Project CityU 11217817, in part by the National Natural ScienceFoundation of China under Grant 61472287and Grant 61772377, and in part by the Natural Science Foundation of HubeiProvince of China under Grant 2015CFA068 and Grant 2017CFA007.

ABSTRACT Wearable devices, e.g., smart glass and watch, could achieve fine-grained human-centricsensing nowadays, but still lack sufficient capacities to execute sophisticated data processing algorithms.This paper presents Outlet to explore the feasibility to leverage the available computing resources fromuser’s ambience, e.g., from nearby smart phones, tablets, computers, Wi-Fi APs, and so on, to form a mobilecomputing edge. We can then outsource wearable computing tasks to this ambient edge to locally digest thesensory data for prompt user feedback and reaction, as it is perfectly located in user’s vicinity. The Outletdesign avoids the traditional offloading to the remote clouds, whose performance may highly depend onthe high-speed Internet connectivity and availability. To enable the Outlet design, we identify three majorchallenges: context dependence, scattered resources, and resource dynamics, and propose a series of keytechniques to address each of them. To examine Outlet’s performance, we conduct extensive trace-drivenevaluations and the results indicate promising performance achieved by Outlet, e.g.,mostly within 97.6% to99.5% closeness of the optimal performance and always outperforming the baseline approach under varioussystem settings.

INDEX TERMS Edge computing, wearable sensing, mobile computing, task outsourcing, offloading.

I. INTRODUCTIONThe past few years witnesses the great prevalence of wear-able devices, e.g., smart glasses, smart watches, wrist bands,etc., for a variety of useful application designs. For instance,the camera on Google glass can capture user’s first-personview. Further integrated with advanced sensing techniques,e.g., object and context recognitions [6], cognitive assis-tance service can be provided for the patients of traumaticbrain injury [13] or facial paralysis [35]. For the smartwatches or bands, their motion sensors can be used for pre-cisely tracking user’s gestures. This enables the monitoring ofdaily activities, such as smoking [32], [40], falling down [18],workout [3], etc., and even user’s fine-grained motions [12]and attentions [21]. In summary, benefiting from power-ful sensors, wearable devices have been widely used fore-health [36], augmented reality [23], [38], shopping [15] andmany other daily aspects.

One core design requirement for above wearable applica-tions is the ability to process a large volume of sensory data,e.g., videos, images, audios, motion data, etc., such that the

desired ‘‘information’’ can be extracted timely to satisfy theapplication’s need. For example, after the capture of objectsby the camera of Google glass, a patient, assisted by the cog-nitive assistance service, should see the recognition result toguide her consequent actions in the millisecond level withoutan obvious perceptual lag [13]. However, the computationalcomplexity of sophisticated data processing algorithms areusually high, e.g., object and context recognition, motiontracking, etc., while wearable devices have limited CPUresources and capacities merely. As a result, it is infeasiblefor wearables to afford such expensive computations locally.

In the literature, existing studies propose to outsourceextensive computation tasks to the remote cloud [24], [36],but the system performance will highly depend on the high-speed Internet connectivity and availability. Once the Inter-net connectivity quality fluctuates, e.g., the measurementstudies [10] already observe that this commonly occurs forremote clouds, the system performance will be remarkablyimpacted. In addition, the free Internet connection is notalways available, which will incur limited service coverage

184082169-3536 2018 IEEE. Translations and content mining are permitted for academic research only.

Personal use is also permitted, but republication/redistribution requires IEEE permission.See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

VOLUME 6, 2018

Page 2: Outlet: Outsourcing Wearable Computing to the Ambient ...zhenjili/2018-IEEEAccess-Outlet.pdf · L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing

L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing Edge

of the system design. Although there are some pervasiveInternet connectivity services, e.g., 4G or LTE, the resultingsystem execution costs will be too high for the practical usagewith a large volume of sensing data to be outsourced andprocessed [17].

To cope with such limitations, we present Outlet in thispaper to outsource wearable computing to the ambient mobileedge, by excising the emerging cloudlet paradigm [29],e.g., installing a lightweight cloud closer to the user. However,instead of deploying dedicated cloudlet servers surroundingusers [13], our design is inspired by the following obser-vation. Nowadays, we can easily observe amply computingresources around us, e.g., smart phones, tablets, laptops,Wi-Fi APs, etc. In fact, they already form a side sensornetwork embedded in the environment with powerful com-puting and communication capabilities, and these availableresources are perfectly located in user’s vicinity. This thusmotivate us to outsource wearable’s computation tasks tothem, and further leverage their usable computing resourcesto form a mobile computing edge to promptly digest thesensory data for prompt user feedback and reaction, and leaveremote clouds as the last resort for backup merely. However,translating this idea to a practical system design entails thefollowing challenges:

1)Context dependence. As the wearable computing mainlysenses human-related activities, the task processing becomesdeeply coupled with user’s mobility during the outsourcing.When the user is stable, we can decrease the outsourcingfrequency, which essentially extends the task completiondeadline; Otherwise, tasks need to be outsourced urgently.Although this rationale is clear, how to capture the system’send performancew.r.t. user’smobility, so that a context-awareoutsourcing can be achieved, is still unknown yet.

2) Scattered resources. Unlike a centralized cloud, devicesin the ambient computing edge are severely scattered, theirresources, e.g., CPU, memory and energy, are highly diver-sified, and these devices may also belong to different users.In such a distributed infrastructure, how to effectively moti-vate each device to contribute their resources to the com-puting edge is essential. In addition, how to further utilizethe harvested usable resources to prompt the system overallperformance is also another crucial issue.

3) Resource dynamics. Also due to the distributed nature,the mobile computing edge may experience resource dynam-ics, e.g., users, together with their associated devices, couldjoin and leave the system dynamically, which will impactthe resource provision and consumption. The direct conse-quence is that not all the users are ensured to achieve theirdesired system performance, e.g., resources become insuf-ficient. We thus also need to handle such dynamics in thesystem design.

To address these challenges in Outlet, we first leveragemotion sensors on wearables, e.g., accelerometers and gyro-scopes, and also the visual hint from videos, e.g., inter-framesimilarity, to classify user’s motions into different mobilitylevels. This context information is further linked to system’s

end performance experienced by users through our proposedUser Experience (UE) metric, which considers both the taskcompletion quality (e.g., the object recognition accuracy),and the service continuity (e.g., the outsourcing frequency).To effectively motivate devices to contribute their resourcesto the computing edge, we leverage the aggregated resourcecontributions in the past from each user’s devices to prioritizeuser’s UE metric, e.g., more contributions lead to a higherpriority.We then mathematically formulate the task outsourc-ing problem by maximizing users’ overall UEs, and proposea practical solution to efficiently schedule the outsourcedtasks to proper resource suppliers in the computing edge.Finally, we further extend our solution to turn the achiev-able performance by varying the outsourced data (e.g., videoframes) fidelity to match the resource supplies from the com-puting edge. The resource dynamics hence can be effectivelyhandled.

To examine the effectiveness of the Outlet design, we takethe first-person video outsourcing from the cognitive assis-tance applications [13] as a main instrument to elaborate ourdesign. In such applications, users wear the smart glass andthe captured first-person video is processed by the ambientmobile edge in time for object or context recognitions. Therecognized results could provide convenient augmented real-ity services for common users, or the daily activity guidancefor patients with traumatic brain injury or facial paralysis.We conduct extensive trace-driven experiments. The resultsshow that Outlet could achieve very close performance tothe optimal solution, while it incurs lightweight computationoverhead merely. In summary, the contributions of this papercan be summarized as follows.• Explore the feasibility to leverage ambient but scatteredmobile resources to form a mobile computing edge forthe wearable computing task processing, with contextdependence, scattered resources and resource dynamicsthree main challenges.

• Propose a series of key techniques to address these chal-lenges by designing a user experience oriented modelto measure the outsourcing quality with user mobilityand outsourcing rate into consideration, formulating theoutsourcing problem and proposing efficient solutions.

• Conduct extensive trace-driven experiments to eval-uate the performance of Outlet. The result indicatepromising performance achieved by Outlet, e.g., mostlywithin 97.6% to 99.5% of the optimal performance andalways outperforming baseline approach under varioussettings.

The rest of the paper is organized as follows. We presenttheUE metric design in Section II, formulate the outsourcingproblem and propose our solution in Section III. Evaluationresults are presented in Section IV. We review related work inSection V and conclude in Section VI.

II. CONTEXT-AWARE USER EXPERIENCEIn this section, we introduce the user experience metric (UE)to describe the system end performance with respect to the

VOLUME 6, 2018 18409

Page 3: Outlet: Outsourcing Wearable Computing to the Ambient ...zhenjili/2018-IEEEAccess-Outlet.pdf · L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing

L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing Edge

demand of ambient computing resources, based on which weelaborate the Outlet design in Section III.

A. UE OVERVIEWWe consider two crucial aspects in the UE metric definition:1) the accuracy to complete the outsourced task, and 2) theoutsourcing service continuity.

For each wearable computation task, e.g., object recogni-tion [20], activity detection [9], etc., the accuracy for com-pleting a task mainly depends on the fidelity of the sensingdata to be outsourced, e.g., resolutions of videos, images andmotion data. It can be quite reliable to recognize an object,such as a building, from a high-quality 1080p image. Thedrawback, of course, is the increased overhead and latencyfor both transmitting and processing the sensing data. As aresult, we adopt A(f ) to represent such a relation, whereA(·) and f denote accuracy and fidelity, respectively.On the other hand, the sensing data fidelity f , together with

the usable processing capability from the ambient computingedge, further determine the task outsourcing rate r , e.g.,r pieces of sensing data (e.g., video frames or motion datasegments) can be outsourced for processing within one timeunit. A higher rate r indicates a shorter latency betweentwo consecutively processed tasks, which naturally leads to abetter outsourcing service continuity C(r). Moreover, user’sexperience on C(r) also depends on user’s mobility level m.For example, if the user is static, even a longer latency torefresh the recognized objects is acceptable, because thescene captured by camera is stable as well. As a result,the service continuity on user’s experience can be expressedas C(r,m).In general, both higher accuracy A(f ) and larger continuity

C(r,m) values lead to a better service quality experienced byuser. We thus introduce the UE metric in Outlet as follows:

UE = w× A(f )+ (1− w)× C(r,m), (1)

where w is a weighting factor 0 ≤ w ≤ 1. Eq. (1) statesUE’s general expression. In the next two subsections, we takethe first-person video outsourcing from cognitive assistanceapplications as an concrete instrument to instrument the A(f )and C(r,m) calculations.

B. ACCURACY A(f )The first-person video frames in cognitive assistance aremainly used for object or context recognitions. The per-formance can be evaluated using four parameters in theliterature:

• The recognized object truly belongs to or does notbelong to a labeled class, which are denoted as truthpositive (TP) or truth negative (TN ), respectively.

• False positive (FP): an object is recognized as one classwhen it is not, and false negative (FN ): an object shouldbelong to one class but it is not recognized so.

TABLE 1. Fidelity vs. accuracy.

With above four parameters, a widely adopted accuracycriterion [2] from the information retrieval field is:

Accuracy(f ) =TP(f )+ TN (f )

TP(f )+ TN (f )+ FP(f )+ FN (f ), (2)

where f is the fidelity of the video frame. For object or contextrecognition algorithms, we can obtain the four parameters foreach recognition target under different input fidelities (eitherfrom the algorithm’s developer or from our own measure).For the ease of constructing or updating such a parametertable, without manually labeling the ground truth, we treat theaccuracy obtained from the highest input fidelity, e.g., 1080p,as the benchmark (Accuracy0), and express the accuracy foreach fidelity f , where f ∈ {360p, 480p, 720p, 1080p}, in arelative manner:

A(f ) =Accuracy(f )Accuracy0

. (3)

We note that A(f ) in Eq. (3) is for one single object.If there are multiple objects from a frame to be recognized,the accuracy can be calculated as the average A(f ) for eachobject. For instance, Table 1 illustrates the performance for2 object classes (‘‘body’’ and ‘‘building’’) based on the datafrom [13] under different image fidelities. The benchmarkresult includes 2408 samples and 875 samples for body andbuilding, respectively. In Table 1, each tuple (x, y) indi-cates the number of objects recognized for different fideli-ties and parameters, e.g., for the row of 720p, the tuple of(2352, 870) means 2352 and 870 samples are recognizedcorrectly (TP) for body and building respectively, while thetuple of (19, 137) means there are 19 and 137 false positiveresults for these two objects respectively. From the table,we can see that the accuracy A(f ) indeed decreases with thedegradation of the video fidelity f .

C. CONTINUITY C(r ,m)Given any mobility level m, user’s experienced service con-tinuity C(r,m) is positively related to the task outsourcingrate r . In particular, when r is sufficiently large, e.g., a highframe per second (FPS) rate, users will enjoy very smoothcognition assistant services, e.g., a continuous display of therecognized objects, while the service continuity degradesdramatically when r tends to be small. This demonstratesan exponential varying trend approximately, so that we pro-pose to adopt an exponential function to describe such arelation, e.g., C(r,m) ∼ exp(r,m), where α ≤ r ≤ β.For instance, α could equal to 1 and β could be camera’sframe generation rate, e.g., 30 FPS. Fig. 1(a) depicts such an

18410 VOLUME 6, 2018

Page 4: Outlet: Outsourcing Wearable Computing to the Ambient ...zhenjili/2018-IEEEAccess-Outlet.pdf · L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing

L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing Edge

FIGURE 1. Illustration of service continuity C(r ,m) with α = 1 and β = 30,(a) km = 1, and (b) km varies from 0.3 to 1.

example. We note that the detailed expression forC(r,m) canbe flexibly changed for various types of sensory data, andthe exponential function adopted in current Outlet is only aconcrete instance to instrument the design.

As stated in Section II-A, user’s mobility level m couldalso impact the service continuity C(r,m). For instance,to achieve the same service quality, more frequent outsourc-ing needs to be performed when user’s mobility is high, sincethe scene captured by camera changes more rapidly. To inves-tigate this point, we conduct preliminary experiments, whichinclude user’s major mobility patterns in cognition assistantapplications, e.g., static, walking, running and head rotation.In this experiment, the camera captures user’s first-person

view and the motion sensors sense user’s head and bodymotions at the same time. Then, we utilize the inter framedifference (IFD) of the recorded video to quantify the servicecontinuity, e.g., the smaller the difference, the better continu-ity. The IFD is computed as IFD = 1− IFS, where IFS is thecorrelation coefficient of every two consecutive frames [1].If the two frames are exactly the same, IFD equals to 0.In Fig. 2, we illustrate detailed sensor readings from one trialof experiments. We observe similar sensor data patterns crossdifferent trials and Fig. 3 further provides the statistic result.

In Fig. 2, the user stands for 7.5s, walks for 7s, thenruns for about 5s. During the standing and walking, the userrotates the head twice. Fig 2(a) shows that the accelerometerscan clearly indicate user’s body level motions, e.g., stand,walk and run, which is consistent with existing step counterdesigns [19], [39]. Fig 2(b) further reveals that gyroscopesare more reliable to indicate fine-grained head rotations.In Fig 2(c), we plot the IFD values of recorded videos.From the figure, we can see when the user is static, with-out body and head movements, IFD is quite small. Whenthe user starts to walking, the IFD value only slightlyincreases. However, as long as user’s head rotates or running,IFD increases dramatically. We observe similar patterns fromall other experiment trials as well.

The observation from Fig. 2 inspires us that we can classifyuser’s mobility level m into three categories: low, mediumand high, using wearable’s motion sensors, and mainly dis-tinguish m among these three scenarios (it is unnecessaryand also infeasible to enumerate all possible mobility levels

FIGURE 2. Accelerometer, gyroscope readings and inter frame difference(IFD) to investigate user’s mobilities, which can be classified into threemajor categories.

FIGURE 3. Cumulative distribution functions of the IFD values underdifferent mobility levels.

in practice). Fig. 3 depicts the CDF of the IFD values forthese three categories, showing that they are well separated.In light of this, we introduce a factor km inOutletwith respectto the mobility level m, where m ∈ {low,medium, high},and express C(r,m) as exp(km · (r − 1)). Moreover, to avoidC(r,m) overwhelms A(f ) in the definition of UE in Eq. (1),r is normalized by its upper bound β. Therefore, we have:

C(r,m) = exp(km · (rβ− 1)). (4)

Fig. 1(b) illustrates an example of Eq. (4). In prac-tice, we need to determine user’s instant mobility level mfor selecting km in Eq. (4) prior to the task outsourcing(Section III). Hence, we propose following three steps todetermine mobile level m.• Step 1: If gyroscope indicates a clear head rotation,e.g., gyroscope’s changes more than 25 degree [34],or accelerometer manifests the user is running, e.g.,the interval between two steps is less than 0.5s [5],

VOLUME 6, 2018 18411

Page 5: Outlet: Outsourcing Wearable Computing to the Ambient ...zhenjili/2018-IEEEAccess-Outlet.pdf · L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing

L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing Edge

mobility level m is classified as high. Otherwise goto Step 2.

• Step 2: If the accelerometer indicates the user is walking,e.g., the interval between two steps is within 0.5s and1s [5], m is classified as medium. Otherwise, m is low.

We note that when m is determined as low, e.g., the user isrelatively static, while the objects themselves could move aswell. Hence, ifm is determined as low according to themotionsensors, we further set a counter to periodically (e.g., 1min)double check the mobility level classification according tothe IFD values (this needs to be conducted periodically as itis computational expensive). When the counter gets expired,according to Fig. 3, we can adopt the calculated IFD valuesto verify the selected mobility levelm needs to change or not.

D. PUTTING THEM ALL TOGETHERAccording to the definitions of A(f ) and C(r,m), the userexperience metric UE can be expressed as follows:

UE=

w · A(f )+ (1− w) · 1, r > β,

w · A(f )+ (1− w) · exp(km(rβ− 1)), α ≤ r ≤ β,

0, r < α,

(5)

since all parameters in the equation like w, A(·) and exp(·)are between 0 to 1, the value of UE is also in the rangefrom 0 to 1.

III. UE-ORIENTED OUTSOURCING DESIGNAfter introducing the user experience metric (UE), we nowelaborate the outsourcing design in Outlet for wearable sens-ing data, e.g., first-person video, in this section.

A. PROBLEM FORMULATIONThere are two kinds of devices in Outlet: 1) resource con-sumers, like user’s wearable devices that have outsourcingtasks (wearable sensing data to be outsourced for processing),and 2) resource providers, like the ambient devices that haveavailable computing resources and are willing to contribute,e.g., routers, nearby computers, users’ mobile devices, etc.

Table 2 lists all the notations utilized in our outsourcingdesign. In particular, we denote the amounts of consumersand providers as na and nb, respectively (in Section III-C,we will further handle the case that these numbers couldvary). Each consumer ci (1 ≤ i ≤ na) may gener-ate the first-person video with default fidelity fi, wherefi ∈ {360p, 480p, 720p, 1080p}. This default video fidelitydepends on the camera. In addition, ci’s mobility level is miand the processing of each video frame of fidelity fi willconsume xfi units of resources (this resource representation isdetailed in Section III-A.2 shortly). On the other hand, eachresource provider pj (1 ≤ j ≤ nb) has yj units of resourcesthat pj is willing to share, rij indicates the number of framesoutsourced from consumer ci to provider pj, and ri is the totalframes outsourced from consumer ci to all providers. Finally,UEi is the UE metric of consumer ci, and the target of the

TABLE 2. Frequently used notations.

outsourcing design in Outlet strives to maximize the overalluser experience achieved in the system:

maxrij U =na∑i=1

φi · UEi/na (6)

s.t.nb∑j=1

rij ∈ [α, β], i = 1, 2, 3 . . . , na, (7)

na∑i=1

rij · xfi ≤ yj, j = 1, 2, 3 . . . , nb, (8)

where rijs are decision variables, φis are incentive factors thatmotivate devices to contribute their resources (detailed in thefollowing), Eq. (7) ensures the minimum outsourcing rate foreach consumer (In Section III-C, we will further cope withthe case when this constraint cannot be satisfied), and Eq. (8)states that the resource consumption on each provider willnot exceed its available resource. In the following, we firstdiscuss the incentive factor φi and the resource representationfor xfi before we introduce our proposed solution in Outlet tosolve the formulation above.

1) INCENTIVE FACTOR φiAs the computing resources in the ambient mobile comput-ing edge are highly scattered and distributed, we need toeffectively motivate devices for contributing their availableresources, so that higher user experiences can be achievedin Eq. (6). On the other hand, if a user’s devices contributemore resources to the computing edge in the past, when thisuser later needs the outsourcing service, a higher priority toconsume more resources should be granted in case that theunderlying resources are limited.

In light of these, in Eq. (6), we introduce an incentivefactor φi to differentiate the UEi metric of each consumer ci,e.g., more resource contributions lead to higher weight(e.g., priority to consume resources). More precisely, for

18412 VOLUME 6, 2018

Page 6: Outlet: Outsourcing Wearable Computing to the Ambient ...zhenjili/2018-IEEEAccess-Outlet.pdf · L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing

L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing Edge

FIGURE 4. The processing latency under different video fidelities and CPUfrequencies (Ghz).

each user u, some of its devices (e.g., wearables) may actas consumers, while other devices (e.g., mobiles) may playas suppliers. Outlet records each user’s prior resource contri-butions (e.g., processing outsourced tasks from other users)and consumptions, denoted as Prou and Conu, respectively.We can then define the resource provision consumption ratioPCRu as:

PCRu =Prou + δConu + δ

, (9)

where δ is a small positive number to avoid the denominatorto be zero. Based on the resource contribution consump-tion ratio, the design of the incentive factor φi in Outlet isdefined by the following principles. All the resource con-suming devices belonging to the same user will share thesame incentive factor value. To avoid the starving of less-contributed users, the increasing rate of consuming device’sφi will slow down as PCRu (of its user u) becomes rela-tively large. In addition, to motivate less-contributed users toshare their available computing resources, they can observea remarkable improvement when they contribute. Accordingto our investigation, we find that the logarithmic functionexhibits such a trend. Our current design thus applies the log-arithmic function, e.g., log(·), forPCRu to obtain the incentivefactor φi for each of its consuming devices ci, such that whenProu ≥ Conu, φi ≥ 1; Otherwise, we have 0 < φi < 1.

2) RESOURCE REPRESENTATIONTo further unify the unit of resource demand and consumptionfor different video fidelities and device’s processing abilities,we adopt the lowest 360p fidelity and 1Ghz as the basis in theresource representation.

To this end, we conduct extensive experiments to under-stand the the relationship of the processing latencies in termsof the video fidelities and the CPU abilities. Fig. 4 illus-trates that the video processing latency increases as the videofidelity is improved under the same CPU setting, while theabsolute values increased could vary cross different CPU fre-quencies, e.g., 109ms to 33ms from 480p to 720p. Accordingto our experiments, we denote tfi,g as the processing time forone frame of fidelity fi with the CPU frequency g (GHz).The resource demand parameter xfi from Eq. (8) in Outletis thus expressed as xfi = tfi,1GHz/t360p,1GHz. Similarly,

Algorithm 1 DP Based Solution to Solve the FirstSubproblem

Input: α, β, R, kmi, fi, φi, xfi , i = 1, 2, . . . , naOutput: ri

1 ri = 0;2 R = R−

∑nai=1 xfi · α;

3 ri = BKP(kmi, fi, φi, β − α,R)+ α;4 return ri;

the resource supplier parameter yj can be determined byyj = t360p,xGHz/t360p,1GHz, where x equals to the original CPUfrequency multiplies the percentage of the CPU utilizationthat a device is willing to share. In Outlet, we use Fig. 4 to fitthe latency curve for each fidelity setting and further convertthe resulting latency values into a lookup table, so that theycan be efficiently retrieved for outsourcing scheduling.

B. SOLUTION TO THE OUTSOURCING FORMULATIONDirectly solving the formulation from Eqs. (6) to (8) canbe computationally expensive. It has the same formulationformat as the multiply constrained knapsack problem, whichis known to be NP-complete [33]. Our experiments in §IValso shows that directly solving our outsourcing formulationcan take 8.3 hours to derive the solution for a very smallsystem scale with 7 devices (4 consumers and 3 providers)merely. To develop a practical solution in Outlet, we proposeto decompose the original problem into two subproblemswith efficient solutions. In the following, we first introducethe solution to each decomposed problem and then analyzethe time complicity of our overall solution.

1) DETERMINE RESOURCE DEMANDEach frame in Outlet needs to be outsourced to one devicefor processing. In other words, even if multiple devices intotal have sufficient resources to process a high fidelity videoframe, e.g., 1080p, this fidelity may not be supported in prac-tice, as none of individual devices can support it. Therefore,in the first decomposed subproblem, we relax this constraintby treating all resources are from a centralized resource pool,and strive to determine the resources that each consumercan be outsourced given the aggregated computing resourcesfrom the ambient computing edge.

In Table 2, yi indicates the resource units provided by eachprovider pj, where j = 1, 2, . . . , nb. We can compute theoverall resources from the computing edge R as R =

∑nbj=1 yj.

Our study finds that the first subproblem can be rephrased asthe Bounded Knapsack Problem (BKP) [33] as follows:• R represents the the total volume of a knapsack,• na (e.g., total amount of consumers) represents the num-ber of items to be picked into the knapsack,

• ri (e.g., frames to be outsourced) represents the numberof times that item i is selected,

• xfi (e.g., resource needed to process one frame offidelity fi) represents the volume of item i.

VOLUME 6, 2018 18413

Page 7: Outlet: Outsourcing Wearable Computing to the Ambient ...zhenjili/2018-IEEEAccess-Outlet.pdf · L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing

L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing Edge

FIGURE 5. Illustration of the LSA algorithm example.

The bounded knapsack problem has polynomial-time solu-tion and the key step to derive the solution is to obtainthe transfer equation so that dynamic programming can beapplied. However, we find that there are two differencesbetween our problem and the original BKP problem: 1) thereis a limitation about the number of times that each itemcan be selected, e.g., α and β, and 2) the increase of thetotal value of one item is not linear with the number of itsinput times. By considering these two aspects of differences,the transfer equation of our first decomposed subproblem canbe expressed as follows:

U [i][R̃] = max{U [i− 1][R̃− ri · xfi ]+ φi · UEi|

α ≤ ri ≤ β, 0 ≤ R̃ ≤ R}, (10)

where U [i][R̃] refers to the maximun U value achieved byoutsourcing consumer c1 to ci’s frames with the computingedge with R̃ resources. This problem can be solved by theDynamic Programming (DP) for U [na][R], which is detailedin Algorithm 1. The BKP(·) in line 3 stands for the solver ofthe BKP problem.

2) ASSIGN OUTSOURCED FRAMES TO PROVIDERSAfter the execution of Algorithm 1, the total resourcedemands ri from each consumer ci can be determined.We cannow further decide how to allocate these resource demandsto different resource providers, e.g., rij, which is the decisionvariables of the original formulation from Eqs. (6) to (8). Dueto the constraint relaxing in the previous step, the allocationof rij cannot be guaranteed with a feasible solution. In thissubsection, we first deal with the case that feasible solutionsexist and postpone the infeasible case in the next subsection.

Supposing each consumer ci need qi units of resources intotal to process ri frames. Then, qi equals to qi = ri · xfi .We introduce a linear scan algorithm (LSA) to determineeach rij. Its principle can be illustrated in Fig. 5. The x-axisindicates the amount of resources. Each line segment withnotation yj represents the resources provided by pj, e.g., y1 canprovide 4 resource units.We introduce a small offset along they-axis to distinguish different resource providers. Similarly,each line segment with notation qi represents the resource

Algorithm 2 LSA Algorithm to Solve the SecondSubproblem

Input: na, nb, ri, xi, i = 1, 2, . . . , na, yj, j = 1, 2, . . . , nbOutput: rij

1 rij = 0, i = 1, j = 1, ll = 0, rl = 0;2 calculate Qi,Yj;3 rb = Q[a] < Y [b]?Q[a] : Y [b];4 while rl < rb do5 if Qi ≤ Yj then6 rl = Qi;7 i++;

8 else9 rl = Yj;

10 j++;

11 rij = (rl − ll)/xi;12 ll = rl;

13 return LSAC();

demanded by consumer ci, e.g., c1 needs 3 units of resources,and all the consumers are organized in a decreasing orderaccording to their incentive factors φi. The key idea of LSA isto scan these two curves (broken lines) from left to right todetermine how much resources a provider can offer for theconsumer.

By scanning the two broken line curves along the x-axisfrom left to right, we can draw a vertical dash line fromeach turning point of one broken line to another. The lengthbetween the two dash lines, lij, represents howmuch resourcepj can provide to ci, e.g., l32 means provider p2 can offer2 resource units for consumer c3. Then rij can be determinedas:

rij =⌊lijxfi

⌋. (11)

The summation of each allocated rij may less than theri value determined by Algorithm 1. Due to the residualresources are not sufficient to support the processing of oneframe, e.g., if l21 is small, rij could be 0 and in this case thedemanded l21 resources by consumer c1 are not satisfied yet.To alleviate this issue, after the scanning these two curves forthe first round, we check the remaining resources and try toallocate more. This additional allocation is a complementaryprocess of the original LSA, which is detailed in Algorithm 3.

3) OUTSOURCING PROTOCOLFor the first decomposed subproblem, the time complexityof Algorithm 1 is O(nb · R · β). For the second subproblem,Algorithm 2 only needs to scan all the turning points once andthe time complexity of this part is thus linear, i.e., O(na+nb).In addition, Algorithm 3 costs O(na · nb) time to complete.The total time complexity of Algorithm 2 is thus O(na · nb).Since both algorithms are polynomial, the overall solution ispolynomial as well.

18414 VOLUME 6, 2018

Page 8: Outlet: Outsourcing Wearable Computing to the Ambient ...zhenjili/2018-IEEEAccess-Outlet.pdf · L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing

L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing Edge

Algorithm 3 LSAC Algorithm Is Called by Algorithm 2

Input: na, nb, ri, xi, i = 1, 2, . . . , na, yj, j = 1, 2, . . . , nbOutput: rij

1 rneedi = ri − α;2 yleftj = yj − rij · xi;3 for i = 1; i ≤ a; i++ do4 if rneedi > 0 then5 for j = 1; j ≤ b; j++ do6 if yleftj > 0 then7 num = yleftj/xi;8 rij = rij + num;9 ylefti = ylefti − num · xi;

10 rneedi = rneedi − num;

11 return rij;

In the Outlet system, we let the provider with the highestenergy level act as the coordinator to complete the outsourc-ing allocation and further disseminate the allocation results.After solving the formulation from Eqs. (6) to (8), the coordi-nator is aware when the current batch of the outsourced taskswill be completed within the computing edge. Therefore,prior to the deadline, the updated information required byour proposed algorithms will be reported and the coordinatorcan derive and disseminate the new outsourcing decisions ina rolling basis.

C. HANDLING RESOURCE DYNAMICS AND INFEASIBLEALLOCATIONSHowever, due to the distributed nature, the users, togetherwith their devices, may joint and leave the system dynam-ically, which could incur resource dynamics (and also theimbalance) to the resource provision and consumption withinthe mobile computing edge. A direct consequence is that theoutsourcing formulation from Eqs. (6) to (8) for each roundof allocation may not have a feasible solution, e.g., the avail-able resources from the computing edge cannot support theresource demands from each consumer with video fidelity fi.It is also possible that the feasible solution does not existeven given the original resource provision and consumptionwithout dynamics.

The key idea of our countermeasure to resource dynamicsis to gradually degrade the fidelity requirements from con-sumers, so that the resource requirements can be adapted tomatch the available resource supplies. From Section II-C,we know that the task outsourcing rate r should be withina range between α and β to ensure service quality. In otherwords, the lower and upper bounds of the task outsourcingrate imply the minimum andmaximum resources required forany fidelity fi:

R(fi)min =∑na

i=1α · xfi , (12)

R(fi)max =∑na

i=1β · xfi . (13)

Algorithm 4 Solution With Dynamics Handling

Input: na, nb, fi, xi, i = 1, 2, . . . , na, yj, j = 1, 2, . . . , nbOutput: rij

1 calculate R,R(fi)max ,R(fi)min;2 if R ≥ R(fi)max then3 ri = β;

4 else if R(fi)min < R < R(fi)max then5 ri = DP(), which is Algorithm 1 ;

6 else if R < R(fi)min & ∃fi 6≡ 1 then7 each ci’s fidelity degrades one level, go to line 1;

8 else9 relax α to 0, go to line 1;

10 rij = LSA(), which is Algorithm 2;11 return rij;

According to relationship among R(fi)min, R(fi)max and totalavailable resources R, e.g., R =

∑nbj=1 yj, we could extend

the solution to the outsourcing formulation as Algorithm 4,in which Algorithms 1 and 2 serve as two submodules.Specifically, we classify the relationship of R(fi)min, R(fi)maxand R into three cases in Algorithm 4.

In the first two cases, e.g., R ≥ R(fi)max and R(fi)min ≤R ≤ R(fi)max , the feasible solution exists and we canuse Algorithms 1 (DP) and 2 (LSA) to derive the solutiondirectly.

In the third case, e.g., R ≤ R(fi)min, even the minimumoutsourcing rate cannot be guaranteed. In this case, we needto degrade the fidelities of the consumers to reduce theirresource consumptions. To this end, each consumer will firstdegrade their fidelities by one level, e.g., 1080p to 720p.By doing so, the values of R(fi)min and R(fi)max will bechanged as well and we can determine their relationship withrespect to R again. After such a fidelity degrading, if it turnsto the first two feasible cases, we can apply Algorithms 1and 2 to derive the solution; Otherwise, we will continue todegrade the fidelity requirement and then decide again. If allfidelities are reduced to 360p and there is still no feasiblesolution, we will remove consumers from the outsourcingallocation for the current round according to their incentivefactors φis, e.g., the consumers, whose users contribute lessto the computing edge before, are more likely to be postponedto the next round.

IV. PERFORMANCE EVALUATIONWe implement all the components of Outlet introduced so farand conduct extensive trace-driven evaluations to understandthe performance of our design.

A. EXPERIMENT SETUP1) APPROACHES FOR COMPARISONIn this section, we compare Outlet with the followingapproaches:

VOLUME 6, 2018 18415

Page 9: Outlet: Outsourcing Wearable Computing to the Ambient ...zhenjili/2018-IEEEAccess-Outlet.pdf · L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing

L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing Edge

1) OPT. For small system scales, we can directly search forthe optimal system performance, which is the performanceupper bound of any practical method.2) DP. The DP algorithm (which is Algorithm 1) that

relaxes the constraint that one frame needs to processed byone device. The overallU value in Eq. (6) calculated from theDP algorithm only may not be achievable in practice, whichessentially serves as an upper bound of OPT, e.g.,

U (Outlet) ≤ U (OPT ) ≤ U (DP), (14)

where U (OPT ) ≤ U (DP) is because the feasible solutionregion is enlarged in DP due to the constraint relaxation.This inequality could let us understand the performance ofOutlet for large system scales, e.g., as Fig. 10 shows it is verydifficult to obtain OPT in large system scales.3) Greedy. To our best knowledge, there is no similar

design as Outlet. Therefore, as a baseline approach in prac-tice, we further implement a Greedy method that allocatesresources to each consumer according to their priorities(incentive factors).

2) EVALUATION SETUPFor the front-end wearable sensing part, we consider all videofidelities from 360p to 1080p. The users’ mobility levelsare derived from wearable motion sensors, which are furtherorganized as a library to be used in the trace-driven evalu-ation of the outsourcing performance. For the outsourcingpart, the video analysis and the scheduling are implementedby Matlab and C++, respectively, on a PC with 4 coresi7-6700 3.4GHZ CPU and 16 GB memory. We first setupa small scale system, in which the consumers and suppli-ers are less than 4 and 3, respectively. With this setting,we can directly examine the performance gap betweenOutletand OPT. In the evaluation, we also examine Outlet in a rela-tively large system scale, where the consumers and suppliersare up to 100 and 50, respectively. As aforementioned, it istime consuming to obtain OPT in this case. We thus adoptDP as a looser performance upper bound for the evaluation.In addition to the performance comparison among differentapproaches, we also vary different system parameters andconsider system dynamics to achieve comprehensive perfor-mance evaluations. Finally, we also measure the running timeof out design under different settings.

3) PERFORMANCE METRICWemainly utilize theU value (e.g., the weighted average userexperiences by the incentive factor) from the objective of theoutsourcing formulation in Eq. (6) and also the UE metricachieved by individual consumers as the main performancemetrics in the evaluation.

4) OVERALL PERFORMANCEFig. 6 depicts the overall system performance under differentresource ratios, where

resource ratio =total resources from providersresources needed by consumers

. (15)

FIGURE 6. Average user experiences achieved under different resourceratios, for (a) small and (b) large system scales.

FIGURE 7. Impacts of (a) user mobility levels and (b) number of deviceson the achieved user experience performance.

In general, when the resource ratio is increased, the U metricalso improves as the resource demands can be better satisfied.For the small system scale setting, Fig. 6(a) shows that OPTimproves from 1.8 to 2.4 when resource ratio varies from0.2 to 1, and Outlet follows OPT closely, e.g., more than97.6% closeness of OPT when the resource ratio is greaterthan 0.4. In contrast, Greedy suffers large performance losses.Fig. 6(a) also indicates DP could serve as tight upper boundof OPT.

Fig. 6(b) further depicts the performance in large systemscales. From the result, we observe that Outlet also closelyfollow DP within 97% to 99% closeness (OPT is betweenthese two curves), which implies Outlet also achieves excel-lent performance in this trial of experiments. Similar asFig. 6(a), the Greedy approach fails to achieve good out-sourcing scheduling, where the performance gap can bemuchlarger than Outlet.

B. EVALUATION RESULTS1) IMPACT OF USER MOBILITYTo clearly demonstrate the impact of user’s mobility on thesystem performance, in Fig. 7(a), we explicit configure allusers’ mobility levels to be the same and conduct this evalu-ation three times for three different mobility levels, e.g., low,middle and high, respectively. In general, the average userexperience achieved by each user degrades as the mobilitylevel increases. Throughout the evaluation, we findOutlet canalway closely follows DP, where the closeness is within 96%under different settings.

18416 VOLUME 6, 2018

Page 10: Outlet: Outsourcing Wearable Computing to the Ambient ...zhenjili/2018-IEEEAccess-Outlet.pdf · L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing

L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing Edge

FIGURE 8. Impact of incentive factors in small scale system for theconsumers with (a) increased and (b) decreased incentive factors, andlarge scale system for the consumers with (c) increasedand (d) decreased incentive factors.

2) IMPACT OF DEVICE NUMBERSIn Fig. 7(b), we change the number of consumers from40 to 100 and fix the number of total devices in the the systemas 150.With more consumers in the system, the resource ratioessentially decreases. As a result, the overall performanceof all approaches will deteriorate. In particular, the averageUE drops from 0.92 to 0.78 in Outlet, while it is still closeto DP all the time. On the contrary, Greedy could sufferremarkable performance loss, where theUE deduction variesfrom 0.76 to 0.19 when the consumer numbers are changedfrom 40 to 100, respectively.

3) IMPACT OF INCENTIVE FACTORSTo understand the efficacy of our incentive design, we explic-itly vary the incentive factors of each consumer and examinethe change of the UE metric achieved by each consumer.For the small scale system with four consumers,

we increase the first two consumers’ incentive factors anddecrease the last two consumers’ factors. Fig. 8(a) showsthat the UE metric for the first two consumers increase aswell, which is aligned with the OPT’s performance. Fig. 8(b)further unveils that the last consumer is not impacted, butthe UE of the third consumer is decreased by 0.16 in theevaluation.

For the large scale system of 50 consumers, we ran-domly select 5 of them to increase their incentive factorsand also another 5 consumers to decrease their factors.Fig. 8(c) and (d) together indicate that our incentive designis effective to distinguish different consumers with differentincentive factors and the varying trend is aligned with theDP’s performance.

4) IMPACT OF RESOURCE DYNAMICSIn this trial of evaluation, consumers and providers joinand leave the system randomly and we examine the

FIGURE 9. Impact of resource dynamics on the user experienceperformance in 5 consecutive outsourcing rounds.

FIGURE 10. Running time of Outlet in (a) small system scale, and in largesystem scale by varying the numbers of (b) consumers and (c) providers.

performance of 5 consecutive outsourcing rounds. In thisevaluation, the total number of consumers and providersare within 100 and 150, and the resource ratios cross these5 rounds first increase and then gradually decrease. Fig. 9plots the resulting performance of DP and Outlet. From theresult, we can observe that the varying trend of the obtainedperformance follows the trend of the resource ratios and theperformance gap between Outlet and DP is less than 0.05.

5) RUNNING TIMEWe finally examine the running time of the Outlet design.Fig. 10(a) illustrates that even for the small scale systemof 4 consumers and 3 providers only, OPT takes nearly500 seconds to derive the result when the resource ratiois 1.0 on a desktop with the i7-6700 3.4GHZ CPU. On thecontrary, Outlet can obtain the result within several millisec-onds for all settings. In Fig. 10(b) and (c), we further evaluatethe running time of Outlet in large scale systems by varyingthe number of consumers and providers. As the outsourcing

VOLUME 6, 2018 18417

Page 11: Outlet: Outsourcing Wearable Computing to the Ambient ...zhenjili/2018-IEEEAccess-Outlet.pdf · L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing

L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing Edge

schedule of Outlet consists of two key algorithms: DP andLSA, we plot the detailed running time of each component.From the result, we find that LSA is very fast and the runningtime of DP could slightly increase. However, overall, the run-ning time of DP is still quite lightweight, which is in the orderof milliseconds to complete the outsourcing allocation.

V. RELATED WORKWe review existing works that are related to the design ofOutlet in this section.

A. MOBILE COMPUTING EDGEOutsource extensive computations to the cloud is a typicalway to overcome resource limitations of mobile or wearabledevices [11], while it may suffer unsatisfied latency per-formance for many delay sensitive designs [27]. To tacklethis issue, Satyanarayanan et al. [29] propose to add a layerbetween mobile devices and remote clouds, e.g.,cloudlet,similar to Cisco’s fog computing architecture [4], whichcould largely decouple the bonding of the computation out-sourcing to the high speed Internet connection and availabil-ity. The authors [31] provide a vision and analyze challengesof edge computing.

Following this trend, existing works [13] have shown theefficacy to put the clouds closer over the remote ones usingdedicated cloudlet servers. Other recent works have studiedthe aspects of task migration, architecture refactoring, energyefficiency, mobility management and so on. In particular,ESTRA [41] is proposed for mobile content delivery withedge caching. Harras [16] studies the computation and energygains by offloading to cloudlet. The studies in [26], [28]investigate the energy balancing and the energy efficiency,respectively. Habak et al. [14] studies the cloudlet archi-tecture refactoring. The study in [22] examines the relationamong the system size, device lifetime and reachable time,and Serendipity [30] enables the offloading through intermit-tently connections. The service hand-off cross different edgeservers are recently studied in [25].

The design of Outlet also executes the cloudlet princi-ple, while we propose to coordinate scattered computingresources from the ambience to form the computing edge.Given these existing achievements, e.g., energy and mobilitymanagements, it is still unclear how the user’s achievableexperience from the system can be jointly considered into theoutsourcing process and incentive designs, so that the sensingcan comply with the underlying resources and approach to thehighest performance that can be achieved.

B. MOBILE EDGE SUPPORTED APPLICATIONSMobile computing edge could support a variety of appli-cations, among which the video-based applications is ofessential importance on mobile (e.g., smart phones) or wear-able (e.g., smart glasses) platforms, such as [7], [8], [13],and [37]. These applications in general can be divided intothree categories: cognitive assistance, crowdsourcing andsurgery applications, and many of these prior designs need to

outsource computations to cloudlets or remote clouds. In par-ticular, GlassGesure [37] utilizes gesture-based interfacedesign to improve Google Glass. QuiltView [7] is a cloud-based architecture video response system. Ha et al. [13]develops a cognitive assistance system using wearables andcloudlet.

Prior works leverage the edge computing to benefit theirapplication designs, while they mainly use dedicated edgecomputing services, e.g., cloudlets, which thus do not addresscontext dependence, scattered resources and resource dynam-ics three challenges in Outlet. In addition, the mobile com-puting edge investigated in this paper can also benefit aboveapplication designs when the dedicated cloudlet servers or thehigh speed Internet connections are not available.

VI. CONCLUSIONIn this paper, we propose Outlet, a system that outsourceswearable computing tasks to the ambient mobile comput-ing edge. The design of Outlet explores the feasibility toleverage user’s ambient computing resources to form a com-puting edge without dedicated cloudlet servers. This couldlargely alleviate the dependence on the high-speed Inter-net connectivity and availability in traditional task out-sourcing or offloading approaches. To enable the design ofOutlet, we identify three major challenges: context depen-dence, scattered resources and resource dynamics. We pro-pose a set of key techniques to address each of them.Extensive evaluations show promising performance achievedby Outlet under various settings.

REFERENCES[1] Corr2. Accessed: Mar. 27, 2018. [Online]. Available:

https://www.mathworks.com/help/images/ref/corr2.html/[2] Introduction to Information Retrieval—Stanford NLP Group. Accessed:

Mar. 27, 2018. [Online]. Available: https://nlp.stanford.edu/IR-book/pdf/08eval.pdf/

[3] D. A. Benaron, ‘‘Calorie monitoring sensor and method for cellphones, smart watches, occupancy sensors, and wearables,’’ U.S. Patent0 148 632 A1, Nov. 28, 2014.

[4] F. Bonomi, R. Milito, J. Zhu, and S. Addepalli, ‘‘Fog computing and itsrole in the Internet of Things,’’ in Proc. ACM SIGCOMM MCC, 2012,pp. 13–16.

[5] A. Brajdic and R. Harle, ‘‘Walk detection and step counting on uncon-strained smartphones,’’ in Proc. ACM UbiComp, 2013, pp. 225–234.

[6] T. Y.-H. Chen, L. Ravindranath, S. Deng, P. Bahl, and H. Balakrishnan,‘‘Glimpse: Continuous, real-time object recognition on mobile devices,’’in Proc. ACM SenSys, 2015, pp. 155–168.

[7] Z. Chen et al., ‘‘QuiltView: A crowd-sourced video response system,’’ inProc. ACM HotMobile, 2014, Art. no. 13.

[8] Z. Chen et al., ‘‘Early implementation experience with wearable cognitiveassistance applications,’’ in Proc. ACM HotMobile, 2015, pp. 33–38.

[9] Y. Cho, Y. Nam,Y.-J. Choi, andW.-D. Cho, ‘‘SmartBuckle: Human activityrecognition using a 3-axis accelerometer and a wearable camera,’’ in Proc.ACM HealthNet, 2008, Art. no. 7.

[10] S. Choy, B. Wong, G. Simon, and C. Rosenberg, ‘‘The brewing storm incloud gaming: A measurement study on cloud to end-user latency,’’ inProc. IEEE NetGames, Nov. 2012, pp. 1–6.

[11] E. Cuervo et al., ‘‘MAUI: Making smartphones last longer with codeoffload,’’ in Proc. ACM MobiSys, 2010, pp. 49–62.

[12] B. Fang, N. D. Lane, M. Zhang, A. Boran, and F. Kawsar, ‘‘BodyScan:Enabling radio-based sensing on wearable devices for contactless activityand vital sign monitoring,’’ in Proc. ACM MobiSys, 2016, pp. 97–110.

[13] K. Ha, Z. Chen, W. Hu, W. Richter, P. Pillai, and M. Satyanarayanan,‘‘Towards wearable cognitive assistance,’’ in Proc. ACM MobiSys, 2014,pp. 68–81.

18418 VOLUME 6, 2018

Page 12: Outlet: Outsourcing Wearable Computing to the Ambient ...zhenjili/2018-IEEEAccess-Outlet.pdf · L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing

L. Tao et al.: Outlet: Outsourcing Wearable Computing to the Ambient Mobile Computing Edge

[14] K. Habak, M. Ammar, K. A. Harras, and E. Zegura, ‘‘Femto clouds:Leveraging mobile devices to provide cloud service at the edge,’’ in Proc.IEEE CLOUD, Jun. 2015, pp. 9–16.

[15] J. Han et al., ‘‘Cbid: A customer behavior identification system usingpassive tags,’’ IEEE/ACM Trans. Netw., vol. 24, no. 5, pp. 2885–2898,Oct. 2016.

[16] K. Harras, K. A. Harras, and A. Fahim, ‘‘Towards computational offload-ing in mobile device clouds,’’ in Proc. IEEE CloudCom, Dec. 2013,pp. 331–338.

[17] R. Hasan and R. Khan, ‘‘A cloud you can wear: Towards a mobileand wearable personal cloud,’’ in Proc. IEEE COMPSAC, Jun. 2016,pp. 823–828.

[18] S.-L. Hsieh, C.-C. Chen, S.-H. Wu, and T.-W. Yue, ‘‘A wrist-worn falldetection system using accelerometers and gyroscopes,’’ in Proc. IEEEICNSC, Apr. 2014, pp. 518–523.

[19] Y. Jiang, Z. Li, and J. Wang, ‘‘PTrack: Enhancing the applicability ofpedestrian tracking with wearables,’’ in Proc. IEEE ICDCS, Jun. 2017,pp. 2193–2199.

[20] H. Lee, C. Upright, S. Eliuk, and A. Kobsa, ‘‘Personalized object recog-nition for augmenting human memory,’’ in Proc. ACM UbiComp, 2016,pp. 1054–1061.

[21] Y. Li, Z. Cao, and J.Wang, ‘‘Gazture: Design and implementation of a gazebased gesture control system on tablets,’’ ACM Interact., Mobile, WearableUbiquitous Technol., vol. 1, no. 3, 2017, Art. no. 74.

[22] Y. Li and W. Wang, ‘‘Can mobile cloudlets support mobile applications?’’in Proc. IEEE INFOCOM, Apr. 2014, pp. 1060–1068.

[23] S. Lin, H. F. Cheng, W. Li, Z. Huang, P. Hui, and C. Peylo, ‘‘Ubii: Physicalworld interaction through augmented reality,’’ IEEE Trans. Mobile Com-put., vol. 16, no. 3, pp. 872–885, Mar. 2017.

[24] B. Liu, D. Jia, J. Wang, K. Lu, and L. Wu, ‘‘Cloud-assisted safety messagedissemination in VANET–cellular heterogeneous wireless network,’’ IEEESyst. J., vol. 11, no. 1, pp. 128–139, Mar. 2017.

[25] L. Ma, S. Yi, and Q. Li, ‘‘Efficient service handoff across edge servers viadocker container migration,’’ in Proc. ACM/IEEE SEC, Oct. 2017, p. 11.

[26] A. Mtibaa, A. Fahim, K. A. Harras, and M. H. Ammar, ‘‘Towards resourcesharing in mobile device clouds: Power balancing across mobile devices,’’in Proc. ACM SIGCOMM CCR, 2013, pp. 51–56.

[27] Z. Pang, L. Sun, Z. Wang, E. Tian, and S. Yang, ‘‘A survey ofcloudlet based mobile computing,’’ in Proc. IEEE CCBD, Nov. 2015,pp. 268–275.

[28] C. Ragona, C. Fiandrino, D. Kliazovich, F. Granelli, and P. Bouvry,‘‘Energy-efficient computation offloading for wearable devices and smart-phones in mobile cloud computing,’’ in Proc. IEEE GLOBECOM,Dec. 2015, pp. 1–6.

[29] M. Satyanarayanan, P. Bahl, R. Caceres, and N. Davies, ‘‘The case forVM-based cloudlets in mobile computing,’’ IEEE Pervasive Comput.,vol. 8, no. 4, pp. 14–23, Oct./Dec. 2009.

[30] C. Shi, V. Lakafosis, M. H. Ammar, and E. W. Zegura, ‘‘Serendip-ity: Enabling remote computing among intermittently connected mobiledevices,’’ in Proc. ACM MobiHoc, 2012, pp. 145–154.

[31] W. Shi, J. Cao, Q. Zhang, Y. Li, and L. Xu, ‘‘Edge computing: Vision andchallenges,’’ IEEE Internet Things J., vol. 3, no. 5, pp. 637–646, Oct. 2016.

[32] M. Shoaib, S. Bosch, H. Scholten, P. J. M. Havinga, and O. D. Incel,‘‘Towards detection of bad habits by fusing smartphone and smartwatchsensors,’’ in Proc. IEEE PerCom Workshops, Mar. 2015, pp. 591–596.

[33] M. Silvano and T. Paolo, Knapsack Problems: Algorithms and ComputerImplementations. New York, NY, USA: Wiley, 1990.

[34] X. Wen, Y. Song, W. Li, G. Chen, and B. Xian, ‘‘Rotation vector sensor-based remote control of a humanoid robot through a Google Glass,’’ inProc. IEEE AMC, Apr. 2016, pp. 203–207.

[35] S. Xiong et al., ‘‘iBlink: Smart glasses for facial paralysis patients,’’ inProc. ACM MobiSys, 2017, pp. 359–370.

[36] Z. Yang, Q. Zhou, L. Lei, K. Zheng, and W. Xiang, ‘‘An IoT-cloud basedwearable ECG monitoring system for smart healthcare,’’ J. Med. Syst.,vol. 40, p. 286, Dec. 2016.

[37] S. Yi, Z. Qin, E. Novak, Y. Yin, and Q. Li, ‘‘GlassGesture: Exploring headgesture interface of smart glasses,’’ in Proc. IEEE INFOCOM, Apr. 2016,pp. 1–9.

[38] L. Zhang et al., ‘‘It starts with iGaze: Visual attention driven networkingwith smart glasses,’’ in Proc. ACM MobiCom, 2014, pp. 91–102.

[39] L. Zhang et al., ‘‘Montage: Combine frames with movement continuity forrealtime multi-user tracking,’’ IEEE Trans. Mobile Comput., vol. 16, no. 4,pp. 1019–1031, Apr. 2017.

[40] X. Zheng, J. Wang, L. Shangguan, Z. Zhou, and Y. Liu, ‘‘Design andimplementation of a CSI-based ubiquitous smoking detection system,’’IEEE/ACM Trans. Netw., vol. 25, no. 6, pp. 3781–3793, Dec. 2017.

[41] Y. Zhong, K. Xu, X.-Y. Li, H. Su, and Q. Xiao, ‘‘ESTRA: Incentivizingstorage trading for edge caching in mobile content delivery,’’ in Proc. IEEEGLOBECOM, Dec. 2015, pp. 1–6.

LIN TAO received the B.Sc. degree in computerscience from the Hubei University of Economics,Wuhan, China, in 2013. She is currently pursuingthe Ph.D. degree under a joint program with theDepartment of Computer Science, Wuhan Uni-versity, Wuhan, China, and also with the Depart-ment of Computer Science, City University ofHong Kong, Hong Kong. Her research inter-ests include wireless networks, wearable sensors,mobile computing, and edge computing.

ZHENJIANG LI received the B.E. degree in com-puter science and technology from Xi’an JiaotongUniversity, Xi’an, China, in 2007, and the M.Phil.degree in electronic and computer engineering andthe Ph.D. degree in computer science and engi-neering from The Hong Kong University of Sci-ence and Technology, Hong Kong, in 2009 and2012, respectively. He is currently an AssistantProfessor in computer science with the City Uni-versity of Hong Kong, Hong Kong. His research

interests include wearable and mobile sensing, deep learning and data min-ing, and distributed and edge computing.

LIBING WU received the B.Sc. andM.Sc. degreesin computer science from Central China Nor-mal University, Wuhan, China, in 1994 and 2001,respectively, and the Ph.D. degree in computerscience from Wuhan University, Wuhan, China,in 2006. He was a Visiting Scholar with theAdvanced Networking Laboratory, University ofKentucky, Lexington, KY, USA, in 2011. He iscurrently a Professor with the Department of Com-puter Science, Wuhan University, Wuhan, China.

His research interests include wireless sensor networks, network manage-ment, and distributed computing.

VOLUME 6, 2018 18419