Efficient Implementation Techniques for Topological Predicates on Complex Spatial Objects

Topological relationships like overlap, inside, meet, and disjoint uniquely characterize the relative position between objects in space. For a long time, they have been a focus of interdisciplinary research as in artificial intelligence, cognitive science, linguistics, robotics, and spatial reasoning. Especially as predicates, they support the design of suitable query languages for spatial data retrieval and analysis in spatial database systems and geographical information systems. While, to a large extent, conceptual aspects of topological predicates (like their definition and reasoning with them) as well as strategies for avoiding unnecessary or repetitive predicate executions (like predicate migration and spatial index structures) have been emphasized, the development of robust and efficient implementation techniques for them has been largely neglected. Especially the recent design of topological predicates for all combinations of complex spatial data types has resulted in a large increase of their numbers and stressed the importance of their efficient implementation. The goal of this article is to develop correct and efficient implementation techniques of topological predicates for all combinations of complex spatial data types including two-dimensional point, line, and region objects, as they have been specified by different authors and in different commercial and public domain software packages. Our solution consists of two phases. In the exploration phase, for a given scene of two spatial objects, all topological events like intersection and meeting situations are summarized in two precisely defined topological feature vectors (one for each argument object of a topological predicate) whose specifications are characteristic and unique for each combination of spatial data types. These vectors serve as input for the evaluation phase which analyzes the topological events and determines the Boolean result of a topological predicate (predicate verification) or the kind of topological predicate (predicate determination) by a formally defined method called nine-intersection matrix characterization. Besides this general evaluation method, the article presents an optimized method for predicate verification, called matrix thinning, and an optimized method for predicate determination, called minimum cost decision tree. The methods presented in this article are applicable to all known complete collections of mutually exclusive topological predicates that are formally based on the well known nine-intersection model.

[1]  Max J. Egenhofer,et al.  Query Pre-processing of Topological Constraints: Comparing a Composition-Based with Neighborhood-Based Approach , 2003, SSTD.

[2]  Frank Manola,et al.  PROBE Spatial Data Modeling and Query Processing in an Image Database Application , 1988, IEEE Trans. Software Eng..

[3]  Max J. Egenhofer,et al.  Definitions of Line-Line Relations for Geographic Databases , 1993, IEEE Data Eng. Bull..

[4]  Eliseo Clementini,et al.  A Small Set of Formal Topological Relationships Suitable for End-User Interaction , 1993, SSD.

[5]  Ralf Hartmut Güting,et al.  Realm-based spatial data types: The ROSE algebra , 1995, The VLDB Journal.

[6]  P. D. Felice,et al.  A comparison of methods for representing topological relationships , 1995 .

[7]  Ralf Hartmut Güting,et al.  Realms: A Foundation for Spatial Data Types in Database Systems , 1993, SSD.

[8]  M. Egenhofer Categorizing Binary Topological Relations Between Regions, Lines, and Points in Geographic Databases , 1998 .

[9]  Michael F. Worboys,et al.  A Canonical Model for a Class of Areal Spatial Objects , 1993, SSD.

[10]  M. Egenhofer,et al.  Point-Set Topological Spatial Relations , 2001 .

[11]  Thomas Behr,et al.  Topological relationships between complex spatial objects , 2006, TODS.

[12]  PraingReasey,et al.  Efficient Implementation Techniques for Topological Predicates on Complex Spatial Objects , 2008 .

[13]  Max J. Egenhofer,et al.  A Formal Definition of Binary Topological Relationships , 1989, FODO.

[14]  Eliseo Clementini,et al.  Topological Invariants for Lines , 1998, IEEE Trans. Knowl. Data Eng..

[15]  Judith R. Davis,et al.  IBM’S DB2 SPATIAL EXTENDER: MANAGING GEO-SPATIAL INFORMATION WITHIN THE DBMS , 1998 .

[16]  Thomas Behr,et al.  Topological Relationships Between Complex Lines and Complex Regions , 2005, ER.

[17]  Christos Faloutsos,et al.  An Efficient Pictorial Database System for PSQL , 1988, IEEE Trans. Software Eng..

[18]  Jayant Sharma,et al.  Modeling Topological Spatial Relations: Strategies for Query Processing , 1998 .

[19]  SchneiderMarkus,et al.  Topological relationships between complex spatial objects , 2006 .

[20]  Eliseo Clementini,et al.  Composite Regions in Topological Queries , 1995, Inf. Syst..

[21]  Michael Stonebraker,et al.  Predicate migration: optimizing queries with expensive predicates , 1992, SIGMOD Conference.

[22]  Guido Moerkotte,et al.  Optimization and Evaluation of Disjunctive Queries , 2000, IEEE Trans. Knowl. Data Eng..

[23]  Spencer W. Ng,et al.  Sparing for redundant disk arrays , 1994, Distributed and Parallel Databases.

[24]  Alexander Brodsky,et al.  On Approximation-based Query Evaluation, Expensive Predicates and Constraint Objects , 1995 .

[25]  James F. Allen Maintaining knowledge about temporal intervals , 1983, CACM.

[26]  Ralf Hartmut Güting,et al.  Geo-Relational Algebra: A Model and Query Language for Geometric Database Systems , 1988, EDBT.

[27]  Max J. Egenhofer,et al.  Topological Relations Between Regions with Holes , 1994, Int. J. Geogr. Inf. Sci..

[28]  Joseph M. Hellerstein,et al.  Practical predicate placement , 1994, SIGMOD '94.

[29]  Anthony G. Cohn,et al.  Qualitative and Topological Relationships , 1993 .

[30]  S. Lane,et al.  Point set topology , 1964 .

[31]  Thomas de Ridder,et al.  Implementation of the ROSE Algebra: Efficient Algorithms for Realm-Based Spatial Data Types , 1995, SSD.

[32]  F. Frances Yao,et al.  Computational Geometry , 1991, Handbook of Theoretical Computer Science, Volume A: Algorithms and Complexity.

[33]  Max J. Egenhofer,et al.  Deriving the Composition of Binary Topological Relations , 1994, J. Vis. Lang. Comput..

[34]  Eliseo Clementini,et al.  A Model for Representing Topological Relationships between Complex Geometric Features in Spatial Databases , 1996, Inf. Sci..

[35]  David M. Mark,et al.  Modelling Conceptual Neighbourhoods of Toplogical Line-Region Relations , 1995, Int. J. Geogr. Inf. Sci..

[36]  Markus Schneider Computing the Topological Relationship of Complex Regions , 2004, DEXA.

[37]  Markus Schneider Implementing Topological Predicates for Complex Regions , 2002 .

[38]  Oliver Günther,et al.  Multidimensional access methods , 1998, CSUR.

[39]  SchneiderMarkus,et al.  Realm-based spatial data types , 1995, VLDB 1995.

[40]  Keith Ryden,et al.  OpenGIS ® Implementation Specification for Geographic information - Simple feature access - Part 1:Common architecture , 2005 .

[41]  Mark de Berg,et al.  Computational geometry: algorithms and applications , 1997 .

[42]  Max J. Egenhofer,et al.  Spatial SQL: A Query and Presentation Language , 1994, IEEE Trans. Knowl. Data Eng..

[43]  Anthony G. Cohn,et al.  Qualitative and Topological Relationships in Spatial Databases , 1993, SSD.

[44]  Markus Schneider,et al.  Dimension-refined topological predicates , 2005, GIS '05.

[45]  Markus Schneider,et al.  Spatial Data Types for Database Systems: Finite Resolution Geometry for Geographic Information Systems , 1997 .

[46]  Thomas Behr,et al.  Topological Relationships of Complex Points and Complex Regions , 2001, ER.