Multi-location visibility query processing using portion-based transactional modeling and pattern mining


Visibility computation is critical in spatial databases for realizing various interesting and diverse applications such as defence-related surveillance, identifying interesting spots in tourist places and online warcraft games. Existing works address the problem of identifying individual locations for maximizing the visibility of a given target object. However, in case of many applications, a set of locations may be more effective than just individual locations towards maximizing the visibility of the given target object. In this paper, we introduce the Multi-Location Visibility (MLV) query. An MLV query determines the top-k query locations from which the visibility of a given target object can be maximized. We propose a portion-based transactional framework and coverage pattern mining based algorithm to process MLV queries. Our performance evaluation with real datasets demonstrates the effectiveness of the proposed scheme in terms of query processing time, pruning efficiency and target object visibility w.r.t. a recent existing scheme.

This is a preview of subscription content, log in to check access.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7


  1. 1.


  1. Agrawal R, Srikant R (1994) Fast algorithms for mining association rules in large databases. In: Proceedings of VLDB, pp 487–499

  2. Ali D, Eunus M et al (2017) Efficient processing of maximum visibility facility selection query in spatial databases. Masters Thesis, BUET

  3. Asano T, Asano T, Guibas L, Hershberger J, Imai H (1986) Visibility of disjoint polygons. Algorithmica 1(1):49–63

    MathSciNet  Article  MATH  Google Scholar 

  4. Beckmann N, Kriegel HP, Schneider R, Seeger B (1990) The R*-tree: an efficient and robust access method for points and rectangles. In: Proceedings of ACM SIGMOD

  5. Bentley JL, Ottmann TA (1979) Algorithms for reporting and counting geometric intersections. IEEE Trans Comput 28(9):643–647

    Article  MATH  Google Scholar 

  6. Bentley JL, Wood D (1980) An optimal worst case algorithm for reporting intersections of rectangles. IEEE Trans Comput 29(7):571–577

    MathSciNet  Article  Google Scholar 

  7. Chvatal V (1979) A greedy heuristic for the set-covering problem. Math Oper Res 4(3):233–235

    MathSciNet  Article  MATH  Google Scholar 

  8. Floriani L, Magillo P (2003) Algorithms for visibility computation on terrains: a survey. Environ Plan B Plan Des 30(5):709–728

    Article  Google Scholar 

  9. Gangumalla L (2019) Datasets used in the paper. Accessed 20 June 2019

  10. Gao Y, Liu Q, Miao X, Yang J (2015) Reverse k-nearest neighbor search in the presence of obstacles. Inf Sci 330:274–292

    Article  Google Scholar 

  11. Gao Y, Zheng B (2009) Continuous obstructed nearest neighbor queries in spatial databases. In: Proceedings of ACM SIGMOD, pp 577–590

  12. Gao Y, Zheng B, Chen G, Lee WC, Lee KCK, Li Q (2009a) Visible reverse k-nearest neighbor queries. In: Proceedings ICDE, pp 1203–1206

  13. Gao Y, Zheng B, Lee WC, Chen G (2009b) Continuous visible nearest neighbor queries. In: Proceedings of EDBT, pp 144–155

  14. Garey MR, Johnson DS, Stockmeyer L (1974) Some simplified NP-complete problems. In: Proceedings of ACM symposium on theory of computing, pp 47–63

  15. Goodchild MF, Lee J (1990) Coverage problems and visibility regions on topographic surfaces. Ann Oper Res 18(1–4):175–186

    MathSciNet  Google Scholar 

  16. Gowtham Srinivas P et al (2015) Mining coverage patterns from transactional databases. J Intell Inf Syst 45(3):423–439

    Article  Google Scholar 

  17. Haider CMR, Arman A, Ali ME, Choudhury FM (2016) Continuous maximum visibility query for a moving target. In: Proceedings of ADC, pp 82–94

  18. Han J, Cheng H, Xin D, Yan X (2007) Frequent pattern mining: current status and future directions. Data Min Knowl Discov 15(1):55–86

    MathSciNet  Article  Google Scholar 

  19. Han J, Pei J, Yin Y (2000) Mining frequent patterns without candidate generation. SIGMOD Rec. 29(2):1–12

    Article  Google Scholar 

  20. Irtiza Tripto N, Nahar M, Ali ME, Choudhury F, Culpepper J, Sellis T (2019) Top-k trajectories with the best view. GeoInformatica 141:1–41.

    Google Scholar 

  21. Liu B, Hsu W, Ma Y (1999) Mining association rules with multiple minimum supports. In: Proceedings of ACM SIGKDD, pp 337–341

  22. Masud S, Choudhury FM, Ali ME, Nutanong S (2013) Maximum visibility queries in spatial databases. In: Proc. ICDE, pp. 637–648

  23. Morling K (2010) Geometric and engineering drawing 3E. Routledge, London

    Google Scholar 

  24. Mount DM (2004) Geometric intersection. Citeseer

  25. Nutanong S, Tanin E, Zhang R (2010) Incremental evaluation of visible nearest neighbor queries. IEEE TKDE 22(5):665–681

    Google Scholar 

  26. Seeds MA, Backman D (2015) Stars and galaxies. Cengage Learning, Boston

    Google Scholar 

  27. Shou L, Huang Z, Tan KL (2003) HDoV-tree: the structure, the storage, the speed. In: Proceedings of ICDE, pp 557–568

  28. Srinivas PG et al (2012) Discovering coverage patterns for banner advertisement placement. In: Proceedings of PAKDD, pp 133–144

  29. Tanton J (2005) Encyclopedia of mathematics. In: Tanton 2005 encyclopedia. Facts On File, inc

  30. Tao Y, Papadias D, Shen Q (2002) Continuous nearest neighbor search. In: Proceedings of VLDB, pp 287–298

  31. Xu H, Li Z, Lu Y, Deng K, Zhou X (2010) Group visible nearest neighbor queries in spatial databases. In: Proceedings of WAIM, pp 333–344

  32. Zhang J, Papadias D, Mouratidis K, Zhu M (2004) Spatial queries in the presence of obstacles. In: Proceedings of EDBT, pp 366–384

Download references

Author information



Corresponding author

Correspondence to Lakshmi Gangumalla.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Responsible editor: Po-ling Loh, Evimaria Terzi, Antti Ukkonen, Karsten Borgwardt and Katharina Heinrich.


Appendix: A coverage patterns

The concept of coverage has been used to the solve set cover problem in set theory (Chvatal 1979) and node cover problem in graph theory (Garey et al. 1974). By extending the notion of coverage, a model for extracting the knowledge of coverage patterns (CPs) (Srinivas et al. 2012) was proposed to extract coverage value of distinct sets of data items or patterns from a transactional database.

Now we shall explain the concept of coverage patterns. Given a transactional database D, each transaction is a subset of a set I of m items \(\{i_{1},i_{2},i_{3},\ldots , i_{m}\}\). A pattern P is a subset of items in I i.e., \(P\subseteq I\) where \(P=\{i_{p},i_{q},\ldots ,i_{r}\}\) and \(1\le p\le q\le r \le m\) and p, q, r are integers. \(T^{i_{r}}\) is the set of transactions in which item \(i_{r}\) is present, hence \(|T^{i_{r}}|\) is the cardinality of \(T^{i_{r}}\).

The fraction of transactions containing a given item \(i_{r}\) is designated as Relative Frequency\(RF(i_{r})\) of \(i_{r}\). \(RF(i_{r})=|T^{i_{r}}|/|D|\). A given item is considered as frequent if its relative frequency is greater than that of a threshold value, which we designate as minRF. Coverage Set CSet(P) of a pattern \(P=\{i_{p},i_{q},\ldots ,i_{r}\}\) is the set of all the transactions that contain at least one item from the pattern P i.e., \(CSet(P)=T^{i_{p}} \cup T^{i_{q}},\ldots ,\cup T^{i_{r}}\). Coverage Support CS(P) is the ratio of the size of CSet(P) to the size of D i.e., \(CS(P)=|CSet(P)| / |\textit{D}|\).

In order to add a new item to the pattern P such that the coverage support increases significantly, the notion of overlap ratio is introduced. (This is possible in the case when the number of transactions, which are common to the new item and the pattern P, is low.) Overlap ratio\(OR(\textit{P})\) of a pattern P is the ratio of the number of transactions that are common between CSet(\(P-i_{r}\)) and \(T^{i_{r}}\) to the number of transactions in \(T^{i_{r}}\), i.e., \(OR(P)=(|CSet(P-i_{r}) \cap (T^{i_{r}})|) /(|T^{i_{r}}|)\). A high CS value indicates more number of transactions and a low OR value means less repetitions among the transactions. A pattern is interesting if its CS is greater than or equal to the user-specified minimum CS threshold value (i.e., minCS) and its OR is less than or equal to user-specified maximum OR threshold value (i.e., maxOR). Given minRF, minCS and maxOR, pattern \(P=\{{i_{p}},{i_{q}},\ldots ,i_{r}\}\) is regarded as a coverage pattern CP if \(RF({i_{k}})\ge minRF \, \forall i_{k} \in P, CS({P}) \ge minCS\) and \(OR(P) \le maxOR\).

Table 2 Transactional database

For example, consider D depicted in Table 2 to understand the notion of coverage patterns. In D, the set of items \(I=\{a,b,c,d,e,f,g,h\}\) and the number of transactions i.e., \(|\textit{D}|=10\) with \(\hbox {TIDs}=1,2,3,\ldots ,10\). Let \(minRF=0.3\), \(minCS =0.6\), \(maxOR=0.8\). Consider pattern \(P=\{b,c,d\}\); \(T^{b}=\{1,2,4,7\}\), \(T^{c}=\{1,2,5,7,9,10\}\), \(T^{d}=\{5,7,8\}\). \(|T^{b}|=4\), \(|T^{c}|=6\), \(|T^{d}|=3\); \(RF(b)=4/10=0.4\), \(RF(c)=6/10=0.6\), \(RF (d)=3/10=0.3\). \(\hbox {CSet}(P)=\{1,2,4,5, 7,8,9,10\}\). \(RF(b)\ge minRF\), \(RF(c) \ge minRF\), \(RF(d) \ge minRF\); \(CS(P)=8/10= 0.8\ge minCS\); \(OR(P)=(|(T^{b}\cup T^{c})\cap (T^{d})|)/ (|T^{d}|)\); \(OR(P)=2/3=0.6 \le maxOR\). Hence, \(\{b,c,d\}\) is a coverage pattern.

An apriori-like approach to extract complete sets of CPs from transactional database has been proposed in Srinivas et al. (2012). A pattern growth-like approach (Gowtham Srinivas 2015) has also been proposed to extract the complete set of CPs in an efficient manner.

Appendix: B Illustrative example of our approach

Figure 8 depicts an illustrative example of the proposed approach. Consider the target object ABCD having four sides \(\{AB,BC,CD,DA\}\) with query locations (\(q_{1}\) to \(q_{10}\)) and obstacles (\(o_{1}\) to \(o_{4}\)). ABCD is divided into portions (\(p_{1}\) to \(p_{10}\)).

Fig. 8

Illustrative example of our approach

We compute the VRs corresponding to each query location, as shown in Table 3. Observe that \(p_{1}\) is visible from query location \(q_{1}, p_{5}\) is visible from \(\{q_{4},q_{6}\}\) and \(p_{7}\) is visible from \(\{q_{6},q_{7},q_{8}\}\). Now using the computed VRs, we generate portion transactions. Hence, the query location in portion transaction \(p_{1}\) is \(q_{1}\). Similarly, in the portion transaction \(p_{7}\), the query locations are \(\{q_{6},q_{7},q_{8}\}\), as depicted in Table 4.

Table 3 Visible regions (VRs) from query locations
Table 4 Portion transactions

Now let us consider a candidate set \(c_{i}=\{q_{4},q_{6},q_{9}\}\). Let the values of minV and maxO be 0.7 and 0.4 respectively. \(VR(q_{4},T)=\{p_{3},p_{4}, p_{5}\}\), \(VR(q_{6},T)=\{p_{5}, p_{6},p_{7}\}\), \(VR(q_{9},T)=\{p_{8},p_{9}\}\). \(vis(c_{i},T)=|VR(q_{4},T)\cup VR(q_{6},T)\cup VR(q_{9},T)|/|S| =\{p_{3},p_{4}, p_{5}, p_{6}, p_{7},p_{8},p_{9}\} /10\) i.e., \(vis(c_{i},T)=0.8\). \(|VR(q_{4},T)|\ge |VR(q_{6},T)| \ge |VR(q_{9},T)|\). Thus, \(overlap(c_{i},T)= |(VR(q_{4},T)\cup VR(q_{6},T))\cap VR(q_{9},T)| / |VR(q_{9},T)| =0/2\) i.e., \(overlap(c_{i},T)=0\). Here, \(continuity(c_{i},T)=true\) since portions \(p_{3}\) to \(p_{9}\) from the VRs of query locations in \(c_{i}\) are continuous. Since \(vis(c_{i},T)\ge minV, overlap(c_{i},T) \le maxO\) and \(continuity (c_{i},T)=true, c_{i}\) qualifies as a candidate set.

Now let us consider \(c_{i} =\{q_{6},q_{8}\}\). \(VR(q_{6},T) =\{p_{5},p_{6},p_{7}\}\), \(VR (q_{8},T) =\{p_{7}\}\). \(vis(c_{i},T)=|VR(q_{6},T)\cup VR(q_{8},T)|/|S|=\{p_{5},p_{6},p_{7}\}\) /10 i.e., \(vis(c_{i},T)=0.3.|VR(q_{6},T)| \ge |VR(q_{8},T)|\).

Thus, \(overlap(c_{i},T)=|(VR(q_{6},T) \cap VR(q_{8},T)| / |VR(q_{8},T)|= 1/1\) i.e., \(overlap(c_{i},T)=1\). Here, \(continuity(c_{i},T)=true\) since portions \(p_{5}\) to \(p_{7}\) from the VRs of query locations in \(c_{i}\) are continuous. Since \(vis(c_{i},T)\) and \(overlap(c_{i},T)\) do not satisfy the minV and maxO constraints, \(c_{i}\) would not qualify as a candidate set.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Gangumalla, L., Reddy, P.K. & Mondal, A. Multi-location visibility query processing using portion-based transactional modeling and pattern mining. Data Min Knowl Disc 33, 1393–1416 (2019).

Download citation


  • Visibility query
  • Transaction-modeling
  • Pattern-mining
  • Portion based transactional framework