Abstract
Given a set of facilities F and a query point q, a k-farthest neighbor (kFN) query returns the k farthest facilities from q. This study considers the moving k-farthest neighbor (MkFN) query that constantly retrieves the k facilities farthest from a moving query point q in a road network. The main challenge in processing MkFN queries in road networks is avoiding the repeated retrieval of candidate facilities as the query point arbitrarily moves along the road network. To this end, this study proposes a moving farthest search algorithm (MOFA) to compute valid segments for the query segment in which the query point is located. Each valid segment has the same k facilities farthest from the query locations in the valid segment. Therefore, MOFA retrieves candidate facilities only once for the query segment and computes valid segments using these candidate facilities, thereby avoiding the repeated retrieval of candidate facilities when the query point moves. An empirical study using real-world road networks demonstrates the superiority and scalability of MOFA compared to a conventional solution.
1. Introduction
Given a positive integer k, query point q, and set of facilities F, the k-farthest neighbor (kFN) query retrieves the k facilities farthest from the query point q, whereas the k-nearest neighbor (kNN) query retrieves the k facilities closest to the query point q. kFN queries are the logical opposite of kNN queries. This study considers moving k-farthest neighbor (MkFN) queries in road networks. MkFN queries constantly retrieve the k facilities farthest from a moving query point q. The kFN search has real-world applications, including computational geometry, artificial intelligence, pattern recognition, and information retrieval methods [1,2,3,4,5,6,7,8,9,10,11,12]. A farthest neighbor (FN) search specifically determines the smallest radius of a circle centered on a point q that covers all facilities. Consider a real-world scenario involving a team of commandos on a mission in which the leader requests that no member of the team should be more than 1 km away from him. Naturally, the leader should pay close attention to the farthest team members to monitor their activities and ask them not to move too far away. As another example of the FN search, locating obnoxious facilities such as waste incinerators is often performed in a manner that will maximize the distance between residential areas and these facilities.
Given a positive integer , the moving query point q, and set of five facilities (Figure 1), the MkFN query should constantly retrieve the two facilities farthest from the moving query point q in the road network. Suppose that the query point q locations at timestamps and are represented by and , respectively. and are the two facilities farthest from , and and are the two facilities farthest from . A simple solution for MkFN queries in road networks involves computing the network distance from a query point q to each facility f in F. An additional time is required to retrieve the k facilities farthest from q. However, this simple solution cannot be used in practical applications because kFN queries should be regularly evaluated to refresh the query results while q moves continuously. Therefore, this study proposes a moving farthest search algorithm called MOFA that enables the efficient evaluation of MkFN queries in road networks. MOFA computes the valid segments for the query segment in which the query point q moves such that it does not repeatedly retrieve candidate facilities whenever q moves. To this end, MOFA quickly retrieves the candidate facilities for the query segment and computes the valid segments using the candidate facilities. Each query location in the valid segment has the same k facilities farthest from the query location.
Figure 1.
Example of MkFN queries in a road network.
Figure 2 presents an example of an MkFN query, where q moves along query segment . First, the moving query point q submits a query segment to the location-based service (LBS) server, instead of the current q location. Next, the LBS server returns a set of valid segments for , where each valid segment has the same k facilities farthest from each query location in the valid segment. This study assumes that query points (e.g., vehicles and pedestrians) move, while facilities (e.g., garbage incinerators and chemical plants) are stationary. To the best of our knowledge, this is the first attempt to study the efficient processing of MkFN queries in road networks.
Figure 2.
Interaction between the moving query point q and location-based service (LBS) server while q moves along .
The main contributions of this study are summarized below.
- This study proposes MOFA to compute valid segments for the query segment in which a query point moves.
- MOFA retrieves candidate facilities once and has a stable query processing time that is independent of the query frequency.
- An extensive empirical evaluation is performed using real-world road networks to demonstrate the superiority of MOFA compared to a conventional solution.
The remainder of this paper is organized as follows. Section 2 reviews the related research. Section 3 describes the MkFN query problem and notation used in this study. Section 4 describes the clustering of facilities and calculation of distances between facility clusters and a border point. Section 5 presents MOFA for MkFN query processing in road networks, and Section 6 evaluates an example of MkFN query using MOFA. Section 7 presents the empirical results obtained using MOFA and conventional algorithms with different setups, and Section 8 summarizes our conclusions.
2. Related Works
Many studies have been conducted on the efficient processing of spatial queries based on the FN search [1,2,3,4,5,6,7,8,9,10,11,12].
- Reverse FN (RFN) query [3,4,5,7,8,9,13]. Given a set of facilities F and a query point q, an RFN query retrieves the facilities in F that have q as their farthest neighbor. Recently, RFN queries have attracted increasing attention based on their applicability. Several studies have been conducted to efficiently evaluate RFN queries in Euclidean spaces [3,4,8,9,13] and road networks [5,7].
- Approximate FN query [1,10,11,14]. Given an approximation ratio c () and success probability , a c-approximate FN query retrieves the c-approximate farthest neighbors with a confidence of at least . Approximate FN search algorithms are considered acceptable in high-dimensional spaces because it is typically not feasible to return the exact farthest neighbors in a large set of points. Huang et al. [10,14] developed a reverse-query-aware locality-sensitive hashing scheme for high-dimensional c-approximate FN searches over external memory. They also proposed a heuristic variant that applied data-dependent object selection to reduce the number of data objects. Liu et al. [11] proposed a c-approximate FN algorithm called reverse incremental locality-sensitive hashing for high-dimensional data that employs a continuous search strategy for each projection dimension.
- Aggregate FN query [2,6]. Given a set of query points Q and an aggregate function (e.g., min, max, and sum), the aggregate FN query retrieves a facility f from a set of facilities F such that the aggregate distance from f to all query points in Q is maximized. Gao et al. [2] studied the aggregate FN query in Euclidean space and proposed the smallest-bounding and best-first algorithms. Wang et al. [6] presented effective solutions to aggregate FN queries in road networks.
- Moving spatial query [15,16,17,18]. Various types of moving spatial queries have been studied extensively, including kNN [15,16,17] and range [18] queries. Nutanong et al. [17] developed an incremental safe region-based technique known as the -diagram to process moving kNN queries in Euclidean space and in undirected spatial networks. Yung et al. [18] proposed an algorithm for computing the boundaries, which are referred to as safe exits, of the safe regions of moving-range queries in road networks. The associated studies considered different problem scenarios from those in our study, and their solutions were found to be inappropriate for our problem scenarios.
Spatial access methods based on Euclidean distance cannot process MkFN queries in road networks because network distance evaluation is much more expensive than Euclidean distance evaluation. Solutions for the MkNN search [15,16,17] are not applicable to MkFN query settings because MkFN queries focus on the farthest neighbors, rather than the nearest neighbors. This is an extended version of a preliminary conference report presented at the KSCI Summer Conference 2021 [19]. The preliminary conference report [19] describes the key concepts of MOFA without empirical evidence. Therefore, in this study, MOFA was thoroughly analyzed and an empirical evaluation was performed. This study also differs from our previous studies [20,21] in several aspects. Cho [20] considered kFN join queries in a spatial network. The kFN join query focuses on evaluating a snapshot of the kFN query for each query point in Q. Cho and Attique [21] presented the group processing of multiple kFN (GMP) algorithms to efficiently process multiple kFN queries in road networks. The GMP algorithm exploits shared computation techniques to rapidly process snapshot kFN queries for multiple query points with distinct query conditions. Unlike our previous studies [20,21] on snapshot kFN queries, this study focuses on computing valid segments for continuous kFN queries of a moving query point.
Table 1 compares our problem scenario with those in previous studies to identify the differences between them.
Table 1.
Comparison between our problem scenario and those of previous studies.
3. Notation and Formal Problem Description
Definition 1.
kFN query [1,2,3,4,5,6,7,8]. Given a set of facilities F, positive integer k, and query point q, the query point q retrieves the set of k facilities farthest from q, which is denoted as .
Definition 2.
MkFN query. Given a set of facilities F, positive integer k, and moving query point q, the moving query point q constantly retrieves the set of k facilities farthest from q. We assume that is a query segment in which q moves. Then, the MkFN query result can be represented as .
Definition 3.
Road network and network distance [22,23,24,25,26]. A road network G is modeled as a weighted undirected graph , where V is a set of road intersections, E is a set of road segments, and W represents the distance matrix. The network distance between q and f, where q and f are two points on G, is the sum of the lengths of the road segments along the shortest path between q and f. The terms “network distance” and “length of the shortest path” are used interchangeably.
4. Clustering Facilities and Computing Distances
Section 4.1 discusses grouping nearby facilities into clusters. Section 4.2 discusses calculating the largest and smallest distances from the border point of the query segment to a facility cluster.
4.1. Clustering Facilities into Facility Clusters
Figure 3 presents an example MkFN query q, where and . This example is used to elaborate the solution process. The example MkFN query requires that the moving query point q constantly retrieves the two facilities farthest from itself. The vertex list in which query point q moves is referred to as the query segment for q. In this example, is the query segment for q (Figure 3). For ease of identification, the query segment is shown in bold.
Figure 3.
Example of an MkFN query q in a road network.
Figure 4 illustrates the segmentation of a road network. In this figure, the intersection vertices corresponding to road intersections are marked using dashed circles. The example road network contains six intersection vertices , , , , , and . The degrees are represented by numbers in parentheses. In this study, a road network is split into vertex lists using intersection vertices. Therefore, facility segments adjacent to an intersection vertex are grouped into a facility cluster, as illustrated in Figure 5.
Figure 4.
Segmentation of an example road network using road intersections.
Figure 5.
Clustering method for grouping facilities into facility clusters: (a) grouping facilities into facility segments; (b) grouping facility segments into facility clusters.
Figure 5 illustrates the clustering method for grouping facilities into facility clusters. The clustering method first groups facilities in a vertex list into a facility segment. Adjacent facility segments are then grouped into a facility cluster. First, the facilities , , and in a vertex list are connected to form a facility segment . Similarly, the facilities and in the vertex list are connected to form a facility segment . Therefore, there are three facility segments , , and (Figure 5a). Next, the two facility segments and are connected using the intersection vertex to form a facility cluster . Therefore, a set of facilities changes into a set of facility clusters . In the proposed method, facility segments constitute a facility cluster, which is represented by a set of facility segments.
4.2. Computing Distances between a Facility Cluster and a Border Point of the Query Segment
The largest and smallest distances between a facility cluster and a border point of the query segment are computed, where . The smallest and largest distances between and are represented by and , respectively. The smallest distance between and is evaluated as , where is a border point of . However, the largest distance between and is evaluated as , where is a facility segment in , and is the largest distance between and .
The largest and smallest distances between a facility cluster and a border point of the query segment are computed using the example in Figure 5, where and . Figure 6, Figure 7, Figure 8 and Figure 9 illustrate the computations of , , , and , respectively.
Figure 6.
and .
Figure 7.
and ; (a) and ; (b) and .
Figure 8.
and .
Figure 9.
and ; (a) and ; (b) and .
Figure 6 depicts the computation of . The distances from to endpoints and of are and , respectively, because the path from to () is (). Imagine a point f in . The distance from to f is then evaluated to because the path from to f should be or . Let . Accordingly, because . The distance from to f can be represented as for . As shown in Figure 6, the largest and smallest distances from to are evaluated as and , respectively. The star sign (★) in Figure 6 is used to signify .
Figure 7 illustrates the computation. Naturally, the largest distance between and is evaluated as . Figure 7a,b present the and computations, respectively. The distance from to () is () because the shortest path from to () is (). Imagine a point f in . The distance from to f is computed as ; therefore, the largest and smallest distances from to are calculated as and , respectively (Figure 7a). The same method in Figure 6 can be used to compute the largest and smallest distances from to (Figure 7b). The detailed procedure for the largest and smallest distance computation from to is omitted for simplicity. The shortest path from to () is (), and the distance from to () is (). Therefore, the largest and smallest distances between and are computed as and , respectively.
Figure 8 demonstrates the computation. Note that the shortest path from to () is (), and the distance from to () is (). The same method in Figure 6 can be used to compute the largest and smallest distances from to (Figure 8). The detailed procedure for computing the largest and smallest distances from to is omitted for simplicity. The largest and smallest distances between and are and , respectively. The star sign (★) in Figure 8 is used to signify .
Figure 9 presents the computation. The largest distance between and is evaluated as . Figure 9a,b depict the and computations, respectively. The distance from to () is () because the shortest path from to () is (). The same method in Figure 6 can be used to compute the largest and smallest distances from to (Figure 9a). Thus, the largest and smallest distances from to are and , respectively. The detailed procedure for computing the largest and smallest distances from to is omitted for simplicity.
The distance from to () is () because the shortest path from to () is (). The same method in Figure 6 can be used to compute the largest and smallest distances from to (Figure 9b). Thus, the largest and smallest distances from to are and , respectively. The detailed procedure for computing the largest and smallest distances from to is also omitted for simplicity. Therefore, the largest and smallest distances between and are and , respectively.
5. MOFA Algorithm for MkFN Query Processing in Road Networks
Algorithm 1 presents the MOFA algorithm, which has three steps. The first step groups facilities into facility clusters using the clustering method described in Section 4.1; therefore, a set F of facilities changes to a set of facility clusters. The second step retrieves the candidate facilities for a query segment , which are retrieved from border points and . To this end, the function is called from (), whose result is stored to (). In the third step, the valid segments for are computed using the candidate facilities in . Note that includes valid segments for and the k facilities farthest from them.
| Algorithm 1:. |
| Input: k: number of FNs requested for q, : query segment, F: set of facilities Output: : query result for , i.e.,
|
Algorithm 2 fetches a set of candidate facilities for the query segment . The set of candidate facilities for , , is initially set to the empty set (Line 1). The candidate distance is initially set to and used to determine whether or not f is a candidate facility for . The largest distance from to each facility cluster in is computed and elaborated in Section 4.2. We then arrange the facility clusters in a descending order based on their largest distance to . The arranged facility clusters are investigated one by one. The remaining facility clusters to be examined do not need to be accessed if , that is, the largest distance from to the next facility cluster is smaller than the candidate distance. This is because the remaining facilities cannot be candidate facilities for . Otherwise (i.e., ), each facility f in must be investigated to determine whether or not f is a candidate facility for . For this, should be computed. If is enclosed by , the distance from to f is calculated using a graph traversal algorithm such as the A* search algorithm [27]; otherwise (i.e., unless is enclosed by ), the distance is evaluated as because a border point of must be in the path from to f, i.e., . Accordingly, . Unnecessary facilities f should be removed from ; thus, each facility f in is examined to verify that f is a candidate facility for . f is removed from if it does not satisfy the qualification of a candidate facility. Finally, the set of candidate facilities for , is returned either if all of the facility clusters are investigated or if (Line 11 and 12), i.e., the candidate distance is larger than the largest distance from to the facility cluster .
| Algorithm 2:. |
| Input: k: number of FNs requested for q, : length of , : border point of , : set of facility clusters Output: : set of candidate facilities for , which are obtained from
|
Algorithm 3 computes the valid segments for by using candidate facilities in . The computation of the valid segments for the example MkFN query is presented in detail in Section 6.2. First, is initially set to the empty set. While q moves along , the distance from q to each candidate facility f in is calculated, i.e., ). Subsequently, is plotted in the two-dimensional space. For each query point q in , the kth FN and its distance to q are identified among the candidate facilities in as follows: . The valid segments in are computed while q moves along . Each valid segment has the same k facilities farthest from the valid segment. Specifically, for each and in the same valid segment , both and have the same k facilities farthest from them, that is, , . Finally, the set of valid segments for , is returned.
| Algorithm 3:. |
| Input: k: number of FNs requested for q, : query segment, : set of candidate facilities for Output: : set of valid segments for
|
6. Evaluation of the Example MkFN Query Using MOFA
In Section 6.1, the candidate facilities for the query segment is found in the example MkFN query. In Section 6.2, the valid segments for the query segment are computed.
6.1. Finding the Candidate Facilities for the Query Segment
Table 2 summarizes the computation of the candidate facilities at border points and of the query segment and includes the largest distances between the border points and the facility clusters in , candidate distances, and sets of candidate facilities at the border points. Recall that the kFN queries are issued only at the border points of the query segment, in which the query point q stays to find the candidate facilities for the query segment. Thus, for the example MkFN query, MOFA evaluates the kFN queries at border points and to find the candidate facilities for . First, the kFN query is evaluated at . The largest distances between and the facility clusters in are calculated. Subsequently, the facility clusters are arranged in a descending order based on . Figure 10 depicts that the facility clusters and are sorted using their largest distance to as follows: . is investigated, followed by . After exploring , chooses , , and as the candidate facilities for because the distance from to the second FN ( or ) is 21, and the candidate distance for is . The distances from to , , and are , , and 1, respectively (Figure 6). The other facility cluster does not need be explored because is larger than (Figure 10). Finally, a set of candidate facilities at is evaluated as .
Table 2.
Summary of the computation of the candidate facilities for .
Figure 10.
Arrangement of the facility clusters based on their largest distance to .
In the same manner, the kFN query is evaluated at to find the candidate facilities for the query segment . The largest distances between and the facility clusters in are calculated. The facility clusters are then arranged in a descending order based on . Figure 11 shows that the facility clusters and are sorted using their largest distance to as follows: . is investigated, followed by . After exploring , chooses , , and as the candidate facilities for the query segment because the distance from to the second FN is 17, and the candidate distance for is . The distances from to , , and are , , and , respectively (Figure 8). The other facility cluster does not have to be explored because is larger than (Figure 11). Finally, a set of candidate facilities at is evaluated as .
Figure 11.
Arrangement of the facility clusters based on their largest distance to .
6.2. Computing the Valid Segments for the Query Segment
Figure 12 shows the changes in the distance from each candidate facility f to a query point q in , where . The distance from to () is (). Figure 12a demonstrates the change in the distance from to q in . The shortest path from to q in is either or . The distance from to q is evaluated as , where . Similarly, the change in the distance from to q in can be drawn (Figure 12b), where and . In the same manner, the change in the distance from to q in can also be drawn (Figure 12c), where and .
Figure 12.
Changes in the distance from each candidate facility f to a query point q in : (a) change of for ; (b) change of for ; (c) change of for .
Figure 13 plots , , and together, which are illustrated in Figure 12a–c, respectively, to compute the valid segments in . Recall that the query points in the valid segment have the same k FNs. The example MkFN query requires two facilities farthest from the query point q in ; hence, the second FN must be identified from each query point q. Figure 13 shows that facility is the second FN for the entire query segment , and facility is farther from the query point q than the second FN . Therefore, a valid segment can be found in , and the query result is .
Figure 13.
Plot of , , and for .
7. Empirical Evaluation
Section 7.1 describes the empirical settings considered in this study. Section 7.2 presents the experimental results. In this section, we empirically evaluate the proposed MOFA and its conventional solution under various circumstances.
7.1. Empirical Settings
Table 3 describes the three real-world road networks [28] considered in our empirical evaluation. These road networks are part of the road network in the United States and vary in size. Ten query points were considered to measure query execution time. The query points regularly evaluate kFN queries, and each query point moves within a query segment. A data space can typically be considered as a unit square with its upper-left corner at the coordinate (0,0) and its lower-right corner at (1,1). Facilities were generated to simulate highly skewed point of interest distributions. First, the centroids are randomly populated within the data space, where m denotes the total number of centroids. The facilities around each centroid exhibit a Gaussian distribution with the mean indicating the centroid and the standard deviation set to . Table 4 lists the empirical parameter settings. Each of these parameters was determined through a series of experiments in which a single parameter was varied while the other parameters remained constant at the bolded default values.
Table 3.
Real road networks.
Table 4.
Empirical settings.
A conventional algorithm regularly evaluates kFN queries for the moving query point q. This method was considered as a benchmark to evaluate MOFA’s performance. All algorithms were implemented using C++ in the Microsoft Visual Studio development environment. All common subroutines of the algorithms were reused for similar tasks. For this empirical study, it was assumed that all indexing structures of the algorithms were stored in the main memory to rapidly process the MkFN queries. This assumption has often been used in other studies [22,29] on online LBSs. Repeated evaluations were performed to compute the average time required to answer MkFN queries. The TNR method [30] was employed to quickly calculate the network distance between two points during query processing. The empirical study was executed on a computer running the Windows 11 operating system equipped with an 8-core processor (i9-9900) running at 3.1 GHz with 32 GB of RAM.
7.2. Empirical Results
Figure 14 compares the proposed MOFA and conventional algorithm on the SJ road network. Each chart presents the MkFN execution time and number of kFN queries required to answer the MkFN query. The numbers in parentheses in Figure 14, Figure 15 and Figure 16 refer to the number of kFN queries required by MOFA and the conventional algorithm for answering the MkFN query. MOFA requires only two kFN queries to be evaluated to compute the valid segments for the query segment. However, the conventional algorithm requires kFN queries to be regularly evaluated to refresh the query results as the query point moves. In other words, the conventional algorithm evaluates a number of kFN queries linearly proportional to the query frequency, whereas MOFA evaluates only two kFN queries, regardless of the query frequency, as the query point moves within a query segment. Figure 14a presents the query execution times of MOFA and the conventional algorithm when the number of facilities varies from 1000 to 5000 (i.e., ). In all cases of , MOFA outperforms the conventional algorithm. For this empirical study, 10 query points were considered with each query point evaluating eight kFN queries while moving along its query segment. Therefore, the MOFA and conventional algorithms evaluated 20 and 80 kFN queries, respectively. Figure 14b presents the query execution times when the number of FNs required varies from 1 to 16 (i.e., ). For all cases of k, MOFA is approximately four times faster than the conventional algorithm. The query execution times of MOFA and the conventional algorithms are stable, regardless of k. This is because kFN query evaluation sorts facility clusters based on their distances to the query point and processes the sorted facility clusters. Figure 14c presents the query execution times when the query frequency varies from 2 to 20 (i.e., ). The query execution time of MOFA is stable and independent of the query frequency, whereas that of the conventional algorithm increases with the query frequency. Figure 14d presents the query execution times when the number of centroids for the facilities in F varies from 1 to 10 (i.e., ). The kFN query execution time tends to increase with the value. This is because the facilities become more widely distributed as the value increases, resulting in an increase in query execution time.
Figure 14.
Performance comparisons between MOFA and the conventional algorithm on the SJ road network: (a) ; (b) ; (c) ; (d) .
Figure 15.
Performance comparisons between MOFA and the conventional algorithm on the NA road network: (a) ; (b) ; (c) ; (d) .
Figure 16.
Performance comparisons between MOFA and the conventional algorithm on the SF road network: (a) ; (b) ; (c) ; (d) .
Figure 15 compares the performance of MOFA and the conventional algorithm on the NA road network. The empirical results obtained using the NA road network exhibit performance patterns similar to those obtained using the SJ road network. Figure 15a presents the query execution times for . MOFA is four times faster than the conventional algorithm. Figure 15b presents the query execution times for . Again, MOFA is four times faster than the conventional algorithm. The query execution times are stable and independent of the k value. Figure 15c presents the query execution times for . MOFA is 1.0, 2.0, 4.2, 5.2, and 10.3 times faster than the conventional algorithm when , and 20, respectively. Figure 15d presents the query execution times for . MOFA is up to four times faster than the conventional algorithm.
Figure 16 presents the performance of MOFA and the conventional algorithm on the SF road network. Figure 16a presents the query execution times for , indicating that MOFA outperforms the conventional algorithm by up to four times when . Figure 16b presents the query execution times for , indicating that MOFA outperforms the conventional algorithm by up to four times in terms of query execution time. The query execution times are stable and independent of the k value. Figure 16c presents the query execution times when , indicating that MOFA is 1.0, 2.0, 4.2, 5.2, and 10.3 times faster than the conventional algorithm when , and 20, respectively. Figure 16d presents the query execution times for , indicating that MOFA is up to 4.2 times faster than the conventional algorithm when . In summary, MOFA is faster than the conventional algorithm in all cases. In particular, the difference in performance between MOFA and the conventional algorithm increases with the query frequency. This confirms that MOFA benefits from the rapid retrieval of candidate facilities at the border points of the query segment and from the computation of valid segments for the query segment.
8. Conclusions
This study was motivated by the fact that moving query points such as pedestrians and vehicles, arbitrarily move within a road network. Therefore, existing solutions based on Euclidean distances cannot provide spatial queries for road network databases. This study proposed a moving farthest search algorithm called MOFA to compute valid segments for the query segment where a query point is located. MOFA performs an initial batch processing of MkFN queries in road networks to retrieve candidate facilities once and then computes the valid segments for the query segment. Empirical evaluation demonstrated that MOFA significantly outperformed the conventional algorithm and provided stable performance, regardless of the query frequency.
Funding
This research was supported by the Kyungpook National University Research Fund, 2021.
Institutional Review Board Statement
Not applicable.
Informed Consent Statement
Not applicable.
Data Availability Statement
Not applicable.
Acknowledgments
The author would like to thank the anonymous reviewers for their valuable comments and suggestions for improving the quality of the paper.
Conflicts of Interest
The author declares no conflict of interest.
Abbreviations
The following abbreviations are used in this manuscript:
| Notation | Definition |
| k | Number of requested facilities farthest from q. |
| q | Moving query point. |
| Query segment in which q moves. | |
| f and F | Facility and a set of facilities, respectively. |
| Vertex list, where and are either an intersection vertex or terminal vertex, | |
| and the other vertices are intermediate vertices with a degree of two. | |
| Facility segment connecting facilities in a vertex list (in short, ). | |
| and | Facility cluster and set of facility clusters, respectively. |
| Set of border points of . | |
| Border point of . | |
| Border point of , where . | |
| Set of candidate facilities for obtained from . | |
| Set of k facilities farthest from a query point q. | |
| Set of k facilities farthest from each query location in , i.e., | |
| . | |
| Network distance between two points q and f. | |
| Largest distance between and . | |
| Smallest distance between and . | |
| Segment length . |
References
- Curtin, R.R.; Echauz, J.R.; Gardner, A.B. Exploiting the structure of furthest neighbor search for fast approximate results. Inf. Syst. 2019, 80, 124–135. [Google Scholar] [CrossRef]
- Gao, Y.; Shou, L.; Chen, K.; Chen, G. Aggregate farthest-neighbor queries over spatial data. In Proceedings of the International Conference on Database Systems for Advanced Applications, Hong Kong, China, 22–25 April 2011; pp. 149–163. [Google Scholar]
- Liu, J.; Chen, H.; Furuse, K.; Kitagawa, H. An efficient algorithm for arbitrary reverse furthest neighbor queries. In Proceedings of the Asia-Pacific Web Conference on Web Technologies and Applications, Kunming, China, 11–13 April 2012; pp. 60–72. [Google Scholar]
- Liu, W.; Yuan, Y. New ideas for FN/RFN queries based nearest Voronoi diagram. In Proceedings of the International Conference on Bio-Inspired Computing: Theories and Applications, Huangshan, China, 12–14 July 2013; pp. 917–927. [Google Scholar]
- Tran, Q.T.; Taniar, D.; Safar, M. Reverse k nearest neighbor and reverse farthest neighbor search on spatial networks. Trans. Large-Scale Data- Knowl.-Centered Syst. 2009, 1, 353–372. [Google Scholar]
- Wang, H.; Zheng, K.; Su, H.; Wang, J.; Sadiq, S.W.; Zhou, X. Efficient aggregate farthest neighbour query processing on road networks. In Proceedings of the Australasian Database Conference on Databases Theory and Applications, Brisbane, Australia, 14–16 July 2014; pp. 13–25. [Google Scholar]
- Xu, X.-J.; Bao, J.; Yao, B.; Zhou, J.; Tang, F.; Guo, M.; Xu, J. Reverse furthest neighbors query in road networks. J. Comput. Sci. Technol. 2017, 32, 155–167. [Google Scholar] [CrossRef]
- Yao, B.; Li, F.; Kumar, P. Reverse furthest neighbors in spatial databases. In Proceedings of the International Conference on Data Engineering, Shanghai, China, 29 March–2 April 2009; pp. 664–675. [Google Scholar]
- Liu, Y.; Gong, X.; Kong, D.; Hao, T.; Yan, X. A Voronoi-based group reverse k farthest neighbor query method in the obstacle space. IEEE Access 2020, 8, 50659–50673. [Google Scholar] [CrossRef]
- Huang, Q.; Feng, J.; Fang, Q.; Ng, W. Two efficient hashing schemes for high-dimensional furthest neighbor search. IEEE Trans. Knowl. Data Eng. 2017, 29, 2772–2785. [Google Scholar] [CrossRef]
- Liu, W.; Wang, H.; Zhang, Y.; Qin, L.; Zhang, W. I/O efficient algorithm for c-approximate furthest neighbor search in high dimensional space. In Proceedings of the International Conference on Database Systems for Advanced Applications, Jeju, Korea, 24–27 September 2020; pp. 221–236. [Google Scholar]
- Pagh, R.; Silvestri, F.; Sivertsen, J.; Skala, M. Approximate furthest neighbor in high dimensions. In Proceedings of the International Conference on Similarity Search and Applications, Glasgow, UK, 12–14 October 2015; pp. 3–14. [Google Scholar]
- Wang, S.; Cheema, M.A.; Lin, X.; Zhang, Y.; Liu, D. Efficiently computing reverse k furthest neighbors. In Proceedings of the International Conference on Data Engineering, Helsinki, Finland, 16–20 May 2016; pp. 1110–1121. [Google Scholar]
- Huang, Q.; Feng, J.; Fang, Q. Reverse query-aware locality-sensitive hashing for high-dimensional furthest neighbor search. In Proceedings of the International Conference on Data Engineering, San Diego, CA, USA, 19–22 April 2017; pp. 167–170. [Google Scholar]
- Aly, A.M.; Aref, W.G.; Ouzzani, M. Spatial queries with two kNN predicates. In Proceedings of the International Conference on Very Large Data Bases, Istanbul, Turkey, 27–31 August 2012; pp. 1100–1111. [Google Scholar]
- Gu, Y.; Yu, G.; Yu, X. An efficient method for k nearest neighbor searching in obstructed spatial databases. J. Inf. Sci. Eng. 2014, 30, 1569–1583. [Google Scholar]
- Nutanong, S.; Zhang, R.; Tanin, E.; Kulik, L. Analysis and evaluation of V*-kNN: An efficient algorithm for moving kNN queries. VLDB J. 2010, 19, 307–332. [Google Scholar] [CrossRef]
- Yung, D.; Yiu, M.L.; Lo, E. A safe-exit approach for efficient network-based moving range queries. Data Knowl. Eng. 2012, 72, 126–147. [Google Scholar] [CrossRef]
- Cho, H.-J. Batch processing algorithm for moving k-farthest neighbor queries in road networks. In Proceedings of the KSCI Summer Conference 2021, Jeju, Korea, 15–17 July 2021; pp. 223–224. [Google Scholar]
- Cho, H.-J. Cluster nested Loop k-farthest neighbor join algorithm for spatial networks. ISPRS Int. J. Geo-Inf. 2022, 11, 123. [Google Scholar] [CrossRef]
- Cho, H.-J.; Attique, M. Group processing of multiple k-farthest neighbor queries in road networks. IEEE Access 2020, 8, 110959–110973. [Google Scholar] [CrossRef]
- Abeywickrama, T.; Cheema, M.A.; Taniar, D. k-nearest neighbors on road networks: A journey in experimentation and in-memory implementation. In Proceedings of the International Conference on Very Large Data Bases, New Delhi, India, 5–9 September 2016; pp. 492–503. [Google Scholar]
- Lee, K.C.K.; Lee, W.-C.; Zheng, B.; Tian, Y. ROAD: A new spatial object search framework for road networks. IEEE Trans. Knowl. Data Eng. 2012, 24, 547–560. [Google Scholar] [CrossRef]
- Zhong, R.; Li, G.; Tan, K.-L.; Zhou, L.; Gong, Z. G-tree: An efficient and scalable index for spatial search on road networks. IEEE Trans. Knowl. Data Eng. 2015, 27, 2175–2189. [Google Scholar] [CrossRef]
- Zhang, M.; Li, L.; Hua, W.; Zhou, X. Efficient batch processing of shortest path queries in road networks. In Proceedings of the International Conference on Mobile Data Management, Hong Kong, China, 10–13 June 2019; pp. 100–105. [Google Scholar]
- Zhang, M.; Li, L.; Hua, W.; Zhou, X. Batch processing of shortest path queries in road networks. In Proceedings of the Australasian Database Conference on Databases Theory and Applications, Sydney, Australia, 29 January–1 February 2019; pp. 3–16. [Google Scholar]
- Zeng, W.; Church, R.L. Finding shortest paths on real road networks: The case for A*. Int. J. Geogr. Inf. Sci. 2009, 23, 531–543. [Google Scholar] [CrossRef]
- Real Datasets for Spatial Databases. Available online: https:/www.cs.utah.edu/~lifeifei/SpatialDataset.htm (accessed on 28 May 2022).
- Wu, L.; Xiao, X.; Deng, D.; Cong, G.; Zhu, A.D.; Zhou, S. Shortest path and distance queries on road networks: An experimental evaluation. In Proceedings of the International Conference on Very Large Data Bases, Istanbul, Turkey, 27–31 August 2012; pp. 406–417. [Google Scholar]
- Bast, H.; Funke, S.; Matijevic, D. Ultrafast shortest-path queries via transit nodes. In Proceedings of the International Workshop on Shortest Path Problem, Piscataway, NJ, USA, 13–14 November 2006; pp. 175–192. [Google Scholar]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the author. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).