Sweep line algorithm

Sweep line algorithm

In computational geometry, a sweep line algorithm or plane sweep algorithm is a type of algorithm that uses a conceptual "sweep line" or "sweep surface" to solve various problems in Euclidean space. It is one of the key techniques in computational geometry.

The idea behind algorithms of this type is to imagine that a line (often a vertical line) is swept or moved across the plane, stopping at some points. Geometric operations are restricted to geometric objects that either intersect or are in the immediate vicinity of the sweep line whenever it stops, and the complete solution is available once the line has passed over all objects.

This approach may be traced to scanline algorithms of rendering in computer graphics, followed by exploiting this approach in early algorithms of integrated circuit layout design, in which geometric description of an IC was processed in parallel strips, because the entire description could not fit into memory.

Application of this approach led to a breakthrough in the computational complexity of geometric algorithms when Shamos and Hoey presented algorithms for line segment intersection in the plane, and in particular, they described how a combination of the scanline approach with efficient data structures (self-balancing binary search trees) makes it possible to detect whether there are intersections among N segments in the plane in time complexity of O(N log N) [Michael Shamos, Dan Hoey, "Geometric Intersection Problems", Proc. 17th Annu. IEEE Symp. Found. Computer Sci., pp.208-215 (1976)] and it also makes it possible to report all K intersections among any N segments in the plane in time complexity of O((N + K) log N) and space complexity of O(N) [ [http://www.cs.tufts.edu/comp/163/notes05/seg_intersection_handout.pdf Line Segment Intersection Using a Sweep Line Algorithm] , Diane Souvaine, (2008)]

Since then, this approach was used to design efficient algorithms for a number of problems, such as construction of the Delaunay triangulation or Boolean operations on polygons.

The approach may be generalised to higher dimensions.

References

See also

* Bentley-Ottmann algorithm
* Shamos-Hoey algorithm


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • Sweep — may refer to any of the following:Cleaning * Chimney sweep * Street sweeper * To clean using a broom or brushBoating* A kind of oar used for guiding bateaus and similar boats * In sport rowing, a boat that has only one oar per rowerports* Sweep… …   Wikipedia

  • Line segment intersection — In computational geometry, the line segment intersection problem supplies a list of line segments in the plane and asks us to determine whether any two of them intersect, or cross.Naive algorithms examine each pair of segments, but this is highly …   Wikipedia

  • Bentley-Ottmann algorithm — The Bentley Ottmann algorithm is a sweep line algorithm for solving the line segment intersection problem on a plane. It works by considering the intersections of the line segments with a sweep line which is moved progressively across the set of… …   Wikipedia

  • Algorithm March — The Algorithm March is a dance fad created in Japan, based on the children s television series PythagoraSwitch . It is attributed to Arugorizumu Koushin Itsumo Kokokara.The basic steps are as follows, repeating as necessary:# Bend knees, reach… …   Wikipedia

  • Fortune's algorithm — is a plane sweep algorithm for generating a Voronoi diagram from a set of points in a plane using O( n log n ) time and O( n ) space. [cite book|author = Mark de Berg, Marc van Kreveld, Mark Overmars, and Otfried Schwarzkopf | year = 2000 | title …   Wikipedia

  • List of algorithms — The following is a list of the algorithms described in Wikipedia. See also the list of data structures, list of algorithm general topics and list of terms relating to algorithms and data structures.If you intend to describe a new algorithm,… …   Wikipedia

  • List of mathematics articles (S) — NOTOC S S duality S matrix S plane S transform S unit S.O.S. Mathematics SA subgroup Saccheri quadrilateral Sacks spiral Sacred geometry Saddle node bifurcation Saddle point Saddle surface Sadleirian Professor of Pure Mathematics Safe prime Safe… …   Wikipedia

  • Boolean operations on polygons — are a set of Boolean operations (AND, OR, NOT, XOR, etc.) operating on one or more sets of polygons. These sets of operations are widely used in computer graphics, CAD, and in EDA (in integrated circuit physical design and verification… …   Wikipedia

  • Michael Ian Shamos — (born April 21, 1947, and often referred to as Mike Shamos) is an American mathematician, attorney, book author, journal editor, consultant and company director. He is (with Franco P. Preparata) the author of Computational Geometry (Springer… …   Wikipedia

  • Polygon triangulation — In computational geometry, polygon triangulation is the decomposition of a polygon into a set of triangles.A triangulation of a polygon P is its partition into non overlapping triangles whose union is P. In the strictest sense, these triangles… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”