Skip to main content
Log in

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

  • Published:
Data Mining and Knowledge Discovery Aims and scope Submit manuscript

Abstract

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 via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

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

Similar content being viewed by others

Notes

  1. https://github.com/lakshmi9414/Multi-location-Visibility-Queries-Code.git.

References

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

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

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

    Article  MathSciNet  MATH  Google Scholar 

  • 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

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

    Article  MATH  Google Scholar 

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

    Article  MathSciNet  Google Scholar 

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

    Article  MathSciNet  MATH  Google Scholar 

  • 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 

  • Gangumalla L (2019) Datasets used in the paper. https://github.com/lakshmi9414/Datasets.git. Accessed 20 June 2019

  • 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 

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

  • 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

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

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

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

    MathSciNet  Google Scholar 

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

    Article  Google Scholar 

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

  • 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

    Article  MathSciNet  Google Scholar 

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

    Article  Google Scholar 

  • 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. https://doi.org/10.1007/s10707-019-00343-4

    Google Scholar 

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

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

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

    Book  Google Scholar 

  • Mount DM (2004) Geometric intersection. Citeseer

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

    Google Scholar 

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

    Google Scholar 

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

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

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

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

  • 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

  • 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

Authors and Affiliations

Authors

Corresponding author

Correspondence to Lakshmi Gangumalla.

Additional information

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

Publisher's Note

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

Appendices

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
figure 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

Check for updates. 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). https://doi.org/10.1007/s10618-019-00641-3

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10618-019-00641-3

Keywords

Navigation