What should application developers understand ...

2 downloads 0 Views 180KB Size Report
Honor 7, Nokia Lumia 620 and two Apple iPhone 4S phones, which details are listed in ..... However, during the on route test the iPhones accuracy were, per se,.
Oskari Jahkola, Ari Happonen, Antti Knutas, and Jouni Ikonen. 2017. What Should Application Developers Understand about Mobile Phone Position Data. In Proceedings of the 18th International Conference on Computer Systems and Technologies (CompSysTech'17), Boris Rachev and Angel Smrikarov (Eds.). ACM, New York, NY, USA, 171-178. DOI: https://doi.org/10.1145/3134302.3134346

What should application developers understand about mobile phone position data Oskari Jahkola, Ari Happonen1, Antti Knutas, Jouni Ikonen Abstract: The paper presents a study of GPS location data provided by smartphones for the purpose of understanding what kind of physical location based issues software developers should consider while designing position aware applications. The study consists of a set of experiments, where GPS data provided by smartphones is evaluated in different setups, differentiated from each other based on signal reception environments. From the experiments, we deduct and present guidelines for the developers. Key words: mobile phone, smartphone, position, location based services, software development, GPS

INTRODUCTION Mobile phones evolved to be small computers, with multiple different communication capabilities, integrated features and technologies. Operations requiring multiple separate devices only a few years ago, can now be completed with modern smartphones. One of these features is the ability to use GPS (Global Positioning System) or generally satellite positioning to provide the phone users with location based services (LBS) [10]. The use of these features has been made effortless, with application interfaces (APIs), offered by software development platforms for the software developer’s convenience. However, there could be drawbacks in using these simple APIs, namely we should understand how e.g. GPS operates and what facts lie in the background of the received data provided by the API. Also, one of the current software development challenges [7] is the multi-platform development challenge, which results into the fact that the APIs have to be quite simple and generic. Without the knowledge, we might have incorrect assumptions of the information feed we receive from the API, and our applications might not behave in the manner that we expect them to behave. The motivation for this study is to understand the suitability and possible caveats of using smartphone GPS data for e.g. location based industrial applications or location based games. This research is continuity into GPS location accuracy and time to first fix (TTFF) research. Currently GPS is one of the most pervasive technologies in use, e.g. GPS is integrated in more than one billion smartphones world-wide [5]. We search for research about GPS limitations related to software engineering regarding data accuracy from the last five years (2012- March 2017). As a starting point, we used databases: ACM, Computer and Information Systems Abstracts, CORDIS Community Research and Development Information Service, Engineering Research Database, IEEE Xplore Digital Library, ScienceDirect (Elsevier API), SpringerLink Journals, Web of Science, Wiley Online Library. The search words, from full peer reviewed papers, were GPS software engineering (Results 8 829 hits), GPS limitations software engineering (Results 2 856 hits) and GPS limitations software development (Results 7 618 hits). The number of publications seemed high, thus a review was completed on the abstracts of the publications and it revealed that most publications were not related to our research topic. Next, a special tool [9] was used to identify the most cited papers and authors whom had published the most in this area, based on the Web of

1

Contact by e-mail: [email protected]

Oskari Jahkola, Ari Happonen, Antti Knutas, and Jouni Ikonen. 2017. What Should Application Developers Understand about Mobile Phone Position Data. In Proceedings of the 18th International Conference on Computer Systems and Technologies (CompSysTech'17), Boris Rachev and Angel Smrikarov (Eds.). ACM, New York, NY, USA, 171-178. DOI: https://doi.org/10.1145/3134302.3134346

Science Core Collection. Consequently, the results dropped to 372 hits, from which a read through of abstracts was completed to find actual relevant research to our topic. In fact, what we discovered that the research done in this field was focusing on specific solutions e.g. developing new GPS systems [8], algorithms for faster TTFF [4], Challenges in mobile app development [7], but looking at GPS based location data from an application development point of view, it seemed to be a non-research topic, or at least researched very little. This encouraged us to form the following research questions. Research questions: What are the differences in position data provided by smartphones in relation to different reception locations? How should an application developer use this information while designing location aware applications? This study has been limited to GPS based satellite positioning, as it is currently the most significant positioning system available in Finland. However, readers should note that there are other satellite positioning systems as well (in various states of development) available for smartphone positioning like GLONASS (Russia), Galileo (European Union), QZSS (Japan) and Beidou (China). Later in the introduction we describe how a receiver receives position data as well as common terminology, what factors in receiving signals and what causes delays in these signals. Following the introduction, we will explain how our empirical test was conducted, what results were gathered and what we concluded based on these results. When a GPS receiver is activated, it starts listening to data feeds from GPS satellites, which it will use to calculate position data. Receiving needed data to acquire a position fix takes time. This causes normally a notable delay, which can be up to 12.5 minutes (for the GPS receiver to receive complete orbital data from the satellites) if the receiver has no previous valid information saved into it. Most smartphones support assisted-GPS (A-GPS), which reduces [6] the initial position time delay (referred to as Time to First Fix, TTFF). However, this typically requires active data access (cellular or wlan) to contact a server to load information about satellite orbits. Earlier research, in 2008, measured 35 seconds as a typical TTFF (warm start), where A-GPS was able to reduce TTFF times to 15 seconds [11]. In this work our measurements are done without the A-GPS. Empirical testing Understanding how GPS location data could be used in smartphone applications requires insight on smartphones GPS accuracy. We selected a few test cases, based on signal reception conditions, to study the location data our smartphones are reporting. Test cases were designed for both stationary and on route settings. Stationary cases were used to understand the accuracy levels in different environments and time required to get sufficient position data. In on route cases, maximum location error levels were studied. Also, differences between devices were measured, and device data was compared to each other. For comparison studies, four different devices were used. The used devices were Huawei Honor 7, Nokia Lumia 620 and two Apple iPhone 4S phones, which details are listed in table 1. For reference data, a professional grade Trimble R2 device was used (with Trimnet VRS service to use external information to improve accuracy) Table 1: Smartphone hardware and software used in the experiments Operating system

GPS circuit

Software used to record data

Oskari Jahkola, Ari Happonen, Antti Knutas, and Jouni Ikonen. 2017. What Should Application Developers Understand about Mobile Phone Position Data. In Proceedings of the 18th International Conference on Computer Systems and Technologies (CompSysTech'17), Boris Rachev and Angel Smrikarov (Eds.). ACM, New York, NY, USA, 171-178. DOI: https://doi.org/10.1145/3134302.3134346

Huawei Honor 7

Android 5.0.2

Kirin935

Ultra GPS logger

Nokia Lumia 620

Windows 10 Mobile

Qualcomm MSM8926

GPS logger

Apple iPhone 4S

iOS 9.3.1

Qualcomm MDM6600

Tracks logger

Effect of different environments to stationary device positioning Stationary positioning was tested in 4 different environments, which were A) a high bridge above water with no bridge supports above, which will be referred to as the unobstructed environment. B) Open field (large open sky grass area), C) Urban environment, with high-rise buildings (1-5 floors) and D) a dense forest, without clear visibility into the sky. All the cases are likely scenarios for mobile device users in Northern Europe. Buildings were expected to hinder satellite visibility and add multipath signal propagation in urban environments and forest areas were expected to reduce or block signal reseption. Sites A and B were selected as reference points with good visibility to open sky. Measurements were done in Lappeenranta city area (61° N, 28° E), Finland. GPS-coordinate data was collected using software that log time, level of accuracy, number of satellites, satellite ID’s and satellite signal level data. However, satellite IDs and signal levels were not received with iOS and Windows applications. The software for different smartphones used in this study are presented in the table 1. Stationary test In these tests, the mobile device’s GPS data was compared to the GPS data point average in measurement points A, B and D, provided by the Trimble R2-device. However, in measurement point C the GPS data was compared to GPS coordinates picked from a geo location map. The mobile device data points were initially examined as scatter diagrams, with the centre point based on R2-device’s average, and the examination time frame was five minutes to be able to gather a sufficient amount of data points. In addition, every distance error was calculated compared to the R2 average, to better compare the accuracies of the devices to each other (table 2). Finally, satellite usage was compared between the devices that yielded aforementioned data. The test results were evaluated with GNSS Planning Online-tool [3] that provides information on satellite usability, DOP-values (Dilution of Precision) as well as the total electron content (TEC) that appeared in the ionosphere. DOP-values determine the quality of the satellite geometry [1]. Ideally, the positions of satellites used by a device would be individually distributed along the visibility spectre of the receiver. TEC-values determine how much scintillation is transpiring in the ionosphere medium, and results in the propagation of the signal speed, which consequently, results in location errors [1]. Location accuracy Table 2: Average differences in positions (in meters) compared to the average position of the reference device. Number of satellite used is shown in parenthesis and colour shade represents location error severity. Device \ Environment

Unobstructed (A)

Open (B)

Urban (C)

Forest (D)

Huawei Honor 7

6,3 (19)

2 (18)

22,5 (15)

7 (18)

Nokia Lumia 620

3,5

2,5

27

8

iPhone 4S (1)

5

2,5

22

5,5

Oskari Jahkola, Ari Happonen, Antti Knutas, and Jouni Ikonen. 2017. What Should Application Developers Understand about Mobile Phone Position Data. In Proceedings of the 18th International Conference on Computer Systems and Technologies (CompSysTech'17), Boris Rachev and Angel Smrikarov (Eds.). ACM, New York, NY, USA, 171-178. DOI: https://doi.org/10.1145/3134302.3134346

iPhone 4S (2)

3

3

25

5,5

Trimble-R2 (with correction)

0,07 (17)

0,07 (14)

22,5 (6)

1 (13)

Trimble-R2 (without correction)

0,25 (38)

0,60 (24)

27,5 (16)

2 (17)

The results of the unobstructed and open environment presented a rather unexpected result. Unlike the assumption, the results of the unobstructed test (environment A) were less accurate than that of the open environment (B). All devices were considerably less accurate, especially the Honor 7. The measurements were conducted on a time frame close to each other and deviations were seen in only one device. After examining the GNSS Planning Online-tool, it revealed that no signal distortion sources were present in the time of testing. Also, the R2-device provided results that were consistent with pre-measurement assumptions. The only logical explanatory conclusion is that the devices gathered several outliers, which might have been caused by the surrounding large and calm body of water that in consequence augmented the effect of multipath signal propagation. Measurement point A’s scatter diagram presented that Honor 7-device’s distribution had two separate groups, stretching from Northwest to Southwest, the latter being similar with the other devices. The larger distribution resulted in less accurate location. The Lumia 620 and the iPhones had similar distribution diagrams among each other, with accumulated data points South-westward in a radius of about 4 meters, where the Lumia and one of the iPhones were able to measure decently accurate. The data point distributions of these three devices were rather compact, but due to few outliers the average location error was increased. Contrary to the unobscured environment (point A) the Honor 7-device had the most accurate location and the most compact data point distribution in the open environment (point B). Other devices had similar even scatter of data points, around the origin, and an average location error radius of an order of 1 meter. The environment allows the devices to receive satellite signals from every compass point without having natural or man-made obstructions distorting the signal reception. The deviations of the locations diagram presented similar behaviours with almost every device having a decreasing trend over time. As in measurement point A the R2-device had a more accurate location with correction data than without, however in the open environment the difference was more remarkable being up to half a meter. In this environment, the devices almost achieve their reported theoretical maximum accuracy, which seems to be the result of minimized signal distortion sources. Moreover, better results can be explained by the cancellation of signals that are received from the smallest angle of incidence, which might contain the poorest signal quality. Cancellation is achieved naturally as obstructions in the distant horizon filter these signals, and only the signals with better signal quality will be received. Based on assumptions the urban environment would be the environment where the least accurate location data would be available, which was also the case. The mean location error was at 20 meters and, in addition every device logged significant location error eastand westward. Buildings surrounding the measurement point cause signal reception limitations and signal reflections that explain the results. Unexpectedly the R2-device showed similar results to the test devices, which likely can be explained by the signal reflections that cannot be corrected with the correction data. The results of the forested measurement point and graphs presented similar results as the open environment with a larger data point distribution. All gathered data points were scattered randomly with no clear accumulation towards any compass point. The distribution, per se, was similar as in the urban environment having the most spread distributed in the

Oskari Jahkola, Ari Happonen, Antti Knutas, and Jouni Ikonen. 2017. What Should Application Developers Understand about Mobile Phone Position Data. In Proceedings of the 18th International Conference on Computer Systems and Technologies (CompSysTech'17), Boris Rachev and Angel Smrikarov (Eds.). ACM, New York, NY, USA, 171-178. DOI: https://doi.org/10.1145/3134302.3134346

east side of the coordinate. The results were also consistent related research [12] of how consumer grade location devices perform. Every environment affected on the time to acquire the final fix. It was presumed that the unobstructed and open environment would have the shortest time durations, as they had, being 20 to 30 seconds, while the urban environment required the longest duration with up to 65 to 80 seconds. The time difference in these environments could be explained by multipath signal propagation, since due to this the location data changes frequently and significantly. In addition, since multipath signal propagation does not appear as much in forested areas, the time to final fix was less than in the urban environment having a time duration of 45 to 55qseconds. By examining the satellite usage (table 2) a recurrence can be noticed. On average the R2-device with correction data activated uses less satellites than other devices. Furthermore, even though the R2 with correction data uses fewer satellites it achieves a more accurate location, and it might appear that with the correction data device’s can use only the satellites with the best signal reception for location calculations. User position in significance to location accuracy Another stationary test was conducted to determine how the position of a user affects into accuracy (table 3). The test was divided into three parts, first, location data was acquired next to a 15 meters high building. Second, data from three meters away from the wall was gathered and finally data from 10 meters away was gathered. The test simulated an environment where a user would be navigating in an urban environment on the sidewalk next to a building, on the sidewalk next to the curb and in the middle of a street. Table 3: Effect of nearby obstacle to the positioning error Device \ distance from wall

0.3 m

3m

10 m

15,5

5

3

Lumia 620

20

7

3

iPhone 4S (1)

22

10

3,5

iPhone 4S (2)

20

8

3,5

Trimble R2

11

0,07

0,07

Honor 7

The GPS coordinates for the first measurement point (0.3 meters from a wall) was taken from a geo location map, and the results illustrate the distance errors to that point, the two other points were compared to the Trimble R2 average location point. The results presented that a user can greatly affect on the accuracy with small adjustments to their position. Percentagewise, the accuracy of the mobile devices improved by 60 to 68 % when moving three meters away from the building wall. In addition, the accuracy of the R2-device improved by 99,3 % between 0.3m and 3m points. When moving from three meters to 10 meters a significant improvement was noticed as well, with the accuracy of the mobile devices improving from 40 to 57 %, excluding the R2-device. Accuracy testing on route To better understand the mobile phone GPS position’s data behavior, for the needs of a software developer, we designed a test where the devices are run via a test route. Users often navigate from point to point, using GPS, so we simulated this by selecting a predefined test route to compare positioning accuracy in the selected environment. In this test, the

Oskari Jahkola, Ari Happonen, Antti Knutas, and Jouni Ikonen. 2017. What Should Application Developers Understand about Mobile Phone Position Data. In Proceedings of the 18th International Conference on Computer Systems and Technologies (CompSysTech'17), Boris Rachev and Angel Smrikarov (Eds.). ACM, New York, NY, USA, 171-178. DOI: https://doi.org/10.1145/3134302.3134346

location data variance of mobile devices was tested in a predetermined route by walking in the center of small city (Lappeenranta) (figure 1). The devices were placed in the front pocket of a typical backpack. The gathered data was then visualized by using Google Maps to better understand the measured route compared to the actual route. In addition, an arithmetic mean was calculated to examine the variation of distance error that occurred. Finally, the travelled distance was logged from every device (table 4).

Figure 1: Routes logged by smartphones

During the testing day, DOP-values for HDOP (Horizontal Dilution of Precision) were ideal and excellent for VDOP (Vertical Dilution of Precision). Also, the TEC-values in Finland’s longitude and latitude were minimal providing hence minimal distortion. Generally, these variables describe the quality of the signal and consequently this will reflect into the quality of the calculated location data. During the testing, satellite visibility was abundant and the devices were also able listen satellite signals east- and westward. Due to Finland’s geographical location, obtaining signals east- and westward is sometimes difficult, but during the test scenario the used devices were able to receive signals from these satellites as well and hence, improve on the quality of the gathered data. Finally, an analysis of variance was conducted to clarify if the devices had any significant differences in the mean distances. Table 4 On route positioning test results Total (km)

distance measured Arithmetic location error Location error deviation (m) (m)

Honor 7

2,04

6

0-21

Lumia 620

2,11

5,9

0-32

iPhone 4S (1)

2,33

8,7

0-33

iPhone 4S (2)

2,6

9,2

0-49

After examining the results, a considerable variation in the mobile devices was noticed. Lumia 620 measured the closest to the actual distance of 2,1 km, having measured 2,11 km and Honor 7 measuring fairly accurately as well. However, the iPhones measured a considerable amount more, due to large detours in their measured routes as seen in figure

Oskari Jahkola, Ari Happonen, Antti Knutas, and Jouni Ikonen. 2017. What Should Application Developers Understand about Mobile Phone Position Data. In Proceedings of the 18th International Conference on Computer Systems and Technologies (CompSysTech'17), Boris Rachev and Angel Smrikarov (Eds.). ACM, New York, NY, USA, 171-178. DOI: https://doi.org/10.1145/3134302.3134346

1. The iPhones also had the largest variances in distance errors due the aforementioned phenomenon, which also consequently affected the mean distance. The measured results are consistent with other researches [2][13], having a mean distance of variance of 8 to 10 m. By examining figure 1’s area 1 located on lower left corner of the figure, a significant change can be noticed in the behavior of route accuracy in all devices. The change assumably originates from transitioning to a different surrounding environment. In area 2, the surrounding area is urbanized having large buildings covering sky view in every compass point. However, transitioning from the aforementioned area to a more open environment, the devices are able to receive better signals and hence, provide more accurate route measurements. The variance of analysis results described that there was a statistically significant difference between the groups as determined by one-way ANOVA (F 12,919 > 2.38, p < .000). A Tukey post hoc test revealed that the mean distance between Honor 7 and Lumia 620 was not statistically significant (p < 0.000). The mean distance between Honor 7 and 1st & 2nd iPhone 4S was statistically significant (p < 0.000). The mean distance between Lumia 620 and 1st & 2nd iPhone 4S also was statistically significant (p < 0.000). There was no statistically significant difference between the first and second iPhone 4S measurements (p = .852). The change of device explained 4,7% of theitotalivarianceiinimeanidistances. When comparing the results of the stationary test to the on route test a peculiar exception is noticed. In the stationary tests the iPhones were comparable to the other devices accuracy. However, during the on route test the iPhones accuracy were, per se, less accurate compared to other devices. The on-route environment can explain the exception, since the urban environment produced a higher average location error for the iPhones in the stationary test as well. CONCLUSION In this paper, we examined the behavior of location data reported by smartphones. Based on our experiments we discovered, that the effect of surrounding environments to location accuracy is significant, with the urban environment having the most affect. Furthermore, correction data did assist R2 devices location data accuracy considerable, this could be done with the mobile phones as well. Applying correction data, which could allow for smaller antenna integrations, can decrease quantity of received satellite signals. The exact spot where a (related to the visibility of the satellites) user is positioned affects highly on location accuracy and the general accuracy of smartphones is not enough to be used in applications in need of high level location data accuracy. Based on the GPS data collected in the experiments, it is impossible to conclude where exactly a user is positioned, i.e. next to a wall or in between buildings. Also, there is a possibility that receiving the initial position fix might take a significant amount of time. •



Our recommendations for a software developer are: Understand the environment: a) objects block visibility to satellites and less visible satellites mean increased uncertainty of the position. b) Reflections of satellite signal from buildings or other object cause signals to travel longer distance generating error to calculated position. Understand that typical location error in urban environment is 6-9 meters with errors up to 50 meters (according to our tests). However, the applications functionality in relation to the GPS data received from APIs should be put in proportion that one cannot rely completely on the received data

Oskari Jahkola, Ari Happonen, Antti Knutas, and Jouni Ikonen. 2017. What Should Application Developers Understand about Mobile Phone Position Data. In Proceedings of the 18th International Conference on Computer Systems and Technologies (CompSysTech'17), Boris Rachev and Angel Smrikarov (Eds.). ACM, New York, NY, USA, 171-178. DOI: https://doi.org/10.1145/3134302.3134346



• • •

If possible design the application to allow the possibility of acquiring notable location error e.g. not restricting a point-of-interest into a small radius, but rather designing the point-of-interest radius to allow location errors Understand that position error can vary by the use environment and think if you can use environment information e.g. map data to know if the user is in dense forest or in urban environment, then your application could expect larger location error. If you can select position points to use (e.g. in a game) then do not place them next to walls, as error probability near walls is greater. Initial position received after activation of GPS is usually improved over a time as the device can receive wider range of satellite signals. Acknowledgement We thank Geotrim Oy, for providing the prof. grade R2 GPS device for the tests. REFERENCES

[1] El-Rabbany A., Introduction to GPS: the Global Positioning System. Artech House 2002. pp. 16-44. [2] Forin-Wiart M., Hubert P., Sirguey P., Poulle M., Performance and Accuracy of Lightweight and Low-Cost GPS Data Loggers According to Antenna. PLOS One Journal, 10(6), 2015. http://dx.doi.org/10.1371/journal.pone.0129271 [3] GNSS Planning Online tool. http://www.gnssplanningonline.com/ [4] Hassanieh H., Adib F., Katabi D., Indyk P., 2012, Faster GPS via the sparse fourier transform. In Proceedings of the 18th annual international conference on Mobile computing and networking (Mobicom '12). ACM, pp. 353-364 [5] Hepburn A., Infographic: Mobile stats & facts 2011. Digital Buzz, April 2011. [6] Jarvinen J. L., DeSalas J., Assisted GPS: A low-infrastructure approach. GPSWorld, March 2002. [7] Joorabchi M. E. , Mesbah A., Kruchten P., 2013, Real Challenges in Mobile App Development, ACM / IEEE International Symposium on Empirical Software Engineering and Measurement, DOI: 10.1109/ESEM.2013.9 [8] Juang J-C., Tsai C-T., Chen Y-H., 2013, Development of a PC-Based Software Receiver for the Reception of Beidou Navigation Satellite Signals, Journal of Navigation 66(05), DOI: 10.1017/S0373463313000271 [9] Knutas A., Hajikhani A., Salminen J., Ikonen J., Porras J., 2015. Cloud-Based Bibliometric Analysis Service for Systematic Mapping Studies. In Proceedings of the 16th International Conference on Computer Systems and Technologies (CompSysTech ‘15). DOI: 10.1145/2812428.2812442 [10] Küpper A., 2005, Location-Based Services: Fundamentals and Operation, Wiley, ISBN: 978-0-470-09231-6, pages 386 [11] Lehtinen M., Happonen A., Ikonen J., Accuracy and time to first fix using consumer-grade GPS receivers, 16th International Conference on Software, Telecommunications and Computer Networks, 2008. pp. 334-340 [12] Wing M., Eklund A., Kellogg L., Consumer-Grade Global Positioning System (GPS) Accuracy and Reliability. [13] Zandbergen P., Barbeau S., Positional Accuracy of Assisted GPS Data from HighSensitivity GPS-enabled Mobile Phones, The Journal of Navigation, Vol. 64, no 3, July 2011.