APPROXIMATION ALGORITHMS CSCI 6963
Popular in Course
Popular in ComputerScienence
This 2 page Class Notes was uploaded by Ransom Blanda on Monday October 19, 2015. The Class Notes belongs to CSCI 6963 at Rensselaer Polytechnic Institute taught by Staff in Fall. Since its upload, it has received 50 views. For similar materials see /class/224867/csci-6963-rensselaer-polytechnic-institute in ComputerScienence at Rensselaer Polytechnic Institute.
Reviews for APPROXIMATION ALGORITHMS
Report this Material
What is Karma?
Karma is the currency of StudySoup.
Date Created: 10/19/15
Summary for The R Tree A Dynamic Index for MultiDimensional Objects by Timos Sellis Nick Roussopoulos and Christos Faloutsos Multimedia Database Systems CSCI 6963 February 21 2003 Multidimensional data arise in many applications to name the most important Cartography ComputerAided Design Computer vision and robotics and Rule indexing in expert database systems Since database management systems can be used to store one dimensional data like integer or real number and stings considerable interest has been developed in using DBMSs to store multidimensional data as well The main operations are Point Queries and Region Queries In addition operations like insertions deletions and modi cations of objects should be supported in a dynamic environment Methods for multi dimensional points The main idea is to divide the whole space into disjoint subregions We classify the known methods by the following attributes I Position Fixed methodsThe position of the splitting hyperplane is predetermined as the grid file does Adaptable methodsThe opposite is to let the data points determine the position of the hyperplane as the kd trees do I Dimensionality 1 d cutsplit done with only one hyperplane k d cutsplit in all k dimensions Locality Gridsplits not only the affected region but also all the regions in this direction Brickwallrestrict the splitting hyperplane to extend solely inside the region to be split Methods for rectangles I Methods that transform the rectangle into points in a space of higher dimensionality kd trees or grid le after a rotation of the axes Methods that use space lling curves to map a kd space onto a ld space 2 transform Methods that divide the original space into appropriate subregionsRtrees R trees R tree structure s main idea is that allow partitions to split rectangles then zero overlap among intermediate node entries can be achieved For each entry p REC T in an intermediate node the subtree rooted at the node pointed to by p contains a rectangle R if and only if R is covered by REC T The only exception is whenR is a rectangle at a leaf node in that case R must just overlap with REC T For any two entries p1 RECT1 and p2 RECT2 of an intermediate node the overlap between RECT1 and RECT2 is zero The root has at least two children unless it is a leaf All leaves are at the same level Operations to keep the R tree in a valid form Searching operation The idea is to first decompose the search space into disjoint sub regions and for each of those descend the tree until the actual data objects are found in the leaves Insertion operation Insertion a new rectangle in an R tree is done by searching the tree and adding the rectangle in leaf notes The difference from Rtree is that the input rectangle may be added to more than one leaf node the reason being that it may be broken to subrectangles along existing partitions of the space Deletion operation Deletion of a rectangle from an R tree is done as in Rtrees by first locating the rectangles that must be deleted and then removing it them from the leaf nodes The reason that more than one rectangle may have to be removed from leaf nodes is that the insertion routine outlined above may introduce more than one copies for a newly inserted rectangle Node Splitting operation Splitting algorithm is needed to produce two new nodes We require that the two subnodes cover mutually disjoint areas we search for a good partition that will decompose the space into two subregions Contrary to Rtree downward propagation of the split may be necessary This is due to that a rectangle R should not be found in a subtree rooted at a node A unless the rectangle associated withA covers R completely Hence nodes intersected by the partitions must be split recursively Operations to build R tree Partition operation Decompose the total space into a locally optimal in terms of search performance first subregion and the remaining subregion Partition uses the Sweep routine that sweeps the space in a fashion parallel to the x or y axis Sweep operation The routine Sweep is used to scan the rectangles and identify points where space partitioning is possible Pack operation Pack attempts to set up an R tree with good search performance Pack is to organize a R tree depends on a set S of rectangles and the fillfactor of the tree The method is recursively pack the entries of each level of the tree from bottom up In each level we are partitioning nonleaf nodes and some of the rectangles have been split because of the chosen partition 1 39 39J r r the split 39 39 and if necessary propagate the changes upward also R trees achieve up to 50 savings in disk accesses compared to Rtree when searching files of thousands of rectangles