Abstract
Maximizing bichromatic reverse nearest neighbor (MaxBRNN) is a variant of bichromatic reverse nearest neighbor (BRNN). The purpose of the MaxBRNN problem is to find an optimal region that maximizes the size of BRNNs. This problem has lots of real applications such as location planning and profile-based marketing. The best-known algorithm for the MaxBRNN problem is called MaxOverlap. In this paper, we study the MaxBRNN problem and propose a new approach called MaxSegment for a two-dimensional space when the \(L_2\)-norm is used. Then, we extend our algorithm to other variations of the MaxBRNN problem such as the MaxBRNN problem with other metric spaces, and a three-dimensional space. Finally, we conducted experiments on real and synthetic datasets to compare our proposed algorithm with existing algorithms. The experimental results verify the efficiency of our proposed approach.



















Similar content being viewed by others
References
Beckmann N, Kriegel HP, Schneider R, Seeger B (1990) The R*-tree: an efficient and robust access method for points and rectangles. In: Garcia-Molina H, Jagadish HV (eds) Proceedings of the ACM SIGMOD international conference on management of data. Atlantic City, NJ, May 1990, pp 322–331
Berg M, Kreveld M, Overmars M, Schwarzkopf O (eds) (2000) Computational geometry: algorithms and applications. Springer, Berlin
Cabello S, Diaz-Banex JM, Langerman S, Seara C (2010) Facility location problems in the plane based on reverse nearest neighbor queries. Eur J Oper Res 202(1):99–106
Cabello S, Diaz-Banez JM, Langerman S, Seara C, Ventura I (2005) Reverse facility location problems. In: Proceedings of the 17th Canadian conference on computational geometry, Ontario, Canada, Aug 2005, pp 68–71
Cardinal J, Langerman S (2006) Min-max-min geometric facility location problems. In: Proceedings of the 22nd European workshop on computational geometry, Delphi, Greece, March 2006
Chazelle B (1986) New upper bounds for neighbor searching. Inf Control 68(1–3):105–124
Cheema MA, Lin X, Zhang W, Zhang Y (2011) Influence zone: efficiently processing reverse k nearest neighbors queries. In: Abiteboul S, Bohm K, Koch C (eds) Proceedings of the 27th international conference on data engineering. Hannover, Germany, April 2011, pp 577–588
Cheema MA, Lin X, Zhang W, Zhang Y, Wang W, Zhang W (2009) Lazy updates: an efficient technique to continuously monitoring reverse kNN. Proc VLDB Endow 2(1):1138–1149
Du Y, Zhang D, Xia T (2005) The optimal-location query. In: Medeiros CB, Egenhofer MJ, Bertino E (eds) Proceedings of the 9th international symposium on advances in spatial and temporal databases. Angra dos Reis, Brazil, Aug 2005, pp 163–180
Emrich T, Kriegel HP, Kröger P, Renz M, Xu N, Züfle A (2010) Reverse k-Nearest neighbor monitoring on mobile objects. In: Agrawal D, Abbadi AE, Mokbel MF (eds) Proceedings of the 18th ACM SIGSPATIAL international symposium on advances in geographic information systems. San Jose, CA, USA, Nov 2010, pp 494–497
Kang JM, Mokbel MF, Shekhar S, Xia T, Zhang D (2007) Continuous evaluation of monochromatic and bichromatic reverse nearest neighbors. In: Chirkova R, Dogac A, Özsu MT, Sellis TK (eds) Proceedings of the 23rd international conference on data engineering. The Marmara Hotel, Istanbul, Turkey, April 2007, pp 806–815
Khoshgozaran A, Shahabi C, Shirani-Mehr H (2011) Location privacy: going beyond K-anonymity, cloaking and anonymizers. Knowl Inf Syst 26(3):435–465
Korn F, Muthukrishnan S (2000) Influence sets based on reverse nearest neighbor queries. In: Chen W, Naughton JF, Bernstein PA (eds) Proceedings of the ACM SIGMOD international conference on management of data. Dallas, Texas, USA, May 2000, pp 201–212
Korn F, Muthukrishnan S, Srivastava D (2002) Reverse nearest aggregates over data stream. In: Proceedings of the 28th international conference on very large data bases, Hong Kong, China, August 2002, pp 814–825
Krarup J, Pruzan PM (1983) The simple plant location problem: Survey and synthesis. Eur J Oper Res 12(1):36–57
Lian X, Chen L (2009) Efficient processing of probabilistic reverse nearest neighbor queries over uncertain data. VLDB J 18(3):787–808
Lu EHC, Lee WC, Tseng VS (2011) Mining fastest path from trajectories with multiple destinations in road networks. Knowl Inf Syst 29(1):25–53
Roussopoulos N, Kelley S, Vincent F (1995) Nearest neighbor queries. In: Carey MJ, Schneider DA (eds) Proceedings of the ACM SIGMOD international conference on management of data. San Jose, California, May 1995, pp 71–79
Stanoi I, Agrawal D, ElAbbadi A (2000) Reverse nearest neighbor queries for dynamic databases. In: Gunopulos D, Rastogi R (eds) Proceedings of 2000 ACM SIGMOD workshop on research issues in data mining and knowledge discovery. Dallas, Texas, USA, May 2000, pp 44–53
Stanoi I, Riedewald M, Agrawal D, Abbadi AE (2001) Discovery of influence sets in frequently updated databases. In: Apers PMG, Atzeni P, Ceri S, Paraboschi S, Ramamohanarao K, Snodgrass RT (eds) Proceedings of the 27th international conference on very large data bases. Roma, Italy, Sept 2001, pp 99–108
Tan JSF, Lu EHC, Tseng VS (2012) Preference-oriented mining techniques for location-based store search. Knowl Inf Syst. doi:10.1007/s10115-011-0475-4
Tansel BC, Francis RL, Lowe T (1983) Location on networks: a survey. Manag Sci 29(4):482–497
Tao Y, Papadias D, Lian X (2004) Reverse kNN search in arbitrary dimensionality. In: Nascimento MA, Özsu MT, Kossmann D, Miller RJ, Blakeley J, Schiefer KB (eds) Proceedings of the thirtieth international conference on very large data bases. Toronto, Canada, Sept 2004, pp 744–755
Tao Y, Yiu ML, Mamoulis N (2006) Reverse nearest neighbor search in metric spaces. IEEE Trans Knowl Data Eng 18(8):1239–1252
Vadapalli S, Valluri SR, Karlapalem P (2006) A simple yet effective data clustering algorithm. In: Clifton CW, Zhong N, Liu J, Wah BW, Wu X (eds) Proceedings of the 6th IEEE international conference on data mining. Hong Kong, China, Dec 2006, pp 1108–1112
Wong RCW, Özsu MT, Yu PS, Fu AWC, Liu L (2009) Efficient method for maximizing bichromatic reverse nearest neighbor. Proc VLDB Endow 2(1):1126–1137
Wong RCW, Özsu MT, Yu PS, Fu AWC, Liu L, Liu Y (2011) Maximizing bichromatic reverse nearest neighbor for Lp-norm in two- and three-dimensional spaces. VLDB J 20(6):893–919
Wong RCW, Tao Y, Fu AWC, Xiao X (2007) On efficient spatial matching. In: Koch C, Gehrke J, Garofalakis MN, Srivastava D, Aberer K, Deshpande A, Florescu D, Chan CY, Ganti V, Kanne CC, Klas W, Neuhold EJ (eds) Proceedings of the 33rd international conference on very large data bases. University of Vienna, Austria, Sept 2007, pp 579–590
Wu W, Yang F, Chan CY, Tan KL (2008) FINCH: evaluating reverse k-nearest-neighbor queries on location data. Proc VLDB Endow 1(1):1056–1067
Wu W, Yang F, Chan CY, Tan KL (2008) Continuous reverse k-nearest-neighbor monitoring. In: Meng X, Lei H, Grumbach S, Leong HV (eds) Proceedings of the 9th international conference on mobile data management. Beijing, China, April 2008, pp 132–139
Xia T, Zhang D (2006) Continuous reverse nearest neighbor monitoring. In: Liu L, Reuter A, Whang K, Zhang J (eds) Proceedings of the 22nd international conference on data engineering. Atlanta, GA, USA, April 2006, p 77
Xia T, Zhang D, Kanoulas E, Du Y (2005) On computing top-t most influential spatial sites. In: Bohm K, Jensen C, Haas LM, Kersten ML, Larson P, Ooi BC (eds) Proceedings of the 31st international conference on very large data bases. Trondheim, Norway, Sept 2005, pp 946–957
Yang Y, Hao C (2011) Product selection for promotion planning. Knowl Inf Syst 29(1):223–236
Yiu ML, Papadias D, Mamoulis N, Tao Y (2006) Reverse nearest neighbors in large graphs. IEEE Trans Knowl Data Eng 18(4):540–553
Zhang D, Du Y, Xia T, Tao Y (2006) Progressive computation of the min-dist optimal-location query. In: Dayal U, Whang K, Lomet DB, Alonso G, Lohman GM, Kersten ML, Cha SK, Kim Y (eds) Proceedings of the 32nd international conference on very large data bases. Seoul, Korea, Sept 2006, pp 643–654
Zhang M, Alhajj R (2011) Effectiveness of NAQ-tree in handling reverse nearest-neighbor queries in high-dimensional metric space. Knowl Inf Syst 31(2):307–343
Zhang M, Alhajj R (2010) Effectiveness of NAQ-tree as index structure for similarity search in high dimensional metric space. Knowl Inf Syst 22(1):1–26
Zhang S, Chen F, Wu X, Zhang C (2006) Identifying bridging rules between conceptual clusters. In: Eliassi-Rad T, Ungar LH, Craven M, Gunopulos D (eds) Proceedings of the twelfth ACM SIGKDD international conference on knowledge discovery and data mining. Philadelphia, PA, USA, Aug 2006, pp 815–820
Zhou Z, Wu W, Li X, Lee ML, Hsu W (2011) MaxFirst for MaxBRkNN. In: Abiteboul S, Bohm K, Koch C, Tan K (eds) Proceedings of the 27th international conference on data engineering. Hannover, Germany, April 2011, pp 828–839
Zhu L, Li C, Tung AKH, Wang S (2012) Microeconomic analysis using dominant relationship analysis. Knowl Inf Syst 30(1):179–211
Acknowledgments
We thank anonymous reviewers for their very useful comments and suggestions. The work of Yubao Liu, Zhijie Li, Cheng Chen, and Zhitong Chen are supported by the National Natural Science Foundation of China (Grant Nos. 60703111, 61070005, and 61033010), the Science and Technology Planning Project of Guangdong Province of China (2010B080701062), and the Fundamental Research Funds for the Central Universities (11lgpy63). The research of Raymond Chi-Wing Wong is supported by HKRGC GRF 621309 and DAG11EG05G. Ke Wang’s work is partially supported by a Discovery Grant from Natural Sciences and Engineering Research Council of Canada.
Author information
Authors and Affiliations
Corresponding author
Appendix: Computation of \((s_1, s_2)\)-circle, \((s_2, s_2)\)-plane and \(s_3\)-circle on plane in a three-dimensional space
Appendix: Computation of \((s_1, s_2)\)-circle, \((s_2, s_2)\)-plane and \(s_3\)-circle on plane in a three-dimensional space
In Sect. 5.3, given three NLSs, namely \(s_1, s_2\), and \(s_3\) as shown in Fig. 10, we describe the concepts of the \((s_1, s_2)\)-circle, the \((s_2, s_2)\)-plane, and the \(s_3\)-circle on a plane. In this section, we describe how we compute these three concepts.
How to Compute \((s_1, s_2)\)-Circle: In the following, we want to describe a method to compute the \((s_1, s_2)\)-circle given two NLS \(s_1\) and \(s_2\).
Assume NLS \(s_1\) centered at \(o_1 (x_1, y_1, z_1)\) with radius \(r_1\) and NLS \(s_2\) centered at \(o_2 (x_2, y_2, z_2)\) with radius \(r_2\). Then, we would have the following equations.
From Eqs. (1) and (2), we have: \(-2x(x_1-x_2)+(x_1^2-x_2^2)-2y(y_1-y_2)+(y_1^2-y_2^2)-2z(z_1-z_2)+(z_1^2-z_2^2)=r_1^2-r_2^2\) Next, we have
We assume that the \((s_1, s_2)\)-circle \(c_{12}\) is centered at \(o_{12} (x_{12}, y_{12}, z_{12})\) with radius \(r_{12}\). In the following, we need to compute the coordinates of the three-dimensional point \(o_{12}\) and the radius \(r_{12}\). Since the point \(o_{12}\) is along the line segment between \(o_1\) and \(o_2\), we can assume that \(\overrightarrow{o_1o_{12}}=\lambda \overrightarrow{o_1o_{2}}\), \((0<\lambda <1)\). Then, we have
That is,
Since the point \(o_{12} (x_{12}, y_{12}, z_{12})\) is on the plane \(\alpha \), we can put \(x_{12}\), \(y_{12}\) and \(z_{12}\) in Eq. (5) into Eq. (3) (i.e., replacing \(x\), \(y\), \(z\), respectively). Then, we have
Next, we have \(\lambda =\frac{r_1^2-r_2^2}{2(x_2-x_1)^2}+\frac{1}{2}\). Then, we put \(\lambda \) into Eq. (5) and compute the coordinates of the three-dimensional point \(o_{12}\). That is,
where \(o_1 (x_1, y_1, z_1)\), \(o_2 (x_2, y_2, z_2)\), \(r_1\), and \(r_2\) are known.
The radius \(r_{12}\) can be computed as follows. As shown in Fig. 10a, we can easily image the following sectional drawing in Fig. 20 for NLS \(s_1\), NLS \(s_2\), and circle \(c_{12}\). So, we have \(r_{12}=\sqrt{r_1^2-| o_1o_{12}|^2}=\sqrt{r_1^2-\lambda ^2|o_1o_2|^2}\), where \(o_1\), \(o_2\), \(r_1\) and \(\lambda \) are known. Thus, we derive the \((s_1, s_2)\)-circle.
It is easy to verify that the above computation of the \((s_1, s_2)\)-circle takes \(O(1)\) time.
How to Compute \((s_1, s_2)\) -Plane and \(s_3\)-Circle: In the following, we describe how to compute the \((s_1, s_2)\)-plane, says \(\alpha \), and the \(s_3\)-circle on plane \(\alpha \), says \(c_3\).
Assume that NLS \(s_3\) is centered at \(o_3 (x_3, y_3, z_3)\) with radius \(r_3\). Assume the center of circle \(c_3\) in the three-dimensional space is \(o_{c3} (x_{c3},\) \( y_{c3}, z_{c3})\) and its radius is \(r_{c3}\). From Fig. 10, it is easy to know that both points \(o_{12}\) and \(o_{c3}\) are on the plane \(\alpha \). We can build a coordinate system, \(X_\alpha Y_\alpha \), on the two-dimensional plane \(\alpha \) whose origin is \(o_{12}\). The relationship between the three-dimensional space and the two-dimensional plane \(\alpha \) can be shown in Fig. 21. From Fig. 21, we can know the coordinates of point \(o_{c3}\) in the two-dimensional space \((X_{\alpha }, Y_{\alpha })\) correspond to \(u\) and \(v\), respectively. Before computing \(u\) and \(v\), we need to find the vectors \(\overrightarrow{X_\alpha }\) and \(\overrightarrow{Y_\alpha }\) that correspond to the axes of the coordinate system on the two-dimensional plane \(\alpha \). From Fig. 10a, we can know the normal vector \(\overrightarrow{N}=\overrightarrow{o_2}-\overrightarrow{o_1}\) to the plane \(\alpha \). That is, we have \(\overrightarrow{N} = (x_2-x_1, y_2-y_1, z_2- z_1)\). This normal vector can denote the \((s_1, s_2)\)-plane.
Next, we construct two vectors as follows.
It is easy to verify the vectors \(\overrightarrow{X_\alpha }\), \(\overrightarrow{Y_\alpha }\), and \(\overrightarrow{N}\) are perpendicular to each of the other two vectors. Then, we can take \(\overrightarrow{X_\alpha }\) and \(\overrightarrow{Y_\alpha }\) as the axes of the coordinate system on the two-dimensional plane \(\alpha \). It is also easy to know that \(\overrightarrow{o_{c3}o_3}=\varphi \overrightarrow{N}\), where \(\varphi \) is a real number and \(\overrightarrow{N}\) is the normal vector to the plane \(\alpha \). Then, we have the following Eq. (8) in which \(x_N\), \(y_N\), and \(z_N\) denote the vector components of vector \(\overrightarrow{N}\), respectively.
Since \(\overrightarrow{o_{12}o_{c3}}\perp \overrightarrow{N}\),we have \((x_{c3}-x_{12})x_N + (y_{c3}-y_{12})y_N + (z_{c3}-z_{12})z_N = 0\). Next, we can replace \(x_{c3}\), \(y_{c3}\) and \(z_{c3}\) using Eq. (8).
Then, we have \(\varphi =\frac{x_N (x_3-x_{12})+ y_N(y_3-y_{12}) + z_N(z_3-z_{12})}{x_N^2 + y_N^2 + z_N^2}\). Next, we put \(\varphi \) into Eq. (8) and have \(o_{c3} (x_{c3}, y_{c3}, z_{c3})\). That is,
where \(x_3\), \(y_3\), \(z_3\), \(x_N\), \(y_N\), \(z_N\), and \(\varphi \) are known. From Fig. 21, we have \(u\), \(v\) and the radius of \(c_3\) as follows.
where \(r_3\), \(o_3\), \(o_{c3}\), \(\overrightarrow{X_\alpha }\) and \(\overrightarrow{Y_\alpha }\) are known. Thus, we derive the \(s_3\)-circle.
It is easy to verify that the computation of the \((s_1, s_2)\)-plane and the \(s_3\)-circle takes \(O(1)\) time.
Rights and permissions
About this article
Cite this article
Liu, Y., Wong, R.CW., Wang, K. et al. A new approach for maximizing bichromatic reverse nearest neighbor search. Knowl Inf Syst 36, 23–58 (2013). https://doi.org/10.1007/s10115-012-0527-4
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10115-012-0527-4