[IEEE 2011 IEEE International Conference on Pervasive Computing and Communications Workshops (PerCom Workshops) - Seattle, WA, USA (2011.03.21-2011.03.25)] 2011 IEEE International Conference on Pervasive Computing and Communications Workshops (PERCOM Workshops) - Improving pervasive positioning through three-tier cyber foraging

Download [IEEE 2011 IEEE International Conference on Pervasive Computing and Communications Workshops (PerCom Workshops) - Seattle, WA, USA (2011.03.21-2011.03.25)] 2011 IEEE International Conference on Pervasive Computing and Communications Workshops (PERCOM Workshops) - Improving pervasive positioning through three-tier cyber foraging

Post on 04-Mar-2017




0 download

Embed Size (px)


<ul><li><p>Improving Pervasive Positioning through Three-tier Cyber Foraging</p><p>Mads Dar Kristensen, Mikkel Baun Kjrgaard, Thomas ToftkjrInteractive Spaces</p><p>Department of Computer ScienceAarhus University, Denmark</p><p>Email: {madsk,mikkelbk,toughcar}@cs.au.dk</p><p>Sourav Bhattacharya, Petteri NurmiHelsinki Institute for Information Technology HIIT</p><p>Department of Computer ScienceUniversity of Helsinki, Finland</p><p>Email: {sourav.bhattacharya,petteri.nurmi}@cs.helsinki.fi</p><p>AbstractCyber foraging is a pervasive computing techniquewhere small, mobile devices offload resource intensive workto stronger, nearby surrogate computers in order to preserveenergy and achieve better performance. The problem withrelying only on local resources is, that the availability ofsuch resources may be scarce in many environments. In thispaper we therefore argue that a third tier should be addedwhen considering cyber foraging; namely cloud computing.By considering the local device, nearby surrogates, and thecloud when scheduling, the mobile device may be able tocontinue using remote resources even when such resources arenot available in its vicinity.</p><p>An important challenge of pervasive computing is estimatingthe physical position of mobile devices. As the requirementsincrease for continuous and accurate positioning so does thecomputational requirements of positioningeven limiting thepossible accuracy in many cases. In this paper we describehow a three tier cyber foraging approach can help improvethe positioning capabilities of mobile devices. We demonstrateinitial results for how such an approach applies to particlefiltering-based GSM positioning.</p><p>Keywords-Distributed systems, pervasive computing, mobilecomputing, pervasive positioning</p><p>I. INTRODUCTION</p><p>Cyber foraginga term defined by Satyanarayanan [1]and further refined by Balan et al. [2]is the opportunisticuse of nearby computing resources by small, mobile de-vices. Being opportunistic about the use of remote resourcesmeans, that the mobile device must not depend on remoteresources being available, since it will also have to workwhen entering environments where no such resources areavailable.</p><p>For some use-cases local execution is a feasible but notdesirable option, because working alone means a substan-tial quality degradation. It is in these cases the third tieris neccesarythe cloud [3]. By considering not only thelocal device and surrogates in the immediate vicinity, themobile device may be able to continue performing cyberforaging even when moving into resource impoverished</p><p>environments. Ideally, when moving from a resource richenvironment, where surrogate computers are available, into aresource poor environment, the mobile device should be ableto either migrate its running tasks directly from a surrogateand into the cloud, or to perform the tasks locally for a shortwhile until cloud computing becomes available.</p><p>An important challenge of pervasive computing is es-timating the physical position of mobile devices. As therequirements increase for continuous and accurate on-devicepositioning, so does the computational requirements of posi-tioning due to both developments in algorithms, e.g, particlefiltering, and an increase in different sensor inputs, e.g.,from several radio interfaces. This added load means, thatthe limited computational capabilities of current devices isin many cases limiting the possible accuracy of the posi-tioning algorithms. We therefore argue for that a three tiercyber foraging approach can help improve the positioningcapabilities of mobile devices. As a realistic use-case, inthis paper we apply three-tier cyber foraging to extenda positioning technique known as location fingerprinting.While locating a device, the considered positioning systemuses a probabilistic centroid algorithm combined with par-ticle filtering [4] on GSM signal information. One of themain limitations when running such a particle filtering-basedpositioning algorithm on a mobile device is the number ofparticles that can be used in the position estimation phase. Inthe original article [4], the authors are limited to a thousandparticles to achieve a near real-time performance on NokiaN900 devices. Cyber foraging provides a unique opportunityto significantly increase the number of particles withoutviolating the near real-time constraint, thus positively in-fluencing the overall positioning accuracy. For the presenteddataset the positioning accuracy improves significantly asthe number of particles increases.</p><p>The structure of the paper is as follows: Section IIdescribes the GSM positioning system, analyses how thecomputational complexity depends on the number of par-</p><p>1st IEEE PerCom Workshop on Pervasive Communities and Service Clouds</p><p>978-1-61284-937-9/11/$26.00 2011 IEEE 135</p></li><li><p>ticles, and presents results for how the accuracy improveswhen increasing the number of particles. In Section III wediscuss which factors a three tier cyber foraging systemneeds to consider, and in Section IV we describe how toemploy it in the presented use-case. We also present someinitial results showing the obtainable benefits of using cyberforaging in this setting. Finally, the paper is concluded andfuture work is discussed in Section V.</p><p>II. PERVASIVE POSITIONING</p><p>In this paper we consider a positioning technique knownas location fingerprinting. Fingerprinting is a popular lo-cation technique, having the major advantage of exploitingalready existing network infrastructures, like IEEE 802.11 orGSM, which avoids extra deployment costs and effort. Basedon a database of pre-recorded measurements of networkcharacteristics from different locations, denoted as finger-prints, a wireless clients location is estimated by inspectingcurrently measured network characteristics. Network charac-teristics are typically base station identifiers and the receivedsignal strength [5].</p><p>Fingerprinting based positioning systems have been re-alised in three different setups either on-device, device-assisted or network-based [5]. When on-device the devicemakes both the measurements of the network characteristicsand estimates the position, when device-assisted the devicemakes the measurements and forwards these to a positioningserver, and in the network-based setup the network makesthe measurements and forwards these to a positioning server.Related work has also proposed other setups, e.g., zone-based reporting [6] which tries to divide the tasks betweenthe device and the server to minimise server reporting. Inthis work, by applying cyber foraging, we aim to realisea system that can automatically switch between on-deviceand device-assisted and furthermore not only take advantageof static positioning servers but also neighbouring peers.This has three main benefits: improved positioning as weare not restricted by the computational limits of a particulardevice, improved privacy as we do not delegate positioningto a static server that can be used to monitor the usersposition, and lower positioning latency by utilising neigh-bouring peers instead of having to reach a server over severaltransmission links, e.g., a slow cellular connection.</p><p>As a use-case of the three-tier cyber foraging systemwe consider a positioning system proposed by Nurmi etal. [4] that follows a fingerprinting approach based onGSM measurements combined with particle filtering forposition estimation. The entire algorithm can be deployedon a mobile phone, in our case Nokia N900 devices. In thefollowing we provide an overview of the positioning system,for details see [4].</p><p>A. World and Sensor Models</p><p>The positioning algorithm begins by creating a discreterepresentation of the world by employing a grid over thesurface of the earth with d times d patches. The discreterepresentation helps to facilitate calibration efforts and en-ables balancing between positioning accuracy and radio mapsize. In this paper we use d = 20 meters. For seamlessinterchange between geographical coordinates (e.g., latitude,longitude) and grid identifiers (e.g, row, column), a forwardand a reverse mapping have been defined.</p><p>Once the discrete representation of the world is gener-ated, the positioning algorithm requires a sensor model thatcaptures variations of GSM signal intensities within a gridcell. To facilitate updating and maintaining the radio mapson mobile devices, the positioning algorithm uses Gaussiandistributions as sensor models.</p><p>B. Position Estimation</p><p>According to the sensor model, the probability of observ-ing the GSM cell j having signal intensity s in the grid celli is given by</p><p>p (i|j, s) = 122i,j</p><p>exp</p><p>( (s i,j)</p><p>2</p><p>22i,j</p><p>), (1)</p><p>where i,j and i,j denote the mean and standard devia-tion of the corresponding Gaussian distribution respectively.These parameters can either be generated from the cali-bration data or be learnt directly on the device. A simpleway to estimate the location of a device is to calculate theprobabilities of each grid cell using Equation 1 and then usethe non-zero probabilities to calculate a weighted average ofcorresponding grid cell locations.</p><p>To enable tracking and to smooth the estimated trajec-tory, the positioning algorithm employs particle filtering, asequential Monte-Carlo technique that uses a discrete setof weighted samples, referred to as particles. The particlesmaintain a probability distribution for the location estimateover time [7], [8]. At the beginning of a tracking period a setof N particles, i.e., {xz, wz}Nz=1, are initialised. Where xpdenotes the location of the particle p and wp is the associatedweight. The initial positions of the particles are sampled as:</p><p>xz C1p(i|j, s) + bN (0, )/dc, (2)</p><p>where C =M</p><p>q=1 p(iq|j, s) is the normalisation constantthat ensures the probabilities of M grid cells, where GSMcell j was seen, sum to unity. The Gaussian term, N (0, )/d,is used to model measurement errors with =</p><p>N/3.</p><p>Once the initial positions of the particles are sampled,the probability p(xz|j, s) of each particle z is calculated asfollows:</p><p>p(xz|j, s) =Mq=1</p><p>p(iq|j, s)exp(||xz iq||</p><p>2), (3)</p><p>136</p></li><li><p>where, ||xziq|| is the Manhattan distance between locationof the particle xz and the grid cell iq .</p><p>During tracking, a Gaussian movement model is appliedand new positions of the particles are sampled as:</p><p>xz xz + bN (0, )/dc. (4)</p><p>The particle movement model allows the particles to moveuniformly in all directions and subsequently new weightsof the particles should be calculated using Equation 3. Tomake the particle distribution more consistent, resamplingof particles are done in proportion to their weights. At anygiven time t, the particles maintain a probability distributionover the possible locations of the mobile device and a pointestimate L(t) can be calculated as the weighted centroid ofthe particle distribution, i.e.,</p><p>L(t) =</p><p>Nz=1 wzxzNz=1 wz</p><p>(5)</p><p>The resulting estimate identifies a grid and that can beconverted into latitude, longitude coordinates.</p><p>C. Discussion</p><p>The running time and memory requirement of the particlefilter depends on the number of particles used in the trackingphase. Moreover, the number of grids that have non-zeroprobability has an influence on the time complexity, seeEquation 3. To analyse the influence of the number ofparticles on the overall positioning accuracy, we have con-ducted a number of simulation experiments where we varythe number of particles and calculate different percentilesof positioning errors. Figure 1 shows the results of thesimulation study. As can be seen from Figure 1 the optimalpositioning accuracy is achieved somewhere around 3000particles. Unfortunately using 3000 particles is unrealisticon a mobile device, as documented by the results presentedin Section IV. In the current implementation on Nokia N900devices using 1000 or less particles is necessary, meaningthat positioning accuracy is less than optimal. Runningwith 1000 particles leads to an average running time ofapproximately 6 seconds for each position update on aNokia N900. As motivated earlier, by applied cyber foragingwe will improve the situation by enabling the use of asignificantly higher number of particles in the tracking phasewithout violating the near real-time constraint.</p><p>III. THREE TIER CYBER FORAGING</p><p>Cyber foraging as a term was introduced by Satya-narayanan [1] in 2001 and since then a number of systemshave been proposed. Spectra [9], Chroma [10], [11], andScavenger [12] are all examples of cyber foraging systemswhere the main focus has been on the scheduling of tasks.In these systems multiple surrogates may be considered onrun-time, and an execution plan optimising time (and inChromas case also energy) may be chosen.</p><p> 0</p><p> 500</p><p> 1000</p><p> 1500</p><p> 2000</p><p> 0 1000 2000 3000 4000 5000 6000 7000 8000</p><p>Estim</p><p>ation e</p><p>rror </p><p>(m)</p><p>Particles</p><p>50%90%95%99%</p><p>Figure 1. Variation of 50, 90, 95 and 99 percentile positioning errors withthe number of particles.</p><p>The scheduler is an important component in any cyberforaging system. Even in the simplest systems, where thescheduler need only choose between local execution or usinga single, specific surrogate, a number of factors need to beconsidered. These factors are estimated task running timeon the different peers, bandwidth and latency of the networklinks between the mobile device and its surrogates, the sizeof input and output data, and the locality of the input andoutput data. Let Si and So be the size in bytes of the inputand output data respectively, let L denote the latency of thenetwork link in seconds, let B denote the bandwidth of thenetwork link in bytes per second, and let Rl and Rs denotethe estimated running time of the task on the local host andsurrogate. Using these denotations the scheduler needs toconsider the question:</p><p>Rl (L+</p><p>SiB</p><p>)+Rs +</p><p>(L+</p><p>SoB</p><p>)(6)</p><p>If Equation (6) is true local execution should be preferredand otherwise remote execution can commence. Consideringdata locality means considering whether e.g., the input dataalready resides at the surrogate. If it does the cost of inputtransfer may be ignoredwhich in many cases mean thatremote execution is almost always preferable. We will notin this paper go into more details about how scheduling overmultiple, heterogeneous peers can be done efficiently at run-time, but we refer the interested reader to our previous workon the Scavenger cyber foraging system [12], [13].</p><p>Given a sufficiently advanced scheduler, such as the onesdeveloped within the Scavenger system, adding the thirdtieri.e., adding the use of cloud computingmay beas easy as adding the cloud as a static, always availablesurrogate. Consider the depiction in Figure 2. In this figureis shown the three tiers of execution: 1) the mobile device,2) an opportunistically discovered surrogate reachable overe.g., a Wi-Fi link, and 3) an Internet connected surrogatein the cloud. Given a scheduler that can consider the abovementioned factors adding the cloud as a possible point of</p><p>137</p></li><li><p>Mobiledevice</p><p>Localsurrogate</p><p>Cloudsurrogate</p><p>Wi-Fi</p><p>GSM </p><p>/ Edg</p><p>e / 3G</p><p>12</p><p>3</p><p>Figure 2. Three tiers of execution: 1) on-device, 2) nearby surrogate, and3) the cloud.</p><p>execution is tri...</p></li></ul>