Identifying Specific Spatial Tasks through Clustering and Geovisual Analysis Ali Tahir
Gavin McArdle
Michela Bertolotto
School of Computer Science and National Centre for Geocomputation School of Computer Science and Informatics, University College Dublin National University of Ireland Maynooth Informatics, University College Dublin Dublin 4, Ireland Maynooth, Co. Kildare, Ireland Dublin 4, Ireland Email:
[email protected] Email:
[email protected] Email:
[email protected]
Abstract—As people’s mobility has increased so too has the use of web maps and other geo-technologies for navigational purposes. Daily usage of these technologies, either embedded in smart phones or through advanced Web GIS, involves carrying out specific spatial tasks. Such spatial tasks can be of various types, context and also consider the physical environment in which the task is being performed. By capturing and analysing users map interactions, common behaviour along with interests and dislikes can be identified and used as a basis on which to study map personalisation and adaptation. Completing a spatial tasks essentially corresponds to a mouse trajectory represented as a series of mouse cursor positions on a web map. The challenge is to extract meaning from this spatio-temporal dataset. With the synergy of exploratory visualisation and data-mining techniques, we present a novel approach to automatically identify and validate a number of spatial tasks forming complex mouse trajectories within a given study area. The task validation justifies trajectory clustering techniques as well as assisting in attaching semantics to the visual interpretation. This research opens further avenues for studying map personalisation. Keywords—spatial tasks; mouse trajectories; user profiles; spatial clustering; OPTICS clustering; Web GIS
I. I N T RO D U CT I O N The increasing mobility of humans and simultaneous growth of geospatial technologies have had a profound impact on society behaviour. As a result portable devices, such as smart phones, have been embedded with technology required by the mobile population (GPS, cameras and the internet). Similarly, smart applications from the geographic domain such as web maps and Location-based Services (LBS) have been adapted for a population on the move. Furthermore, familiar terms such as Location-based Social Networks (LBSN), Geosocial Networks (GSM) and Volunteered Geographic Information (VGI), chart the evolution of the social network to a mobile platform, where people share geographic information about their movement. In all cases, the applications generate large volumes of user data which can be classed as Geographic Information (GI) and contribute to the generation of large spatio-temporal datasets. When users interact with such data via web-maps the volume of data displayed can be overwhelming. As a result, there is a genuine need to adapt web map content through recommendation and personalisation. In order to achieve this, user interactions with a map, which generate trajectories via eye and mouse movements, can be visually
analysed to gain insight into user behaviours and determine their interests. Movement data is generally described by a trajectory which is a series of geographic points with associated time-stamps. This data can be broadly classified into free movement [1] [2], constrained movement with respect to some network [3][4] and indoor movement [5]. As the movement patterns differ depending on context, analysis of the movement data has to be adapted accordingly. For example in case of a car user, the road characteristics have to be considered while the underlying terrain for pedestrian and animal movement is important. Movement data is not limited to the physical environment. Mouse, eye and touch gestures on a computer screen are all forms of movement which generate specific trajectories. When interacting with a spatial application, such as a web map, these trajectories can be analysed to examine HumanComputer Interaction. In our scenario, we are interested in studying the mouse movements (a type of free movement) of users interacting with a web map application. The resulting trajectories can be represented as: MouseTraj → {x, y, time, scale} where scale represents the zoom level of the map at a given time. Map scale provides additional information about a trajectory (for example, where a particular sequence of mouse pointers were recorded). Furthermore, a trajectory can also have associated semantics such as the region or area where it was recorded [6] [7]. Our research focuses on mouse trajectories which correspond to spatial tasks performed by single or multiple users. A spatial task can be a simple locate and find task or a more complex task based on a scenario. Irrespective of the task, a user has to perform navigation on a map in order to locate and identify map items. This navigation generates movement patterns which reveals their intentions. Over a period of time, user interactions generate huge datasets, especially when several users over multiple sessions are considered. These trajectories can be visualised in order to gain insight into user behaviour, however classical visualisation techniques cannot deal with such massive datasets as cluttering and occlusion can occur. The field of Geovisual Analytics [8] is concerned with developing specific techniques that can support the visualisation of such large spatio-temporal datasets through methods such as clustering and aggregation. The visual analysis of the
results facilitates the identification of patterns, interests and assists in attaching semantics to trajectories. In this paper we present a visual analysis approach supported by trajectory clustering to deal with a mouse movement dataset obtained by recording user actions as they completed specific spatial tasks. The spatial tasks are validated using visualisation and clustering techniques. The results show that our approach is effective for clustering mouse trajectories in order to identify specific types of spatial tasks through a geovisual approach. The paper is organized as follows. Section II presents some related work. Section III discusses the characteristics of a mouse trajectory while Section IV presents the spatial tasks used in our evaluation. Section V elaborates on experiments and related discussion. Finally conclusions and direction for future work are listed in Section VI. II. R E L AT E D W O RK This section considers implicit user profiling, geovisual analytic tools, especially those for analysing movement datasets, and techniques for determining the similarity of trajectories and clustering which are all relevant to the techniques which we utilise. Implicit profiling, unlike explicit profiling, consists of the system unobtrusively monitoring user interactions with an underlying interface. The data obtained then permits the personalisation of information. Implicit profiling is successfully employed in several (non-spatial) Web-based systems where user actions such as bookmarking, link clicking and printing act as indicators of interest in web-page content [9]. Similar interest indicators have been identified recently in the spatial domain via interactions (clicking, mouse resting positions) with map interfaces and content [10], [11]. In our work we support the building of user profiles by visually analysing web map usage patterns and provide suitable visualisation methods to present personalised contents to users based on their implicitly generated profiles. Mouse interactions are a good indicator of interest and previous research in the analysis of mouse interactions with maps produced a stand-alone research prototype, GIIViz, which focussed on adapting map content based on the mouse clicks from a single user [11]. We extend this work and incorporate mouse trajectories as an element of user interaction analysis. Our tool VizAnalysisTools [12] incorporates GeoVisual Analytics for trajectories from single as well as multiple users by exploiting new visualisation techniques and applying spatial clustering and aggregation algorithms. Preliminary work was performed in [13], where an approach was presented to show how the mouse trajectories can be clustered. CommonGIS is another tool for exploratory data analysis and has specific modules for movement datasets [14]. SECONDO 1 is an open source generic Database Management System (DBMS) which can implement various data models. It consists of three main components, a kernel, a query optimizer 1 http://dna.fernuni-hagen.de/secondo/
and a Graphical User Interface (GUI). It has proved to be a good tool for analysing moving objects. While these tools provide stand-alone platforms or limited web capability, we offer an interoperable and web service architecture to deal with movement data analysis. Determining appropriate similarity metrics for comparing multi-characteristic trajectories as well as appropriate techniques for clustering are important areas of research at present. While the general structure of trajectories are the same (latitude, longitude, time-stamp), they can differ in their characteristics (shape, size, volume, semantics and spatiotemporal descriptors). Clustering methods, applied to various data involving multiple dimensions, can be categorised as partitioning, hierarchical, density-based, grid-based, modelbased, constrain-based and clustering high-dimensional data [15]. Several clustering techniques have been studied for determining trajectory similarity [16]. Density-based trajectory clustering [17], trajectory segmentation and sampling [18], partition and group framework for discovery of common subtrajectories [19], trajectory clustering based on future generation framework [20] and spectral clustering [21] represent the commonly used approaches. When trajectories are collected in real time, they usually suffer low resolutions of measurements, which make noise tolerance a highly considerable feature [17]. Each technique has its own capability to deal with various parameters and such variability. In the case of mouse trajectories, we found density-based clustering methods to be efficient for finding noise and outliers as well as discovering clusters of an arbitrary shape which are apparent features of mouse trajectories. In particular, we have opted to apply Ordering Points To Identify the Clustering Structure (OPTICS) [22], a widely used density-based clustering method from DBSCAN family, to analyse mouse trajectories. The distance function required to determine the similarity between trajectories is an important input to any clustering algorithm. Morris and Trivedi [16] have evaluated several approaches including: distance similarity metrics based on fixed length measures called Principle Component Analysis (PCA) subspace and Hu euclidean, time-normalised distances which are also suitable for trajectories of unequal length called longest common subsequence, dynamic time warping, and modified hausdorff. We have adapted a common destination distance measure [17] for our specific case to deal with mouse movements. However we term ’common destination’ as ’close destination’ as mouse movements are very random. In the real situation it is difficult to assume that a mouse trajectories of different users will exactly rest at the same location in the same way that pedestrians might end up in the same building upon completing a specific task. Therefore a more liberal description of a common destination is required. III. M OU S E T RAJE CTO RI E S A. Overview A mouse trajectory is formed as a result of user interaction with a map. The positions of the mouse cursor are recorded and related events are logged and stored in a spatial database.
B. Clustering Mouse Trajectory Database
User sessions/ spatial tasks
Clustering and Aggregation Web Service
Visualisation Web Service
Pattern Identification
Figure 1.
Decision Making
Visual Semantics
A geovisual trajectory clustering approach TABLE I. S PAT I A L
Task No
Users Interaction History
1 2
Task Type STLS STLS
3
STLO
4
STLO
5
STLO
6
STLI
7
STLD
8
STLS
9
STLS
10
STLO
TA S K S
Task Name How many motor ways are there in Ireland Find the total number of exits on M50 motorway in Dublin Name the southern cities of Ireland starting with letter ’W’ Write the names of areas close to the starting and ending of M50 motorway in Dublin Which is the nearest hospital to Heuston train station in Dublin Name the possible tourist attraction closest to Saint Stephen’s Green Park in Dublin city center What is the name of the largest park in Dublin Write the total number of bridges on Liffey River in Dublin starting from Grattan bridge towards the eastern coast How many vehicle entrances are there on the University College Dublin (UCD) campus. UCD is located on N11 in south Dublin Locate Connolly train station in Dublin. What is the name of the nearest canal to this station
The additional attributes which are captured along with the mouse positions are a time-stamp for each location, the speed in pixels per seconds, the duration of mouse pause (rest) at each position and the map scale where the given position was recorded. These additional parameters are significant when studying map personalisation. They can reveal users’ interests in a particular portion of a map and classify users (novice, experienced, etc.). Rendering a mouse trajectory can be challenging due to dynamic nature of users interest. For example, when a user moves the mouse cursor off a map to toggle between various geographic layers, a gap between the subsequent mouse cursor positions is created and techniques to overcome this are required. In such a situation it may be advantageous to visualise the relationship between map and non-map movements to gain a deeper insight into user intentions.
The movement of a mouse trajectory can be termed as free movement which is not constrained by an underlying network. Therefore it is quite likely that the generated data will be large and contain a certain amount of noise. With the help of a Geovisual tool which we developed [12], the geographical extent of mouse trajectories can be visually analysed on a web map along with other statistical data (mouse speed, mouse hesitation and map scale). However, large datasets may clutter the visual display and hence visualisation alone cannot tackle this situation. To resolve this, Geovisual Analytics [8] are required. For our purpose we have opted to choose the OPTICS [22] clustering algorithm. This technique locates a core distance and reachability distance of an object (trajectory in our case) with respect to its predecessor. This technique produces an ordering of the dataset which can be seen with the help of a graph called a reachability plot (Fig. 2). Additionally, it stores a core distance and a reachability distance. The xaxis shows the number of objects in a database while the y-axis presents a reachability distance. From this interactive and intuitive graph, clustering can be obtained by choosing an appropriate threshold value of reachability distance on which to group trajectories. C. Approach A geovisual trajectory clustering approach is illustrated in Fig. 1, while a detailed architecture and description are presented in [12]. User interaction history is recorded and stored in a spatial database as the user interacts with a web map. Due to the use of an interoperable web architecture, web services can request user sessions in the form of mouse trajectories from the database. At the next level, mouse trajectories are stored with their associated spatio-temporal information as well as characteristic information such as map scale, speed and duration. The visualisation web service can request any number of users and their corresponding sessions to visualise. Similarly, the clustering and aggregation service provides mechanisms to perform classification of mouse trajectories. All the aggregated clusters can be visualised simultaneously which helps inform decision making for the analyst. Furthermore, patterns can be visually identified and semantics attached with the help of the tool. IV. S PAT I A L TA S K S Spatial tasks can be broadly categorised into a search and locate task, an orientation task, deciphering, symbol meaning, a route finding task and a more complex scenario based task consisting of series of subtasks [23]. Additionally, map navigation tasks can also be categorised as Precise versus Fuzzy tasks [24]. Precise navigation tasks can be completed non-visually where a map is the product of the user’s request. On the contrary, fuzzy navigation tasks are completed visually where a map is the tool for completing the users request. Due to the awareness and availability of geo-spatial and mobile technologies it has become more popular for the general public to perform routine map navigational tasks.
Figure 2.
A reachability plot showing valleys in the graph depict good density clusters. The non-valleys show less dense clusters
For our purpose we have designed ten spatial tasks and divided them in four distinct categories. Spatial Task Locate and Scan (STLS) defines spatial tasks which involve locating geographical objects while scanning and navigating on a map in order to find the answer. The second type is termed as Spatial Task Locate with respect to Orientation (STLO) where the objective is to locate an item with the help of an orientation, for example considering directions (such as to locating an item north of object X). The third type is called Spatial Task Locate Interest (STLI) where a task is open ended and users provide an answer based on their interest. This category is interesting as users are explicitly asked to show their interests with the help of map browsing actions. The final category is Spatial Task Locate and Decipher (STLD) where an item has to be located based on deciphering (process to decode an object). For example, this relates to the characteristics of geographical objects such as largest, smallest and nearest. Our main aim is to observe and investigate usage patterns based on these spatial tasks. There may be additional types of spatial tasks which can be included however the ten tasks we have defined (Table. I) are sufficient to study mouse movement patterns. To complete and answer the spatial tasks, the users interacted with a Web-based map. They were free to perform navigation in their own style using standard map operations as the whole process was unsupervised. The spatial tasks were carefully chosen to clearly convey the goal of each task. Furthermore, they were designed to include a variety of user interactions. Table. I shows the type of tasks and their complete description.
V. E X P E RI M E N TA L R E S U LT S A N D D I S CU S S I O N A. Experiment Setup Ireland was selected as the study area due to the authors’ familiarity with it and their ability to design meaningful spatial tasks as a result. The spatial tasks were distributed across the complete Irish map, however the majority of spatial tasks were designed involving the city of Dublin, due to the complex nature of the road network and quantity of spatial features. Most of the test subjects who participated in experiments were physically located in Dublin however not necessarily familiar with its geography. The central goal of the study is to analyse mouse trajectories (corresponding to specific spatial tasks) in order to infer how users perform such tasks. Feedback was collected after the tasks which provides additional indicators such as familiarity with the map and the given study area. This feedback can be correlated with the results of the tasks. The experiments were conducted using a web platform which records every mouse movement and interaction with the map. The trials were carried out unsupervised as opposed to a controlled environment. This removes pressure from participants and the feeling that they need to meet certain expectations, which are issues with supervised experiences such as Think Aloud [25]. A total of 12 participants (10 males and 2 females) volunteered for this trial, 11 had previously used interactive web maps such as Google Maps. For this trial we wish to collect meaningful interaction data which is reflected in the choice of mostly users with web map experience. Of the 120 tasks completed by participants, 117 were used for evaluation purposes. In some sessions participants knew the answers immediately and did not perform navigation for a particular task and so these tasks were removed from our analysis. The remaining data was stored and analysed using the approach discussed above. B. Clustering Algorithm Parameters
Figure 3. All trajectories visualised Figure 4. Clustered mouse trajectories
To cluster the data, the OPTICS clustering algorithm requires two parameters in order to generate the results. The first one is a distance threshold (ɛ), while the second is the minimum neighbours (minNbs). The distance threshold determines how close two trajectories are from each other. The minimum neighbours on the other hand are the minimum number of objects which should form a cluster. The larger the
Figure 5. Clusters correspond to spatial tasks a) Task 5 b) Task 10 c) Task 6 d) Task 7 (See Table. I)
Figure 6. Clusters correspond to spatial tasks a) Task 9 b) Task 3 c) Task 2 , 4 and 8 d) Task 1 (See Table. I)
Figure 7.
Cluster cardinalities relative to spatial tasks
value of these two parameters, the better the results that are returned [22]. Based on the reachability plots and statistical information, we selected a distance threshold value of 100 kilometres and minimum neighbours of 5 as input to clustering algorithm. The large distance threshold is required since the spatial tasks involved interacting with a map of the whole island of Ireland. C. Visual Analysis User interaction data corresponding to the mouse trajectories for all completed tasks is shown in Fig. 3. Clustering was applied to resolve the cluttered nature of the display while also classifying the trajectories. Based on the input parameters discussed in Section V-B, the OPTICS clustering algorithm produced the reachability plot illustrated in Fig. 2. This plot shows the re-ordered mouse trajectories on the x-axis while the y-axis presents associated reachability distances. The noticeable features in the plot are the four valleys which show the density of data. These valleys correspond to clusters which represent several spatial tasks. Fig. 4 presents the classified trajectories after clustering was performed. Similar groups were assigned the same colours for visualisation purposes.
While this image marginally improves the cluttering issue, it is still difficult to solicit meaning and classify trajectories. However, since all clusters are represented as Keyhole Markup Language (KML) layers, they can be toggled on and off using a layer view. For visual interpretation, it is advantageous to show a subset of the trajectories at a time by switching layers on and off. Fig. 5 and 6 provide more semantic information when visualised at certain map scales such as an identification of a location or area where there is a more user activity on a map. This visual semantic approach assists in spatial task verification. Additionally, we can clearly observe that the clusters are obtained based on trajectory density. Fig. 7 illustrates a bar chart showing the number of trajectories (cardinalities) on the y-axis, while the x-axis shows the cluster number and the associated spatial task which the trajectories in a given cluster predominantly belong to. In total there were 12 users and 10 spatial tasks so that each task contains 12 trajectories. Therefore, in an ideal situation, 10 clusters, each containing 12 trajectories (as its cardinality) should be revealed in order to validate the tasks. However, only 117 trajectories were usable and this is reflected in the results detailed below and in Fig. 7. Fig. 7 presents four clusters (3, 4, 5, 7) corresponding to spatial task (5, 7, 9, 3) as shown in Table. I with cardinalities (8, 9, 10, 11) respectively. These four clusters are also evident as four valleys in the reachability plot (see Fig. 2) and show that in these 4 cases, the approach very successfully grouped similar spatial tasks together. Although there is some misclassification, clusters (1, 2, 8) with cardinalities (16, 16, 18) correspond to specific spatial tasks due to predominance of trajectories from spatial tasks (6, 10, 1) respectively in these clusters. Cluster 8 (task 1), according to the reachability plot contains noise. Task 1 involved finding the total number of motorways in Ireland. Due to the nature of this task,
trajectories were widely spread around the map of Ireland (see Fig. 6 (d)) and hence they did not fulfil the clustering input parameter requirements and so were termed as noise according to OPTICS. Despite the presence of noise, the clustering technique was successfully able to verify the spatial task. The maximum number of trajectories (29) are observed in cluster 6. This cluster (see Fig. 6 (c)) corresponds predominantly to spatial tasks 2 and 4 with some trajectories from task 8. This was caused due to overlap in the area in which these spatial tasks took place. VI. C O N CL U S I O N A N D F U T U RE W O RK User interactions in the form of mouse trajectories can reveal users interest and dislikes. These behaviours are very relevant for map personalisation. In this paper we demonstrated a spatial task validation approach with the help of geovisual trajectory clustering. Our technique proved to be effective and successfully grouped 117 trajectories into 8 clusters based on their spatial closeness. The clusters correspond to the tasks which were used to generate the trajectories. The scenario can be made more powerful with the addition of temporal similarity metrics and ideally, a combination of both approaches will reveal users’ similarity. The approach currently relies on a manual stage where the clusters are visually identified from the valleys in a reachability plot. We would like to explore automatic techniques to extract such information. Additionally, we aim to perform clustering analysis on multiple map scales unlike the scale invariant approach. Progressive clustering will also be applied to find similarities between each spatial task by applying several distance measures [17]. ACK N OW L E D G M E N T Research presented in this paper was funded by a Strategic Research Cluster grant (07/SRC/I1168) by Science Foundation Ireland under the National Development Plan. The authors gratefully acknowledge this support. REFERENCES [1] R. Gu¨ting, M. Bo¨hlen, M. Erwig, C. Jensen, N. Lorentzos, M. Schneider, and M. Vazirgiannis, “A foundation for representing and querying moving objects,” ACM Transactions on Database Systems (TODS), vol. 25, no. 1, pp. 1–42, 2000. [2] L. Forlizzi, R. Gu¨ting, E. Nardelli, and M. Schneider, A data model and data structures for moving objects databases. ACM, 2000, vol. 29, no. 2. [3] L. Speicˇ vcys, C. Jensen, and A. Kligys, “Computational data modeling for network-constrained moving objects,” in Proceedings of the 11th ACM international Symposium on Advances in Geographic Information Systems. ACM, 2003, pp. 118–125. [4] H. Gu¨ting, T. de Almeida, and Z. Ding, “Modeling and querying moving objects in networks,” The VLDB Journal, The International Journal on Very Large Data Bases, vol. 15, no. 2, pp. 165–190, 2006. [5] C. Jensen, H. Lu, and B. Yang, “Indexing the trajectories of moving objects in symbolic indoor space,” Advances in Spatial and Temporal Databases, pp. 208–227, 2009. [6] V. Bogorny, B. Kuijpers, and L. Alvares, “St-dmql: a semantic trajectory data mining query language,” International Journal of Geographical Information Science, vol. 23, no. 10, pp. 1245–1276, 2009. [7] C. Lu, P. Lei, W. Peng, and I. Su, “A framework of mining semantic regions from trajectories,” in Database Systems for Advanced Applications. Springer, 2011, pp. 193–207.
[8] G. Andrienko, N. Andrienko, U. Demsar, D. Dransch, J. Dykes, S. Fabrikant, M. Jern, M. Kraak, H. Schumann, and C. Tominski, “Space, time and visual analytics,” International Journal of Geographical Information Science, vol. 24, no. 10, 2010. [9] D. Kelly and J. Teevan, “Implicit feedback for inferring user preference: A bibliography,” in ACM SIGIR Forum, vol. 37(2). ACM, 2003, pp. 18–28. [10] M. Brunato and R. Battiti, “PILGRIM: A location broker and mobilityaware recommendation system,” in Proceedings of the First IEEE International Conference on Pervasive Computing and Communications. IEEE, 2003, pp. 265–272. [11] E. Mac Aoidh, M. Bertolotto, and D. Wilson, “Understanding geospatial interests by visualizing map interaction behavior,” Information Visualization, vol. 7, no. 3, pp. 275–286, 2008. [12] A. Tahir, G. McArdle, and M. Bertolotto, “A web-based visualisation tool for analysing mouse movements to support map personalisation,” in Proceedings of the First International Workshop on Spatial Information Modeling, Management and Mining (SIM3) (in conjunction with DASFAA2011). LNCS, Springer, 2011, pp. 132–143. [13] A. Tahir, G. McArdle, and M. Bertolotto, “Visualising user interaction history to identify web map usage patterns,” in 14th AGILE International Conference on Geographic Information Science, Advancing Geoinformation Science for a Changing World, Utrecht, The Netherlands, April 2011. [14] G. Andrienko, N. Andrienko, and H. Voss, “Gis for everyone: the commongis project and beyond,” Maps and the Internet. Elsevier Science, pp. 131–146, 2003. [15] J. Han, Data Mining: Concepts and Techniques. San Francisco, CA, USA: Morgan Kaufmann Publishers Inc., 2005. [16] B. Morris and M. Trivedi, “Learning trajectory patterns by clustering: Experimental studies and comparative evaluation,” in IEEE Conference on Computer Vision and Pattern Recognition, 2009. CVPR 2009., june 2009, pp. 312 –319. [17] S. Rinzivillo, D. Pedreschi, M. Nanni, F. Giannotti, N. Andrienko, and G. Andrienko, “Visually driven analysis of movement data by progressive clustering,” Information Visualization, vol. 7, no. 3, pp. 225– 239, 2008. [18] C. Panagiotakis, N. Pelekis, I. Kopanakis, E. Ramasso, and Y. Theodoridis, “Segmentation and sampling of moving object trajectories based on representativeness,” IEEE Transactions on Knowledge and Data Engineering, 2011. [19] J. Lee, J. Han, and K. Whang, “Trajectory clustering: a partitionand-group framework,” in Proceedings of the 2007 ACM SIGMOD international conference on Management of data. ACM, 2007, pp. 593–604. [20] J.-G. Lee, J. Han, and X. Li, “Trajectory outlier detection: A partitionand-detect framework,” in Proceedings of the International Conference on Data Engineering (ICDE), 2008, pp. 140–149. [21] S. Atev, O. Masoud, and N. Papanikolopoulos, “Learning traffic patterns at intersections by spectral clustering of motion trajectories,” in Intelligent Robots and Systems, 2006 IEEE/RSJ International Conference on. IEEE, 2006, pp. 4851–4856. [22] M. Ankerst, M. Breunig, H. Kriegel, and J. Sander, “Optics: ordering points to identify the clustering structure,” in ACM SIGMOD Record, vol. 28, no. 2. ACM, 1999, pp. 49–60. [23] A. Lobben, “Tasks, strategies, and cognitive processes associated with navigational map reading: A review perspective*,” The Professional Geographer, vol. 56, no. 2, pp. 270–281, 2004. [24] M. Harrower and B. Sheesley, “Designing better map interfaces: A framework for panning and zooming,” Transactions in GIS, vol. 9, no. 2, pp. 77–89, 2005. [25] M. W. Van Someren, Y. F. Barnard, and J. A. C. Sandberg, The think aloud method: A practical guide to modelling cognitive processes. Academic Press Limited, 1994.