11
CATLES: A Crowdsensing-supported Interactive World-scale Environment Simulator for Context-aware Systems Sandro Rodriguez Garzon Service-centric Networking Telekom Innovation Laboratories, TU Berlin Berlin, Germany [email protected] Bersant Deva Service-centric Networking Telekom Innovation Laboratories, TU Berlin Berlin, Germany [email protected] Benoît Hanotte Service-centric Networking Telekom Innovation Laboratories, TU Berlin Berlin, Germany [email protected] Axel Küpper Service-centric Networking Telekom Innovation Laboratories, TU Berlin Berlin, Germany [email protected] ABSTRACT With the rise of smart mobile devices, context-aware mo- bile applications became an integral part of our everyday life. However, testing, evaluating or demonstrating context- aware mobile applications for outdoor environments remains a resource-intensive and cumbersome task. The investiga- tions need to be conducted in real-world experiments in or- der to gain proper insights into how well an application will perform in a particular environment with its distinct contex- tual properties. Although steps were undertaken to simulate outdoor environments within the lab, these approaches are either based on radio propagation models for the simulation of wireless networks or are limited to a particular virtual space. To overcome these shortcomings, the outdoor en- vironment simulator CATLES is introduced. It allows to transparently simulate the position of a mobile device by interactively controlling an avatar within a virtual 3D rep- resentation of the world. At the same time, it makes use of crowdsensed publicly available WiFi and cell measurements to properly simulate the environment the context-aware mo- bile application residing on the respective mobile device is supposed to sense at the simulated position. CCS Concepts Computing methodologies Interactive simulation; Simulation tools; Human-centered computing Ubiquitous and mobile computing systems and tools; Ubiqui- tous and mobile computing design and evaluation methods; Smartphones; Mobile devices; Tablet computers; Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full cita- tion on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or re- publish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]. MobileSoft’16, May 16-17, 2016, Austin, TX, USA c 2016 ACM. ISBN 978-1-4503-4178-3/16/05. . . $15.00 DOI: http://dx.doi.org/10.1145/2897073.2897078 Keywords Context-aware Computing; Location-based Services; Con- text Modeling; Context Simulation; Interactive Simulation 1. INTRODUCTION Over the last years, context-aware mobile applications be- came a key enabler for the success of smart mobile devices. As context-aware systems, they can adjust themselves dy- namically to the situational needs of the users, whereby the situation is continuously sensed by multiple build-in sensors [2]. Unfortunately, testing and evaluating context-aware ap- plications is time-consuming and cost-intensive because dif- ferent types of mobile devices, different platforms, different types of carrier networks and different environments need to be considered [28], with each dimension acting as a multi- plier in terms of relevant test cases. The biggest challenge arises from the high diversity of environments, extending the testing area potentially to the whole world in case context- aware applications for mobile devices are investigated. Today, mobile device simulators are used as a means to execute test runs of context-aware mobile applications eco- nomically within the lab. But since they are lacking the possibility to simulate various commonly-integrated sensors in a realistic manner [9], it is difficult and sometimes im- possible to prove within the lab that a context-aware mobile application is working properly within a given real-world scenario. This is especially true for location-based services (LBS), which are using multiple sensors to accomplish their location-specific tasks. To expose location-depending be- havior, an LBS needs to sense the position of a user’s mo- bile device either on demand (reactive LBS) or constantly in the background (proactive LBS) [13]. Depending on the required accuracy, defined energy constraints and technical abilities of a mobile device, the position is determined us- ing one or a combination of outdoor-compatible positioning techniques like lateration in GPS, (enhanced) cell proximity [14, 16, 18, 7] or location fingerprinting [18, 7, 15, 12, 11, 23] based on GSM, Wifi and/or Bluetooth signals. Beyond using radio signals for positioning purposes, latest LBS infer logical locations from, among others, WiFi signals [1] to en- 2016 IEEE/ACM International Conference on Mobile Software Engineering and Systems 77

CATLES: A Crowdsensing-Supported Interactive World-Scale …ubicom.snet.tu-berlin.de/.../CATLES_at_MOBILESoft2016.pdf · 2016. 5. 16. · for the interactive test, evaluation and

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CATLES: A Crowdsensing-Supported Interactive World-Scale …ubicom.snet.tu-berlin.de/.../CATLES_at_MOBILESoft2016.pdf · 2016. 5. 16. · for the interactive test, evaluation and

CATLES: A Crowdsensing-supported InteractiveWorld-scale Environment Simulator

for Context-aware Systems

Sandro Rodriguez GarzonService-centric Networking

Telekom Innovation Laboratories, TU BerlinBerlin, Germany

[email protected]

Bersant DevaService-centric Networking

Telekom Innovation Laboratories, TU BerlinBerlin, Germany

[email protected]ît Hanotte

Service-centric NetworkingTelekom Innovation Laboratories, TU Berlin

Berlin, [email protected]

Axel KüpperService-centric Networking

Telekom Innovation Laboratories, TU BerlinBerlin, Germany

[email protected]

ABSTRACTWith the rise of smart mobile devices, context-aware mo-bile applications became an integral part of our everydaylife. However, testing, evaluating or demonstrating context-aware mobile applications for outdoor environments remainsa resource-intensive and cumbersome task. The investiga-tions need to be conducted in real-world experiments in or-der to gain proper insights into how well an application willperform in a particular environment with its distinct contex-tual properties. Although steps were undertaken to simulateoutdoor environments within the lab, these approaches areeither based on radio propagation models for the simulationof wireless networks or are limited to a particular virtualspace. To overcome these shortcomings, the outdoor en-vironment simulator CATLES is introduced. It allows totransparently simulate the position of a mobile device byinteractively controlling an avatar within a virtual 3D rep-resentation of the world. At the same time, it makes use ofcrowdsensed publicly available WiFi and cell measurementsto properly simulate the environment the context-aware mo-bile application residing on the respective mobile device issupposed to sense at the simulated position.

CCS Concepts•Computing methodologies→ Interactive simulation;Simulation tools; •Human-centered computing →Ubiquitous and mobile computing systems and tools; Ubiqui-tous and mobile computing design and evaluation methods;Smartphones; Mobile devices; Tablet computers;

Permission to make digital or hard copies of all or part of this work for personal orclassroom use is granted without fee provided that copies are not made or distributedfor profit or commercial advantage and that copies bear this notice and the full cita-tion on the first page. Copyrights for components of this work owned by others thanACM must be honored. Abstracting with credit is permitted. To copy otherwise, or re-publish, to post on servers or to redistribute to lists, requires prior specific permissionand/or a fee. Request permissions from [email protected].

MobileSoft’16, May 16-17, 2016, Austin, TX, USAc© 2016 ACM. ISBN 978-1-4503-4178-3/16/05. . . $15.00

DOI: http://dx.doi.org/10.1145/2897073.2897078

KeywordsContext-aware Computing; Location-based Services; Con-text Modeling; Context Simulation; Interactive Simulation

1. INTRODUCTIONOver the last years, context-aware mobile applications be-

came a key enabler for the success of smart mobile devices.As context-aware systems, they can adjust themselves dy-namically to the situational needs of the users, whereby thesituation is continuously sensed by multiple build-in sensors[2]. Unfortunately, testing and evaluating context-aware ap-plications is time-consuming and cost-intensive because dif-ferent types of mobile devices, different platforms, differenttypes of carrier networks and different environments need tobe considered [28], with each dimension acting as a multi-plier in terms of relevant test cases. The biggest challengearises from the high diversity of environments, extending thetesting area potentially to the whole world in case context-aware applications for mobile devices are investigated.

Today, mobile device simulators are used as a means toexecute test runs of context-aware mobile applications eco-nomically within the lab. But since they are lacking thepossibility to simulate various commonly-integrated sensorsin a realistic manner [9], it is difficult and sometimes im-possible to prove within the lab that a context-aware mobileapplication is working properly within a given real-worldscenario. This is especially true for location-based services(LBS), which are using multiple sensors to accomplish theirlocation-specific tasks. To expose location-depending be-havior, an LBS needs to sense the position of a user’s mo-bile device either on demand (reactive LBS) or constantlyin the background (proactive LBS) [13]. Depending on therequired accuracy, defined energy constraints and technicalabilities of a mobile device, the position is determined us-ing one or a combination of outdoor-compatible positioningtechniques like lateration in GPS, (enhanced) cell proximity[14, 16, 18, 7] or location fingerprinting [18, 7, 15, 12, 11,23] based on GSM, Wifi and/or Bluetooth signals. Beyondusing radio signals for positioning purposes, latest LBS inferlogical locations from, among others, WiFi signals [1] to en-

2016 IEEE/ACM International Conference on Mobile Software Engineering and Systems

77

Page 2: CATLES: A Crowdsensing-Supported Interactive World-Scale …ubicom.snet.tu-berlin.de/.../CATLES_at_MOBILESoft2016.pdf · 2016. 5. 16. · for the interactive test, evaluation and

hance a location-based social network [10] or to exploit thelocation semantics for proactive LBS [30].

Although the position of a mobile device can be simu-lated transparently within the lab using the available mobiledevice simulators, neither the particularities of the GPS-accuracy in a given neighborhood or even a street nor thevisibility and received signal strength (RSS) of particularcellular, WiFi or Bluetooth signals at certain spots in a cityor rural area are considered. Hence, the context informa-tion that is required by the aforementioned positioning tech-niques and context-aware mobile applications to infer a po-sition or to execute context-dependent behavior in generalis incomplete or missing within the available device simu-lation environments. This has not only implications on therequired development effort but also complicates the demon-stration of context-aware mobile applications within the lab.For example, in case of an LBS that is supposed to be usedby citizens of a particular district, the audience of a demon-stration is required to participate in a real-world showcasewith all its accompanying costs and inconveniences.

To bypass the shortcomings of current mobile device sim-ulators, the interactive world-scale context simulator for mo-bile devices CATLES1 is introduced. CATLES enables thein-lab test, evaluation and demonstration of context-awaresystems under realistic conditions by simulating the real-world context in real-time. The position is simulated by anavatar which can be interactively moved through a virtual3D representation of the world, in first-person perspective.Given the position, CATLES determines the context the mo-bile device is supposed to sense by taking publicly availablecrowdsensed radio signal fingerprints into consideration.

The paper starts with a discussion about available contextsimulators in Section 2, focusing on interactive approaches.Thereafter, the requirements for an interactive context sim-ulator especially with respect to LBS are defined in Section3 while the idea is being sketched together with the imple-mentation details and usage scenarios of CATLES in Section4. CATLES is being evaluated against real-world contextmeasurements in Section 5. This work closes with a shortsummary of our contributions in Section 6 and an overviewabout potential extensions of CATLES in Section 7.

2. RELATED WORKAs indicated above, testing and evaluating context-aware

systems is a challenging task since a variety of environmen-tal factors influence the way a context-aware mobile appli-cation behaves. Since real-world tests are time- and cost-intensive, context-aware mobile applications are usually sim-ulated within a lab environment. In [5], simulation tools aredistinguished whether they are non-interactively simulatinga set of context values, e.g. given by a sample trace fromthe real-world within a test suite, or that are used in aninteractive way to simulate the context in real time. Thework presented in this paper belongs to the latter categoryof tools which are at the same time used for demonstrationpurposes due to their interactive character.

QuakeSim [4] can be seen as one of the earliest systemsfor the interactive test, evaluation and demonstration ofcontext-aware mobile applications within a lab environment.It makes use of the Quake III Arena game engine to render a

1Crowdsensing-based Interactive World-scale ContextSimulator

virtual 3D environment which can be interactively navigatedthrough out of the first-person perspective. A location-aware system under investigation can then be tested in thelab by utilizing the simulated position within the virtual en-vironment as input instead of accessing e.g. the GPS sensor.The UBIWISE simulator [3] was based upon the same ideaand game engine but it provided an additional 2D view forshowing virtual devices. The 2D view served primarily asa user interface to the virtual devices in order to allow theuser to interact with the virtual environment rather thanjust moving through it. The virtual 3D environment simu-lator 3DSim [20] took it even a step further by simulatingthe light intensity or virtual device states as additional en-vironmental features. Although 3DSim was not intended tobe used out of the first-person perspective, it allowed avatarsand devices to be repositioned by interacting with the 3Dview. Since the UPnP standard was chosen as the commoninterface standard to integrate new sensors or actuators intothe virtual environment, an application build upon 3DSimcould quickly be deployed in the real-world. The ubiquitouscomputing simulator TATUS [24] combined the ability ofQuakeSim to be able to navigate around a virtual 3D en-vironment in the first-person manner with the capability of3DSim to be susceptible for instructions to actuators withinthe virtual environment. Additionally, it integrated a wire-less network simulator in order to properly simulate signalquality and throughput values by taking the position of theaccess points, obstacles (e.g. walls), the own position as wellas the position of other avatars (maybe interfering on thesame communication channels) into consideration. SimCon[19] follows the same game-like virtual environment simula-tion concept, but it makes use of sensor models describedin sensorML (Sensor Model Language) for a more accuratesimulation. The simulation framework introduced in [31]is based upon OpenSim2, a free version of the Second LifeSimulator. An avatar within the virtual environment canbe interactively instructed to move to a particular positionand also to interact with virtual objects similar to 3DSim.It is mainly used to simultaneously test multiple adaptiveoff-the-shelf home care products prior to their release.

So far, these approaches are intended to simulate spa-tially limited virtual indoor environments comprising mul-tiple rooms and floors or artificial virtual outdoor environ-ments. The first world-scale virtual 3D environment sim-ulator to test context-aware mobile applications for out-door scenarios was recently introduced in [25]. It is basedupon Google Earth3 which provides a 3D environment ofthe whole earth including buildings, trees and mountains.Since the simulator is used to simulate the location for anintelligent in-car-infotainment system, it is controlled viaa steering wheel and pedals similar to a driving simula-tor. Unfortunately, all aforementioned systems do simulatecontext, including the position, either unrealistically precise(e.g. like the simulated position within the driving simulatoror QuakeSim) or semi-realistic based on radio propagationmodels (e.g. wireless networks in TATUS). Hence, there isa lack of tools that are able to simulate the position-specificcontext for mobile devices in a way that these mobile devicewould experience it during the use at the position underinvestigation within the real-world.

2http://opensimulator.org/3https://earth.google.com

78

Page 3: CATLES: A Crowdsensing-Supported Interactive World-Scale …ubicom.snet.tu-berlin.de/.../CATLES_at_MOBILESoft2016.pdf · 2016. 5. 16. · for the interactive test, evaluation and

3. REQUIREMENTSNowadays, LBS are mainly used in outdoor environments,

e.g., as electronic tourist guides or as location-based re-minders. A suitable interactive context simulator for thetest, evaluation and demonstration of LBS must in the firstplace simulate an outdoor environment, preferably in a world-scale manner. Since the position of a mobile device is thecentral contextual feature all proactive and reactive LBS arerelying on, it needs to be simulated in a realistic manner. Incontrast to their reactive counterparts, proactive LBS areprone to inaccurate positioning. A position sensed by a GPSsensor can differ to the real-world position with a magnitudeof 100m or more in case the mobile device is located close tohighrise buildings or within a canyon. While an impreciseposition would yield to a non-optimal sorted list of restau-rants in a point-of-interest search application, it might leada proactive LBS to burden the user with non-relevant proac-tive notifications, due to the misinterpretation of the user’sposition. Therefore, the impreciseness of current position-ing systems should be taken into consideration during thesimulation. Since the position in modern devices is not onlydetermined by GPS sensors, but also by observing the sig-nal quality of wireless networks [18, 7, 15, 12, 11, 23], theseenvironmental features should be simulated as well. More-over, LBS might use the visibility of wireless networks toinfer logical/semantical locations [14, 11, 1] via semanticalfingerprinting [10, 30] or to calculate the geographical posi-tion [14, 16, 18, 7]. For a holistic simulation of radio signals,it is hence mandatory to simulate WiFi access points andcells as well. Recently, proactive LBS even started to sensethe activity of a mobile device user in order to optimize theenergy consumption by pausing the positioning in case theuser is not moving [27]. Hence, a comprehensive outdoorcontext simulator for LBS needs to simulate not only a po-sition with a realistic accuracy and the visible WiFi accesspoints and cells including the RSS but also the users cur-rent activity. Although these requirements are defined withrespect to LBS, they are as well applicable to context simu-lators for context-aware systems in general.

4. CONCEPTToday, there exists no world-scale environment simulator

for the interactive test, evaluation and demonstration of LBSthat fulfills all the aforementioned requirements. This canbe traced back to several reasons. First, creating a world-scale 3D environment is obviously very cost-intensive. Inaddition, it is difficult to determine during a simulation howaccurate a simulated position provided by a virtual GPSsensor should be at an arbitrary position on earth. Differentenvironmental factors like buildings, trees, mountains, thedilution of precision and even the local width of the Iono-sphere are highly influencing the accuracy of a position fix[17]. Another difficulty concerns the simulation of the listof visible WiFi access points, cells and Bluetooth networks.Most WiFi access points and Bluetooth networks and all cel-lular networks are privately owned, subject to change andusually unknown in advance. Moreover, the overall distri-bution of mobile stations within cellular networks and theircoverage is often a best kept secret of mobile operators sincethis reveals the quality of the infrastructure in general. Buteven if all WiFi access points, Bluetooth networks and cellstations including their emitting signal power are known in

advance in form of cell plans, it is still difficult to reliablydetermine during a simulation - based on signal propagationmodels like used in [24] and environmental factors like trees,buildings and other obstacles - if a signal is perceptible at aparticular position and how good the signal quality will be.The composition of variables is just too complex and theirinfluences almost unpredictable.

For the simulation of position-specific context, CATLESis thus not able to rely on any cell plan of WiFi accesspoints, Bluetooth networks, mobile stations of cellular net-works or mobile operator generated measurements known asbest server estimates and does not initially know anythingabout the expected accuracy of GPS at a particular place.Instead, it makes use of extensive sets of publicly availablereal-world location-annotated WiFi and cell measurements,collected in a crowdsourced manner, to determine the con-text a mobile device is supposed to sense at a particularposition within the world-scale virtual environment. Duringa simulation, it reflects the experiences other mobile deviceshad while passing the same position on earth rather thanrelying on approximations calculated based on cell plans inconjunction with radio propagation models.

However, it is computationally expensive during an in-teractive simulation to continuously determine the location-specific context comprising all the above mentioned envi-ronmental features given a large set of measurements whichcan easily rise up to more than a million crowdsensed radiosignal fingerprints. It becomes even a show-stopper in casethe simulated sampling rate exceeds the maximum rate ofrequests CATLES can cope with. The sampling rate rep-resents thereby the amount of times a context needs to besimulated per position within a particular time unit. Thesampling rate of a mobile device is usually not higher thanone time per second due to energy constraints of mobile de-vices but in case multiple contexts need to be simulated formore than one mobile device at a time, the common sam-pling rate can increase significantly. This happens especiallyin case such a service is deployed on a single server which isused by a whole development team. Hence, the huge amountof location-annotated radio signal fingerprints needs to beaggregated in such a way that they can be efficiently ac-cessed during runtime. In CATLES, the aggregation processhappens prior to any simulation and results in a fine-grainedaggregated model of world-wide radio signal fingerprints.

4.1 Preliminary ModelingFor the aggregated model, the world is being rasterized

into almost equally-sized zones with a particular level ofgrid granularity, similar to the world model introduced in[23]. Within a zone, mobile devices are assumed to sense asimilar context regardless of their position within the zone.Hence, all measurements of the same type of context withina particular zone are aggregated by calculating the individ-ual distribution function of each numerical context feature,assuming it to be normally distributed, or by enumeratingall possible outcomes of a symbolical context feature. Theresulting model consists of a finite amount of zones with itscorresponding statistics of the measured context.

Within CATLES, the world is rasterized using geohashes[21]. By using the geohash system, the world can be raster-ized into almost equally-sized rectangular zones, at differentlevels of grid granularity, with each zone bearing a uniquename in form of a single string. At the lowest level of grid

79

Page 4: CATLES: A Crowdsensing-Supported Interactive World-Scale …ubicom.snet.tu-berlin.de/.../CATLES_at_MOBILESoft2016.pdf · 2016. 5. 16. · for the interactive test, evaluation and

Figure 1: Visualization of the accuracy distributionwithin downtown Berlin, rasterized with geohashes(approx. 38,9m×19m). Accuracy of 0-15m: lightblue, 15-30m: dark blue, 30-45m: orange, >45m:red. If statistics are not shown for a geohash zone(not covered by a colored rectangle), it is lackingcrowdsensed measurements.

granularity (level 1), the world is segmented into 32 equally-sized rectangular zones, each zone bearing a unique nameconsisting of only one symbol, e.g. geohash ”U” coveringparts of the center and east of Europe. Segmenting eachzone into 32 equally-sized rectangular subzones in a recur-sive manner increases the level of grid granularity by one andcreates subzones with unique names consisting of two sym-bols, e.g. geohash ”U3” covering parts of eastern Germanyand western Poland. The segmentation can be continueduntil the preferred level of grid granularity is reached, e.g.geohash ”U336XPEW” with grid granularity level 8 coveringparts of a square in the center of Berlin. The longer the iden-tifier of the geohash, the smaller the size of the rectangulargeohash zone and the higher the level of grid granularity.

The accuracy of a position fix is generally of high interestfor proactive LBS in order to properly decide with a cer-tain likelihood whether a mobile device can be declared tobe inside or outside of a region which is associated with ageo-notification for the user. For such a purpose, positioningtechniques do not only provide a latitude and longitude asthe position fix, e.g. according to the World Geodetic System1984 (WGS84), but also an accompanying accuracy value.The accuracy is given as a radius spanning a circular regionwith the position as its center. It usually defines the zone inwhich a mobile device is expected to be located in the real-world with a certain probability, e.g. 68% for mobile deviceswith the Android operating system (as described in the An-droid documentation). Fortunately, mobile applications andtheir corresponding services that are crowdsensing WiFi andcell information are persisting the position of a measurementand the associated accuracy. This valuable location-specificknowledge is used against its original purpose to feed a fine-grained world-scale model of GPS-positioning accuracy, witha targeted grid granularity of geohash zones. For this pur-pose, the accuracy distribution including the average andstandard deviation is calculated per geohash zone based onthe measurements of that zone. A sample distribution ofthe expected GPS-accuracy within the downtown of Berlin,visualized as geohash zones (grid granularity level 8) whoseidentifier starts with the prefix ”U336X”, is shown in Figure

Figure 2: Visualization of the WiFi (red) and cell(blue) coverage within downtown Berlin, rasterizedwith geohashes (WiFi: approx. 38,2m×19m; Cell:approx. 152,9m×152,4m). Zones which are not col-ored are lacking crowdsensed measurements.

1. The low GPS-accuracy cluster in the center of the mapis located right next to one of the highest skyscrapers ofBerlin. The building is thereby most probably causing thedegradation of a GPS-receivers’ accuracy since it partly ob-scures the sky. This is a typical example of a variable that ispermanently influencing the accuracy of the GPS-receiversat this location and which should be considered even in anindirect manner during the simulation.

The world-scale coverage model of WiFi access points andcells is thereby constructed in a similar manner. For eachgeohash zone, all identifiers like BSSID’s (MAC addresses)and SSID’s for WiFi’s and cell identifiers (CI) and locationarea identifiers (LAI) for cells are extracted from the crowd-sensed measurements and stored per geohash zone (dupli-cates removed). The expected RSS of a particular WiFiaccess point or cell within a geohash zone is calculated byaveraging all measurements of that WiFi access point or cellwithin the zone, yielding to an average RSS with a standarddeviation for each WiFi access point and cell. A visualiza-tion of all geohash zones in the downtown of Berlin which areannotated with at least the aggregated statistics of a WiFiaccess point or a cell is shown in Figure 2 (grid granularitylevel 8 for WiFi access points and 7 for cells).

Although the crowdsensed location-annotated measure-ments are considered to be the ground truth for the simula-tion, they are also affected by positioning errors themselves.One might argue that this will invalidate the model con-structed above since measurements might be wrongly sur-veyed. Fortunately, the distribution of positions calculatedby a fixed GPS receiver over a period of time can be ap-proximated with a normal distribution [32]. Hence, the po-sitioning errors during the measurements can be neglectedin case a sufficient amount of measurements is collected fora given geohash zone.

4.2 ArchitectureCATLES comprises three main components: a user in-

terface for controlling a single avatar within a virtual 3Drepresentation of the world (CATLES Simulator UI ), thecore service which manages potentially multiple user inter-face sessions and all the registered mobile devices (CATLESSimulator Service) and the mobile devices in conjunction

80

Page 5: CATLES: A Crowdsensing-Supported Interactive World-Scale …ubicom.snet.tu-berlin.de/.../CATLES_at_MOBILESoft2016.pdf · 2016. 5. 16. · for the interactive test, evaluation and

Simulator UI Simulator Service Mobile Device

Services

Message

Broker

Context

Augmenter

Model

Builder

Context

Model

Virtual 3D

Environment

Controls

Web Browsers

Radio Signal

Fingerprints

Simulator

Library

Mobile

Application

Devices

Server

Crowdsourcing

Context Traces

Position Traces

Figure 3: Architectural overview of CATLES includ-ing the information flows.

with the CATLES Simulator Library (see Figure 3). It fol-lows an architectural design similar to the context simulatorsystem introduced in [6] where the environmental features amobile application under investigation is sensing are trans-parently simulated by an external service, which is interac-tively controlled by a tester, evaluator or demonstrator. Incase of CATLES, the external service is a combination ofthe CATLES Simulator UI and the CATLES Simulator Ser-vice, with both components contributing to the context thatis finally provided to the context-aware mobile applicationsunder investigation via the CATLES Simulator Library.

The CATLES Simulator UI allows a user (developer, eval-uator or demonstrator) to interactively move an avatar outof the first-person perspective through the entire virtualworld. The activity of an avatar, e.g. running or driving,can thereby be set up and dynamically changed through-out the simulation. The maximum velocity an avatar canmove within the virtual world depends on the selected ac-tivity. Moreover, the mobile operator network the avatar issupposed to use in the virtual world is configurable as well.During the simulation, the CATLES Simulator Service aug-ments the primary context given by the CATLES Simula-tor UI (position, activity and selected mobile operator net-work) with secondary context, by constantly querying theworld-scale model build beforehand. The secondary contextcomprises the expected GPS-accuracy, all potentially visibleWiFi access points and cells and the RSS of the correspond-ing radio signals.

However, in the real-world, a mobile device might miss aprobe response, e.g. because of bad signal quality. Hence,the list of visible WiFi access points and cells might be in-complete in reality. To cope with this issue, the CATLESSimulation Service can be optionally configured to randomlydelete some of the potentially visible WiFi access points andcells according to an error rate before proceeding. The re-quired error rate is determinable by comparing multiple real-world measurements with each other (see Jaccard similaritycoefficient in Section 5 for details). Moreover, the CATLESSimulator Service does not only append secondary contextto the primary context and optionally modifies it but alsouses the secondary context to modify the primary one in or-der to be more realistic. The position, as a primary context,is thereby artificially shifted by a randomly generated bias

Figure 4: Sample screenshot of the CATLES Simula-tor UI comprising the visualization of the virtual 3Denvironment in the background and the simulationcontrols (e.g. activity controls) to the left.

based on the average accuracy and its variance given as addi-tional information in the secondary context. After the con-text is processed at the CATLES Simulator Service, it willbe forwarded to the registered mobile devices. Given theCATLES Simulator Library for mobile devices, a context-aware mobile application is able to subscribe to the simula-tion service in order to receive the simulated context.

4.3 ImplementationThe CATLES Simulator UI is basically an HTML website

with an embedded Cesium4 view for the visualization of theworld-scale virtual 3D environment. 3D models of buildingsincluding their textures are provided by publicly accessiblecity model repositories as standardized CityGML files. Theuser can alternatively select to view the world with GoogleEarth or from a two-dimensional perspective from above ei-ther with Cesium or Google Maps5. In the control panel,the user can select a current activity (e.g. walking or driv-ing), the mobile operator in use and directly beam the avatarto an arbitrary position on earth. Each simulation run, de-noted as a context trace (including the adapted primary andsecondary context), can be recorded, stored and loaded as alog file and optionally be replayed at any time. This allowsa user to test multiple differently parametrized versions of acontext-aware application by using the exact same contexttrace. The CATLES Simulator UI also allows the user toload a position trace, consisting only of a sequence of lati-tude and longitude pairs, in order to simulate a particularpredefined route through the virtual world. Figure 4 showsa sample screenshot of the CATLES Simulator UI.

The CATLES Simulator Service comprises a RabbitMQ6

message broker, a CATLES Context Augmenter web ap-plication and a CATLES Model Builder application. Thelatter application makes use of the batch processing engineApache Flink7 to transform the measurements provided bymultiple crowdsourcing services into the world-scale modelfor radio signals, as introduced in Subsection 4.1. The pub-licly available OpenMobileNetwork [29] and OPENBMAP8

data sets of crowdsensed location-annotated WiFi and cell

4http://cesiumjs.org5http://maps.google.com6https://www.rabbitmq.com7https://flink.apache.org8http://www.openBmap.org

81

Page 6: CATLES: A Crowdsensing-Supported Interactive World-Scale …ubicom.snet.tu-berlin.de/.../CATLES_at_MOBILESoft2016.pdf · 2016. 5. 16. · for the interactive test, evaluation and

measurements (more than 5 million for OPENBMAP andmore than 800 thousand for the OpenMobileNetwork) areused as sample data sets within the CATLES prototype.The resulting model is stored within a PostGIS database,indexed by the unique geohash identifier. If not sufficientmeasurements are collected for a particular geohash zone, itwill not be considered in the model.

During the simulation, a CATLES Simulator UI instance,which is seen as the initial context message producer, con-nects to the RabbitMQ message broker using the SimpleText Oriented Message Protocol (STOMP) for web browsers.The RabbitMQ message broker forwards the context mes-sages directly and unmodified to the CATLES Context Aug-menter via the Advanced Message Queuing Protocol (AMQP).The CATLES Context Augmenter transforms the providedposition, comprising a latitude and longitude value, to thetargeted geohash identifier, with a constant computationalcomplexity. Given the geohash identifier, it looks up in thedatabase to get the associated radio signal statistics includ-ing the WiFi and cell identifiers for the geohash zone witha computation complexity of (O(logn)), were n denotes thenumber of geohash zones stored. In a last step, the CATLESContext Augmenter will adapt the primary context basedon the secondary if necessary and will then forward the aug-mented context back to the RabbitMQ message broker viaAMQP. Finally, the RabbitMQ message broker will forwardthe augmented context to the registered mobile devices re-spectively via the machine-to-machine connectivity protocol(MQTT). The CATLES Simulator Library installed on themobile device will receive the augmented context and pro-vides it to context-aware mobile applications which are sub-scribed to receive simulated context. Currently, the libraryis only provided for the Android mobile operating system.

4.4 SetupsDue to its flexible architecture, CATLES can be used in

four general setups. The simplest setup comprises, besidethe always required CATLES Simulator Service, a single in-stance of the CATLES Simulator UI and a single mobiledevice. Hence, the CATLES Simulator UI is used to sim-ulate the context of an avatar for a single mobile device.To link the avatar of the CATLES Simulator UI instancewith the mobile device, they both have to agree on a uniqueavatar name and session identifier. The session identifiercan be seen as the analogon of a game name from within amultiplayer game while the avatar name corresponds to thename of a player. This setup is commonly chosen in case acontext-aware mobile application needs to be demonstrated.In a more advanced setup, a single avatar may be linked tomultiple mobile devices. This setup is used in case a context-aware mobile application needs to be tested or evaluated ondifferent mobile devices like smartphones, tablets and wear-ables but under the exact same environmental conditions.Using multiple instances of the CATLES Simulator UI tosimulate multiple avatars together with a single mobile de-vice becomes necessary for the test and demonstration of e.g.friend tracker or real-time public transport applications. Inthis setup, one avatar is selected to simulate the context forthe liked mobile device while the other avatars are seen asthe social context respectively the publicly available trans-port vehicles. The same type of applications can be testedon multiple mobile devices by making use of multiple avatarsand multiple mobile devices at the same time.

Even though CATLES is mainly designed for the inter-active test, evaluation and demonstration of context-awaremobile applications it can also be used to interactively in-vestigate context-aware applications in general. For exam-ple, the mobile devices can be replaced by a single fixeddevice on which a context-aware system is installed. Exam-ples are traffic monitoring or fleet management systems forwhich multiple moving users need to be simulated interac-tively. Although CATLES does not yet support these typeof systems with a simulator library, making these type ofapplications aware of context messages originating from theCATLES Simulator Service is a strait forward developmenttask. Due to the use of the well-known MQTT communica-tion protocol, client libraries are available for all commonlyused programming languages like C, C++ or Java.

Rather than using CATLES as an interactive simulationtool, it can also be executed in batch mode. For example,it can be used to simulate the impact of connection losson the operation of a fleet management system. In such ascenario, the CATLES Simulator UI is replaced by a mi-croscopic urban traffic simulator like VEINS9 which is ableto continuously simulate the positions of all vehicles of afleet. On the other end, mobile devices are replaced by asingle fleet management system that is supposed to receivethe positions of all vehicles in order to take optimal deci-sions for freight forwarding. Since the simulated positionsof each vehicle are intercepted by the CATLES SimulatorService, the forwarding to the context consumer (the fleetmanagement system) might be stopped for a given vehicle assoon as the CATLES Context Augmenter detects that thevehicle is practically not able to communicate with the fleetmanagement system via a selected mobile operator becauseof a lack of cell coverage. In such a batch mode setup, theCATLES Simulation Service is solely used as a regular webservice which is able to augment location messages with ad-ditional secondary context information or alter their contentor stop or delay their forwarding to the context consumer.

5. EVALUATIONAn evaluation of CATLES is crucial in order to under-

stand how well the simulation performs for varying config-urable parameters, such as grid granularity and the timeinterval in which the crowdsensed measurements were col-lected. For this, the whole world-scale model of aggregatedradio signals fingerprints, in the following called CATLEScontext model, is built for each combination of grid granu-larity and time interval in order to analyze it’s goodness offit for the varying parameters. The overall analysis is doneby comparing a set of radio signal measurements originatingfrom real world crowdsensing experiments with the simu-lated environments of CATLES’ alternating context model.For this evaluation, the radio signal measurements sensedin real world experiments are considered to be the groundtruth of measurable context.

5.1 MethodologyThe evaluation process starts with a preparation phase

in which the ground truth is captured in the real world byidentically constructed LG Nexus 5 (Android 5.1) deviceswhich are connected to the same mobile operator network.Although the ground truth was collected on all devices along

9http://veins.car2x.org

82

Page 7: CATLES: A Crowdsensing-Supported Interactive World-Scale …ubicom.snet.tu-berlin.de/.../CATLES_at_MOBILESoft2016.pdf · 2016. 5. 16. · for the interactive test, evaluation and

Figure 5: Visualization of a sample trace with raster-ized geohashes for WiFi and cell coverage at Ernst-Reuter-Platz, Berlin (Wifi: approx. 38,2m×19m;Cell: approx. 152,9m×152,4m). The track length isapprox. 600m

the exact same path, differences in the sensed measurementsfor WiFi’s and cellular networks are expected. This canbe traced back to slightly varying WiFi and cell scanningintervals on the mobile devices itself as well as to varyingresponse intervals of cell towers and WiFi access points. Inorder to estimate this observational (or measurement) error,the measurement traces were recorded by foot with multipledevices which resulted in an total number of 16 measure-ment traces (sets). The similarity for each pair of sets iscompared by using the Jaccard similarity coefficient definedas the number of matching elements in two sets divided bythe total number of unique elements in these sets. It pro-vides an index between 0 (e.g. sets of WiFi identifiers aredistinct) and 1 (e.g. sets of WiFi identifiers are equivalent).According to this initial calculation the mean Jaccard sim-ilarity coefficient including all pairs of sets for network cellidentifiers is 0.700 with σ ≈ 0.199 and for WiFi identifiers0.429 with σ ≈ 0.071. As assumed, these values show ahigh volatility in the measured data sets even though theywere captured on the same path. As indicated in Subsec-tion 4.2, these Jaccard similarity coefficients can be directlytranslated into artificial error rates which can be consideredwithin the CATLES Context Augmenter web applicationduring a simulation to generate even more realistic context.

Due to the fact of weak certainty in the traces of radiosignal measurements, a sample trace out of the 16 tracesis randomly selected for the further evaluation of CATLES.The measured context of the randomly selected trace (withthe path being visualized in Figure 5) is compared againstthe context which is generated by CATLES through a sim-ulation of a walk along the exact same path. This can bedone easily by uploading the selected trace to the CATLESSimulator UI for replay. At a grid granularity of length 7,the CATLES Simulator Service is thereby relying on 36735WiFi and 1198 network cell measurements which were col-lected within the respective geohash zones (crossed by thegiven path) beforehand through crowdsensing. For the finalcomparison of sensed against simulated context traces, sev-eral performance measures have been selected. At first, theaverage GPS accuracy deviation or error is determined. Themeasured GPS accuracy in the ground truth is thereby di-

rectly compared to the context simulated by CATLES. Sim-ilar to that, the average RSS deviation is calculated whichmeasures the differences in the RSS between a measurementand CATLES’ estimation. In addition, the overlap betweensensed and estimated WiFi and mobile network cells is eval-uated by using the recall and precision measures. All per-formance measures are evaluated with varying geohash gridsizes and different time intervals which represent the timeframe in which the crowdsensed radio signal fingerprints hasbeen collected beforehand, e.g. last 12 months. Finally, theexecution times of the CATLES Context Augmenter mod-ule are measured during the process of simulation from theinitial input to the augmented output. The CATLES Con-text Augmenter is considered to be a critical componentand the potential bottleneck for the interactive character ofCATLES.

5.1.1 GPS-accuracy and RSS Error EstimationThe GPS-accuracy and the RSS deviation for cell and

WiFi signals are computed by calculating the root-mean-squared error (RMSE) between the observed values in therandomly selected sample trace and the estimated values byCATLES.

RMSE =

√√√√ 1

n

n∑i

(yi − yi)2

RMSE represents the sample standard deviation and hasbeen selected as the appropriate measure for comparing thedifferences between the values of the estimator (yi) and theactual measured values (yi). RMSE punishes large devi-ations between the observed measurements and the onesCATLES estimated which implies that situations whereCATLES performs poorly are simple to identify.

5.1.2 Identifier Similarity of WiFi’s and CellsThe evaluation process analyzes the accuracy and rele-

vance in terms of precision p and recall r and calculatesCATLES’ accuracy with the F1 score measure which repre-sents the best balance between precision and recall. The F1

score is a well-known measure for testing accuracy in statis-tical analysis and data mining. It can be interpreted as aweighted average of precision and recall and provides an onedimensional coefficient that reaches values from 1 at bestand 0 at worst. A high F1 score implies a high overlap ofcell and WiFi identifier sets between real measurements andsimulated ones. The measures are defined as follows:

p =TP

TP + FPr =

TP

TP + FNF1 = 2 · p · r

p+ r

where TP (true positives) is the number of correctly sim-ulated contexts and FP (false positives) is the number offalsely simulated contexts. FN (false negatives) is the num-ber of contexts that exist in the real world but have not beensimulated by CATLES.

5.2 ResultsThe results are gathered with ranging grid granularity be-

tween geohash length of 3 (approx. width 150 km), respec-tively 5 (approx. width 5 km) and 8 (approx. width 40 m)for GPS and cell sizes. The crowdsensed data time intervalis alternated to represent the last 6, 12, 18 and 24 months.

Figure 6 shows the error estimation for the GPS-accuracyand the RSS deviation for network cells and WiFi access

83

Page 8: CATLES: A Crowdsensing-Supported Interactive World-Scale …ubicom.snet.tu-berlin.de/.../CATLES_at_MOBILESoft2016.pdf · 2016. 5. 16. · for the interactive test, evaluation and

Figure 6: GPS-accuracy deviation and RSS devia-tion estimation for cell and WiFi.

points. The values of the RMSE for the GPS-accuracyvary with changing geohash length for the grid granular-ity, whereas the time interval has no distinguishable impacton the deviation. This matches the assumption that the av-eraged GPS-accuracy does not change over time as there isno significant infrastructure change in the satellite’s positionestimation. CATLES performs best with a grid granularityof 8 with RMSE values as low as 5.6 meters. The RMSE val-ues for a grid granularity of 3 and 4 were expected as largeareas are covered in which the GPS-accuracy deviation isevened out. The deviation between real measurements andsimulated ones in RSS for both network cells and WiFi ac-cess points is below 10 dBm. The differences in RMSEsat varying grid granularity and time intervals are low withvarieties of approx. 2 dBm.

In Figure 7 the F1 score for the similarity between simu-lated cell and WiFi access point identifiers and actual mea-surements is shown. While the cell identifier simulation per-forms well with a optimum value of 0.67 for geohash length 8and the time interval of the last 6 months, the simulation ofWiFi access point identifiers is significantly worse with opti-mum values below 0.3. In addition, the similarity for both,network cell and WiFi, decreases with smaller grid granular-ity and therefore large coverage of the grid cell surface. TheF1 score also declines when considering the time interval forthe last 24 months. Finally, the measured average executiontimes of the CATLES Context Augmenter are presented in

time interval

(months)grid granularity

(geohash length)

F1

sco

re

Cell Similarity

24

180

8127

0.2

65

0.4

643

0.6

0.8

WiFi Similarity

grid granularity

(geohash length)

time interval

(months)

24

180

812

7

0.1

6 6

F1

sco

re

5

0.2

0.3

Figure 7: Similarity of cell and WiFi identifiers be-tween simulation by CATLES and real world tracemeasured the F1 score.

Table 1. These results are based on a single-machine in-stallation10 of CATLES and show a linear increase of theexecution time according to the crowdsensed measurementstime interval. This linear increase can be handled in a scal-able manner by using horizontal scaling measures such asreplication and distribution for databases and message bro-kers.

Table 1: Average execution times for geohash lengthof eight

time interval (months) 6 12 18 24

execution time (ms) 5 5 7 10

5.3 DiscussionAccording to the aforementioned results CATLES per-

forms well for the simulation of GPS-accuracy and cellularnetworks. Through the consideration of both, the accuracyand signal strength deviation and the F1 score measures,CATLES’ preliminary parameters for the grid granularitycan be set to the geohash length 8 for GPS-accuracy, whereasthe grid granularity for network cell simulation would be setto 7. However, the low F1 score values for the WiFi iden-tifier similarity with the initially high measurement errordescribed by the Jaccard similarity coefficient has a ma-jor impact on it’s applicability as a simulated context pa-rameter. The low mean Jaccard similarity coefficient forWiFi identifiers ground truth indicates highly volatile con-text information. Especially outdated or personal hotspots

108GB RAM, SSD, Core i5 dual-core. Database not cached.

84

Page 9: CATLES: A Crowdsensing-Supported Interactive World-Scale …ubicom.snet.tu-berlin.de/.../CATLES_at_MOBILESoft2016.pdf · 2016. 5. 16. · for the interactive test, evaluation and

that can be setup by mobile devices are known issues whencrowdsensing WiFi information [22]. Nonetheless, most usecases that request the simulation of WiFi access points relyon algorithms where the presence of few WiFi identifiers isrequired, namely a good true positive rate and not theirunavailability or false positive rate. In addition, the use ofgrids for the aggregation and simulation of context informa-tion requires a trade-off between the size of the grid cellsand the amount of measurements considered per grid cell.Thus, the circumstances under which CATLES simulatesthe context environment are highly dependent on the meas-urement density of each grid cell. Larger grid cells containlikely more measurements, but are also set to be more im-precise as shown in the previous results. On the other side,higher precision in grid granularity represents more accurateresults and contains less measurements. The use of morememory space for the simulation with higher preciseness ofthe grids is crucial when considering the world-scale charac-ter of CATLES. However, the impact on memory space isdeterminable as roughly only 3% of the land surface on earthare urbanized [8]. Hence, the amount of geohash grid cellsthat need to be considered within the CATLES SimulatorService database is limited.

6. CONCLUSIONThis paper presented CATLES, a world-scale context sim-

ulator for the rapid test, evaluation and demonstration ofreactive and proactive LBS within the lab. It makes use ofpublicly available WiFi and cell measurements to simulatethe location-specific context a mobile device would sense ata particular position in the real-world, although the mobiledevice is being physically located in the lab. Instead of sens-ing the context with physical build-in sensors, as it is nor-mally done in real-world experiments, the context is beingprovided by the CATLES Simulator Service, which can beused within a context-aware mobile application by integrat-ing the provided CATLES Simulator Library. The positionof the mobile device is thereby simulated by an avatar whichcan be interactively moved from a first-person perspectivethrough a virtual 3D representation of the world.

Even though CATLES was originally developed driven bythe requirements to investigate reactive and proactive LBSin the lab, it is a beneficial and convenient tool to study theruntime behavior of all kinds of context-aware mobile ap-plications that make use of context features like WiFi andcellular networks. CATLES can even be used in a setupin which context-aware applications on fixed devices are in-vestigated. However, the quality of the simulated contextfeatures highly depends upon the quality, completeness andup-to-dateness of the crowdsensed radio signal fingerprints.Since in most cases these properties can not be guaranteedfor crowdsensed measurements, CATLES will not make real-world tests obsolete. It should rather give an impressionat an early stage of development or during a demonstra-tion of how well an LBS or context-aware application willmost probably perform in the real-world, given the simu-lated context. As a prove of practicability, CATLES wassuccessfully used for the test, evaluation and demonstrationof the context-based polling App FlashPoll11 as well as theGeofyMe App [27], a showcase application for next genera-tion proactive LBS [26].

11http://www.flashpoll.eu

7. FUTURE WORKAlthough CATLES allows the user to navigate the avatar

through the whole virtual representation of the world, con-text features like the list of available WiFi’s and cells canonly be properly simulated in regions where at least sufficientmeasurements were conducted beforehand. Otherwise, theclosest known geohash zone with valid GPS-accuracy mea-surements is used as a means to properly approximate anexpected GPS-accuracy for the position of interest. Unfortu-nately, this might lead to a non-realisitic simulated positionaccuracy in case the consulted geohash zone is located faraway from the simulated position. WiFi and cell identifieror corresponding signal strengths are even not considered atall if the zone is lacking measurements. To fill these gaps,other crowdsourced data sets for WiFi and cell network in-formation like provided by the Mozilla Location Service12

and even the best server estimates of mobile operators can beconsidered in future versions of CATLES. Moreover, recentlyintroduced low-energy Bluetooth beacons should be crowd-sensed and integrated as well since they are used especiallyfor short distance positioning. Other contextual featureswhich are measurable by mobile devices like time-dependednoise or light conditions would even broaden the scope ofuse cases for CATLES.

Another potentially valuable enhancement of CATLES isrelated to the way the measurements are aggregated. Sofar, the granularity of the grid is fixed for a given contextualfeature. Assuming a large amount of equally distributedmeasurements to be present in a certain geohash zone, thegranularity can be further increased locally - by segmentingthe respective geohash zone into 32 subsegments - in orderto fit to the local radio signal characteristics in a more ap-propriate way. Hence, rather than defining a global levelof granularity for a given context feature, the granularitymight vary depending on the density of crowdsourced mea-surements within a limited area. This should of course beweighed up with the resulting increase of computation com-plexity at runtime during the retrieval of location-specificcontext within the CATLES Context Augmenter.

Since the CATLES Simulator Library is currently onlyavailable for the Android mobile operating system, only An-droid applications can take advantage of CATLES. Never-theless, similar programming libraries for the mobile oper-ating systems iOS and Windows 10 Mobile are planned. Inaddition, the support for non-mobile operating systems inorder to test and demonstrate context-aware applications ingeneral should be considered in future versions of CATLES.Besides extending the support of more platforms, it needs tobe investigated if Wifi’s, cellular networks and the activitycan be mocked on a system-wide level rather than just fora single application. As it is already accomplished for loca-tion mocking, this would relieve the application developerfrom the small but required overhead to manually modifythe application logic in order to be susceptible for simulatedcontext.

8. ACKNOWLEDGMENTSThis work has been partly funded by the EIT Digital

FlashPoll activity and the EIT Digital High Impact Initia-tive Street Smart Retail (HII SSR).

12https://location.services.mozilla.com

85

Page 10: CATLES: A Crowdsensing-Supported Interactive World-Scale …ubicom.snet.tu-berlin.de/.../CATLES_at_MOBILESoft2016.pdf · 2016. 5. 16. · for the interactive test, evaluation and

9. REFERENCES

[1] Azizyan, M., Constandache, I., andRoy Choudhury, R. SurroundSense: Mobile PhoneLocalization via Ambience Fingerprinting. InProceedings of the 15th Annual InternationalConference on Mobile Computing and Networking(New York, NY, USA, 2009), MobiCom ’09, ACM,pp. 261–272.

[2] Baldauf, M., Dustdar, S., and Rosenberg, F. ASurvey on Context-Aware Systems. InternationalJournal of Ad Hoc Ubiquitous Computing 2, 4 (June2007), 263–277.

[3] Barton, J. J., and Vijayaraghavan, V. UBIWISE,A Simulator for Ubiquitous Computing SystemsDesign. Tech. rep., HP Laboratories, Palo Alto, 2003.

[4] Bylund, M., and Espinoza, F. Using Quake IIIArena to Simulate Sensors and Actuators whenEvaluating and Testing Mobile Services. In CHI ’01Extended Abstracts on Human Factors in ComputingSystems (New York, NY, USA, 2001), CHI EA ’01,ACM, pp. 241–242.

[5] Bylund, M., and Espinoza, F. Testing andDemonstrating Context-aware Services with Quake IIIArena. Commun. ACM 45, 1 (Jan. 2002), 46–48.

[6] Campillo-Sanchez, P., Botıa, J. A., andGomez-Sanz, J. J. Development of Sensor BasedApplications for the Android Platform: an ApproachBased on Realistic Simulation. Advances inDistributed Computing and Artificial IntelligenceJournal 4 (2013), 23–28.

[7] Chen, M. Y., Sohn, T., Chmelev, D., Haehnel,D., Hightower, J., Hughes, J., LaMarca, A.,Potter, F., Smith, I., and Varshavsky, A.Practical Metropolitan-scale Positioning for GSMPhones. In Proceedings of the 8th InternationalConference on Ubiquitous Computing (Berlin,Heidelberg, 2006), UbiComp’06, Springer-Verlag,pp. 225–242.

[8] Columbia University, CIESIN, IFPRI, TheWorld Bank, and CIAT. Global Rural-UrbanMapping Project, Version 1 (GRUMPv1): UrbanExtents Grid, 2011.

[9] Diewald, S., Roalter, L., Moller, A., andKranz, M. Towards a Holistic Approach for MobileApplication Development in Intelligent Environments.In Proceedings of the 10th International Conference onMobile and Ubiquitous Multimedia (New York, NY,USA, 2011), MUM ’11, ACM, pp. 73–80.

[10] Elhamshary, M., and Youssef, M. CheckInside: AFine-grained Indoor Location-based Social Network.In Proceedings of the 2014 ACM International JointConference on Pervasive and Ubiquitous Computing(2014), UbiComp ’14, ACM, pp. 607–618.

[11] Kim, D. H., Hightower, J., Govindan, R., andEstrin, D. Discovering Semantically MeaningfulPlaces from Pervasive RF-beacons. In Proceedings ofthe 11th International Conference on UbiquitousComputing (New York, NY, USA, 2009), UbiComp’09, ACM, pp. 21–30.

[12] Kupper, A. Location-based Services: Fundamentalsand Operation. John Wiley & Sons, 2005.

[13] Kupper, A., Bareth, U., and Freese, B.Geofencing and Background Tracking - The NextFeatures in LBS. In Proceedings of the 41th AnnualConference of the Gesellschaft fur Informatik e.V.(INFORMATIK 2011) (Berlin, Germany, Oct 2011),vol. 192, Kollen Druck + Verlag GmbH.

[14] Laasonen, K., Raento, M., and Toivonen, H.Adaptive On-Device Location Recognition. InPervasive Computing, A. Ferscha and F. Mattern,Eds., vol. 3001 of Lecture Notes in Computer Science.Springer Berlin Heidelberg, 2004, pp. 287–304.

[15] Laitinen, H., Lahteenmaki, J., and Nordstrom,T. Database Correlation Method for GSM Location.In Vehicular Technology Conf., 2001. VTC 2001Spring. IEEE VTS 53rd (2001), vol. 4, IEEE,pp. 2504–2508.

[16] LaMarca, A., Chawathe, Y., Consolvo, S.,Hightower, J., Smith, I., Scott, J., Sohn, T.,Howard, J., Hughes, J., Potter, F., Tabert, J.,Powledge, P., Borriello, G., and Schilit, B.Place Lab: Device Positioning Using Radio Beacons inthe Wild. In Pervasive Computing, H.-W. Gellersen,R. Want, and A. Schmidt, Eds., vol. 3468 of LectureNotes in Computer Science. Springer BerlinHeidelberg, 2005, pp. 116–133.

[17] Langley, R. B. Dilution of Precision. In GPS World.1999, pp. 52–59.

[18] Letchner, J., Fox, D., and LaMarca, A.Large-scale Localization from Wireless SignalStrength. In Proceedings of the 20th NationalConference on Artificial Intelligence (2005), vol. 1,AAAI Press, pp. 15–20.

[19] McGlinn, K., O’Neill, E., Gibney, A.,O’Sullivan, D., and Lewis, D. SimCon: A Tool toSupport Rapid Evaluation of Smart BuildingApplication Design using Context Simulation andVirtual Reality. Journal UCS 16, 15 (2010),1992–2018.

[20] Nazari Shirehjini, A. A., and Klar, F. 3DSim:Rapid Prototyping Ambient Intelligence. InProceedings of the 2005 Joint Conference on SmartObjects and Ambient Intelligence (New York, NY,USA, 2005), sOc-EUSAI ’05, ACM, pp. 303–307.

[21] Niemeyer, G. Geohash. http://geohash.org,Accessed: 2016-01-06.

[22] Nishio, N., Fukuzaki, Y., and Azumi, T. DetectingWi-fi Base Station Behavior Inappropriate forPositioning Method in Participatory Sensing Logs. InProceedings of the 2013 ACM Conference on Pervasiveand Ubiquitous Computing Adjunct Publication (NewYork, NY, USA, 2013), UbiComp ’13 Adjunct, ACM,pp. 665–672.

[23] Nurmi, P., Bhattacharya, S., and Kukkonen, J.A Grid-based Algorithm for On-device GSMPositioning. In Proc. of the 12th ACM Int. Conf. onUbiquitous Computing (New York, NY, USA, 2010),UbiComp ’10, ACM, pp. 227–236.

[24] O’Neill, E., Klepal, M., Lewis, D., O’Donnell,T., O’Sullivan, D., and Pesch, D. A Testbed forEvaluating Human Interaction with UbiquitousComputing Environments. In First InternationalConference on Testbeds and Research Infrastructures

86

Page 11: CATLES: A Crowdsensing-Supported Interactive World-Scale …ubicom.snet.tu-berlin.de/.../CATLES_at_MOBILESoft2016.pdf · 2016. 5. 16. · for the interactive test, evaluation and

for the Development of Networks and Communities(Feb 2005), pp. 60–69.

[25] Rodriguez Garzon, S. Situation-AwarePersonalization of Automotive User Interfaces. InAdjunct Proceedings of 4th International Conferenceon Automotive User Interfaces and InteractiveVehicular Applications (Oct 2012), pp. 15–16.

[26] Rodriguez Garzon, S., and Deva, B. Geofencing2.0: Taking Location-based Notifications to the NextLevel. In Proc. of the 2014 ACM Int. Joint Conf. onPervasive and Ubiquitous Computing (New York, NY,USA, 2014), UbiComp ’14, ACM, pp. 919–930.

[27] Rodriguez Garzon, S., Deva, B., Pilz, G., andMedack, S. Infrastructure-assisted Geofencing:Proactive Location-Based Services with Thin MobileClients and Smart Servers. In 2015 3rd IEEEInternational Conference on Mobile Cloud Computing,Services, and Engineering (March 2015), pp. 61–70.

[28] Shah, S. I. A., Ilyas, M., and Mouftah, H. T.Pervasive Communications Handbook, 1st ed. CRCPress, Inc., Boca Raton, FL, USA, 2011.

[29] Uzun, A., Neidhardt, E., and Kupper, A.OpenMobileNetwork - A Platform for ProvidingEstimated Semantic Network Topology Data. Int.Journal of Business Data Communications andNetworking (IJBDCN) 9, 4 (10 2013), 46–64.

[30] Uzun, A., Salem, M., and Kupper, A. ExploitingLocation Semantics for Realizing Cross-referencingProactive Location-based Services. In Proceedings ofIEEE 8th International Conference on SemanticComputing (Los Alamitos, CA, USA, June 2014),ICSC 2014, IEEE Computer Society, pp. 76–83.

[31] Velasquez, C., Soares, C., Morla, R., Moreira,R. S., Torres, J. M., and Sobral, P. A 3DSimulation Framework for Safe Ambient-AssistedHome Care. In Proceedings of the Fifth InternationalConference on Mobile Ubiquitous Computing, Systems,Services and Technologies (2011), pp. 61–66.

[32] Zandbergen, P. A. Positional Accuracy of SpatialData: Non-Normal Distributions and a Critique of theNational Standard for Spatial Data Accuracy.Transactions in GIS 12, 1 (2008), 103–130.

87