Buffer Operations in GIS



Similar documents
Oracle8i Spatial: Experiences with Extensible Databases

A HYBRID APPROACH FOR AUTOMATED AREA AGGREGATION

Crime Mapping Methods. Assigning Spatial Locations to Events (Address Matching or Geocoding)

Computational Geometry. Lecture 1: Introduction and Convex Hulls

Calculating Area, Perimeter and Volume

University of Arkansas Libraries ArcGIS Desktop Tutorial. Section 5: Analyzing Spatial Data. Buffering Features:

Integrating Quality Assurance into the GIS Project Life Cycle

MECHANICAL PRINCIPLES HNC/D MOMENTS OF AREA. Define and calculate 1st. moments of areas. Define and calculate 2nd moments of areas.

Random Map Generator v1.0 User s Guide

DATA QUALITY AND SCALE IN CONTEXT OF EUROPEAN SPATIAL DATA HARMONISATION

SCALABILITY OF CONTEXTUAL GENERALIZATION PROCESSING USING PARTITIONING AND PARALLELIZATION. Marc-Olivier Briat, Jean-Luc Monnot, Edith M.

Operating Vehicle Control Devices

GIS: Geographic Information Systems A short introduction

Hydrogeological Data Visualization

Principles and Practices of Data Integration

Lesson 15 - Fill Cells Plugin

DATA QUALITY IN GIS TERMINOLGY GIS11

Geometry - Calculating Area and Perimeter

Drawing a Bedroom Floorplan

Spatial Data Analysis

Introduction to GIS (Basics, Data, Analysis) & Case Studies. 13 th May Content. What is GIS?

Representing Geography

ANALYSIS 3 - RASTER What kinds of analysis can we do with GIS?

CHAPTER 8, GEOMETRY. 4. A circular cylinder has a circumference of 33 in. Use 22 as the approximate value of π and find the radius of this cylinder.

Pizza! Pizza! Assessment

University of Arkansas Libraries ArcGIS Desktop Tutorial. Section 4: Preparing Data for Analysis

Tallahassee Community College PERIMETER

Raster Data Structures

In mathematics, there are four attainment targets: using and applying mathematics; number and algebra; shape, space and measures, and handling data.

Geography 4203 / GIS Modeling. Class 12: Spatial Data Quality and Uncertainty

GEOMETRIC MENSURATION

The GeoMedia Fusion Validate Geometry command provides the GUI for detecting geometric anomalies on a single feature.

3D-GIS in the Cloud USER MANUAL. August, 2014

MATH STUDENT BOOK. 8th Grade Unit 6

Activity Set 4. Trainer Guide

Angles that are between parallel lines, but on opposite sides of a transversal.

SESSION 8: GEOGRAPHIC INFORMATION SYSTEMS AND MAP PROJECTIONS

Lecture Notes for Chapter 34: Images

WATER INTERACTIONS WITH ENERGY, ENVIRONMENT AND FOOD & AGRICULTURE Vol. II Spatial Data Handling and GIS - Atkinson, P.M.

SAMPLE: DO NOT COMPLETE

Big Ideas in Mathematics

Gatekeeper Systems. NaviGate USA (Underground Service Alert) Software Product Description. Product Summary. Product Description.

At the completion of this guide you should be comfortable with the following:

CHAPTER-24 Mining Spatial Databases

Topology. Shapefile versus Coverage Views

Arrangements And Duality

Progressing toward the standard

Algebra Academic Content Standards Grade Eight and Grade Nine Ohio. Grade Eight. Number, Number Sense and Operations Standard

I Gotta Know What? A Math Tutorial For Prospective CPO Students. FR = FA times FMR or FR = FA x FMR Volume (V)gallons = Volume (V)cubic feet x 7.

Chapter 19. Mensuration of Sphere

Geometry Solve real life and mathematical problems involving angle measure, area, surface area and volume.

Introduction. Introduction. Spatial Data Mining: Definition WHAT S THE DIFFERENCE?

SURFACE AREA AND VOLUME

A Method Using ArcMap to Create a Hydrologically conditioned Digital Elevation Model

Vector analysis - introduction Spatial data management operations - Assembling datasets for analysis. Data management operations

Impact of Satellites on UMTS Network

Tutorial 6 GPS/Point Shapefile Creation

PERIMETER AND AREA. In this unit, we will develop and apply the formulas for the perimeter and area of various two-dimensional figures.

WHAT IS GIS - AN INRODUCTION

Introduction to PostGIS

Copyright 2011 Casa Software Ltd. Centre of Mass

Cabri Geometry Application User Guide

ArcGIS Online. Visualizing Data: Tutorial 3 of 4. Created by: Julianna Kelly

GIS Based Risk Analysis Simplifying the Risk Assessment Process

ENHANCING INTELLIGENCE SUCCESS: DATA CHARACTERIZATION Francine Forney, Senior Management Consultant, Fuel Consulting, LLC May 2013

DESIGN OF SLABS. 3) Based on support or boundary condition: Simply supported, Cantilever slab,

1. Launch ArcCatalog, then navigate to the following location using the directory tree on the left side of the screen:

Math 1B, lecture 5: area and volume

Biggar High School Mathematics Department. National 5 Learning Intentions & Success Criteria: Assessing My Progress

Geographic Information Systems. ASM 215 Feb 2013 Larry Theller

Implementation Planning

Design and Implementation of Double Cube Data Model for Geographical Information System

Lesson 21. Circles. Objectives

Curriculum Map by Block Geometry Mapping for Math Block Testing August 20 to August 24 Review concepts from previous grades.

CSU Fresno Problem Solving Session. Geometry, 17 March 2012

GEOGRAPHIC INFORMATION SYSTEMS

Geocoding in Law Enforcement Final Report

CHAPTER 1. Introduction to CAD/CAM/CAE Systems

Isolines: Energy-efficient Mapping in Sensor Networks

1. A student followed the given steps below to complete a construction. Which type of construction is best represented by the steps given above?

Geometry Chapter Point (pt) 1.1 Coplanar (1.1) 1.1 Space (1.1) 1.2 Line Segment (seg) 1.2 Measure of a Segment

4 The Rhumb Line and the Great Circle in Navigation

Introduction to GIS. Dr F. Escobar, Assoc Prof G. Hunter, Assoc Prof I. Bishop, Dr A. Zerger Department of Geomatics, The University of Melbourne

Scan-Line Fill. Scan-Line Algorithm. Sort by scan line Fill each span vertex order generated by vertex list

RULE 1. The Field of Play

Volume of Right Prisms Objective To provide experiences with using a formula for the volume of right prisms.

SOLIDS, NETS, AND CROSS SECTIONS

1.1.1 Introduction to Cloud Computing

SPATIAL DATA MODELS AND SPATIAL DATA

Digital Business Platform for SAP

Spatial Analysis of Accessibility to Health Services in Greater London

Visualizing Data: Scalable Interactivity

Practice Test Answer and Alignment Document Mathematics: Geometry Performance Based Assessment - Paper

GAMBIT Demo Tutorial

3 Tappan Zee Bridge Rehabilitation Options

WFTDA TRACK LAYOUT GUIDE

Measuring the Optimal Transmission Power of GSM Cellular Network: A Case Study

Chapter 13: Query Processing. Basic Steps in Query Processing

Image Processing and Computer Graphics. Rendering Pipeline. Matthias Teschner. Computer Science Department University of Freiburg

37 Basic Geometric Shapes and Figures

Transcription:

Buffer Operations in GIS Nagapramod Mandagere, Graduate Student, University of Minnesota npramod@cs.umn.edu SYNONYMS GIS Buffers, Buffering Operations DEFINITION A buffer is a region of memory used to temporarily hold output or input data. In case of Geographical Information Systems, the units of buffering are points, lines, and polygons. Buffer operation refers the creation of a zone of a specified width around a point or a line or a polygon area. It is also referred to as a zone of specified distance around coverage features. There are two types of buffers: constant width buffers and variable width buffers. Both types can be generated for a set of coverage features based on each features attribute values. These zones or buffers can be used in queries to determine which entities occur either within or outside the defined buffer zone. Analogous to buffering in raster GIS is distance analysis. In practical situations, one needs to buffer multiple regions (points, lines and polygons) simultaneously. This gives rise to the idea of buffer allocation and replacement. Data movement happens by making use of primitive buffer operations such as point buffer operation, line buffer operation and polygon buffer operations. Buffer management involves the process of allocation of buffers and replacement of buffers when not needed. Several allocation policies and replacement policies that have been used in the context of memory buffers in computer science are directly applicable here. HISTORICAL BACKGROUND Spatial data usually consist of different types of objects. Object types include points, lines and polygons. The idea of providing primitives for basic buffer operations started soon after the inception of spatial databases themselves. Working on atomic units of points was soon found to be not a very scalable option. The search for a more scalable and computationally efficient technique led to the introduction of buffer primitives. SCIENTIFIC FUNDAMENTALS In GIS, we can classify buffer primitives as point buffering operations, line buffering operations, and polygon buffering operations. Buffering points: A point is the basic unit of resolution in any GIS system. Buffering point data involves the creation of a circular polygon about the point of interest. The radius of this circular polygon is called the buffer distance. In this scheme the buffer distance or the radius of the circle could be fixed for all points in a layer or the user could specify it. If multiple points in the same layer are being buffered, then buffer distances of each point are either specified in an attribute table or a look up table. If one is buffering multiple

points in the same layer, then the buffering algorithms check for overlaps in each point s buffer and remove the overlapping sections. Figure 1. Buffering Multiple Points If multiple point buffers intersect or overlap, as illustrated in Figure 1, then the system takes all the overlapping polygons and combines then into one or more polygons that represent a layer. This process of removal of overlapping sections involves the use of intersection and dissolves. In Figure 2, polygons A, B, and C describe the layer with all the eight points of interest. Figure 2. Removal of Overlaps The point to note here is that now one needs to also keep track as to whether a polygon lies within the buffer zone or outside a buffer zone. For this purpose, the system maintains a table of constituent polygons and their corresponding attribute (inside or outside) per layer. The table below shows the mapping for the layer considered in Figure 2. Polygonal Region Inside A 1 B 0 C 0 Buffering Lines: Buffering lines is a little more complicated than buffering point data. This is mainly due to the fact that lines can be made up of multiple segments. Line segments are handled independently of each other. Consider the example given in figure 3. Here we can see two line segments. First, let us consider L1 with end points (A1,B1) and (A2,B2).

Using these coordinates one can calculate dx and dy between the two end points. Now, we can represent two parallel lines at a distance of m (buffer distance) from L1 using the sine and cosine components of line L1 along with m, the buffer distance. Figure 3. Line Buffering After determining the two parallel line segments, we process any remaining line segments in a similar way. Next, we perform a line intersection test to eliminate common regions or overlapping regions. Finally, we add the bounds to the parallel buffers by capping the start point and end point of the line with half circular polygons of radius m or bounding rectangles. Figure 4. Multiple Intersecting Line Segments The task of looking for overlaps between line buffers works as follows. If we have multiple lines being buffered, each composed of multiple line segments as shown in figure 4. Again, the same process used for point buffers is applied. As a result we get one or more polygons representing a layer. Figure 5 illustrates the same along with the concept of polygon table. Here polygon A is inside the buffer zone and polygon B is outside of the buffer zone. Figure 5. Line Buffering with Overlap Removed Buffering Polygons:

Buffering of polygonal surfaces uses most of the same concepts used for line buffering. The only significant change is that the polygon buffer is created on only one side of the line that defines the polygon. In polygon buffering two options are available, namely an outside polygon which surrounds/contains the polygonal surface under consideration or an inside polygon that is contained inside the polygonal surface under consideration. Figure 6 illustrates the concept of polygonal buffering. Figure 6. Polygon Buffering Accuracy of Buffer Operations: The accuracy of buffer operations depends completely on the quality of the spatial data available. The quality of the spatial data is limited by the accuracy of the sources such as maps and satellite images. Data acquisition and manipulation techniques such as map digitization, photo interpretation, and map transformation often introduce errors in the data [4][5]. This phenomenon is often referred to as error propagation. The accuracy of positional information can have a profound impact on buffer operations. To illustrate, consider the following example of point buffering. In figure 7, O is the actual or original data point and X is the observed data point. The process of data acquisition and manipulation has caused the observed point to be e units away from its original position. Figure 7. Errors in Point Buffering Now, when point buffering algorithms are applied to the observed point X with a buffer distance of r units, we get a circular buffer region. But, if we were to apply the same buffering algorithm to point O, we would end up with a different buffer region. As is evident from the figure, certain portions which should have been in the resultant buffer region are no longer part of the resultant buffer region and some portions which were not intended, have been included in the resultant buffer region. These types of errors are usually referred to as errors of omission and errors of commission, respectively. A

detailed analysis of the effect of positional accuracy on errors of commission and omission can be found in [3]. Line buffering algorithms also suffer a similar problem due to inaccuracy of positional data. Consider Figure 8, Figure 8. Errors in Line Buffering Here, (A1,B1) and (A2,B2) are the original points that form the line segment. Due to positional errors points, (A2,B2) appear to be at (E1,E2). Figure 8 shows the effect of applying line buffering operations described earlier to the two line segments. The resulting buffer regions and the errors of commission and omission are shown in Figure 8. For a detailed analysis of the relationship between positional accuracy and errors of commission and omission, the reader may refer to [3]. The algorithms used for various buffer operations have some impact on the extent of errors of omission and commission. But the buffer depth chosen for these algorithms can have a profound impact on the errors of commission and omission. Hence one has to exercise some caution when selecting the buffer depths in algorithms which employ user defined buffer depths. KEY APPLICATIONS In this section, first we consider real world examples where buffering of points, lines or polygons are used. Next, we explore various schemes which make use of buffer operations. Consider the following scenario for point buffering. The University of Minnesota wants to make sure that every inch of the main campus is covered by a wireless network. The university has deployed a large number of wireless access points at various points on campus. Now, the goal is to find if the wireless network covers all points in the map shown. For the buffer distance, let s assume that the wireless range of each access point is 500m. Now, lets apply the concept of point buffering for the wireless access points with a buffer distance of 500m. The next step is to remove overlaps. Now the region that do not fall under the resultant buffer polygon(s) are the regions that do not have any wireless network coverage. Next, let us look at a real world application of line buffering. Consider a huge ship, the boundary of which can be modeled as a set of line segments. The owners of the ship want to know if all the deck areas near the edges have been water proofed. For this example, let us say that only deck areas within a distance of 50 feet from any edge need to be water proofed. Now, by applying line buffering to all line segments that form the exterior of the ship with a buffer distance of 50 feet, we obtain a polygonal area that

needs to be water proofed. By checking if all area under this polygon have been water proofed, the owner achieves his/her goal. Now, let us look at a real world application of polygonal buffering. Consider a scenario where the university is hosting a special event and hence is planning to create a few make-shift parking spots around the campus. Now, a few rules need to be followed, i.e., no vehicle can be parked with in 50 feet of any campus building and all parking spots need to be off road parking. We can model this situation by buffering polygons around each campus building with a buffer distance of 50 feet. Here we make use of outer polygonal buffering. After eliminating the overlaps, all areas that do not fall under the resultant buffer polygon(s) are free for parking. Buffer Allocation: Buffer or memory is often a limited shared resource. Often a need arises to buffer multiple regions such as points, lines or polygons simultaneously. Multiple applications or streams share common buffers. Buffer allocation involves the process of segmenting or dividing these buffer regions amongst competing applications or processes. Different allocation schemes have been proposed in computer science. Most of them can be readily applied to GIS with minimal modifications. One could perform static allocation or dynamic on demand allocation of buffers. Dynamic allocation is more complex to implement but more resilient to changes. Buffer regions could be strictly partitioned between competing processes or a global buffering scheme could be used. Pre-fetching of Buffers: In certain situations one could predict buffer access patterns. For instance, if a GIS application is working over a specific region of a map, one could think of buffering all polygons that are adjacent to the polygon under consideration. This works like a look ahead of a pre-fetch mechanism. This pre-fetching can often lead to huge performance improvement in terms of response times for queries. Another mechanism of pre-fetching uses the application domain knowledge to pre-fetch relevant regions. Specifically, an application can predict its own access pattern and inform the system to pre-fetch certain regions. Again, different pre-fetching schemes are used, depending on the application domain. Buffer Replacement: A buffer is a limited region of memory. Since the data set size is larger than the buffer size, the need arises to replace existing data in order to accommodate new data. This process is referred to as buffer replacement. A number of buffer replacement algorithms that have been proposed in computer science are directly applicable here. Some of the most popular algorithms include, Not Recently Used (NRU), Least Recently Used (LRU), Clock Algorithm, Second Chance, Working Set, First In First Out (FIFO), Last In First Out (LIFO) and Aging. Out of these, LRU and its variants are the most popular algorithms. In GIS applications, FIFO might make more sense if there is little repeatability of buffer regions. The choice of buffer replacement algorithm completely depends on the application for which it is being used.

FUTURE DIRECTIONS Buffer operations have been around for a while now. Most work now focuses on intelligent use of buffer operations. One of the interesting fields of research is predictive and adaptive buffering techniques. Since any improvement in these techniques can have a drastic impact on spatial query response times, much effort is ongoing in this field. RECOMMENDED READING [1] Tutorials on Topics in GIS: http://www.sli.unimelb.edu.au/gisweb/buffersmodule/buffselect.htm [2] Glossary and definition of key terms in GIS: http://en.mimi.hu/gis/buffer.html [3] Yukio Sadahiro, Buffer Operations on Spatial Data with limited Accuracy, In Transactions in GIS, 2005, 9(3): pages 323-344 [4] Heuvelink G B N, Propagation of Errors in Spatial Modeling with GIS, International Journal on Geographical Information Systems 3: Pages 303-322 [5] Maffini G, Arno M, Bitterlich W, Observation and Comments on generation and treatment of errors in digital GIS data, In Goodchild M F and Gopal S, The Accuracy of Spatial Databases. London, Taylor and Francis: Pages 55-67