The.Algorithm.Design.Manual.Springer-Verlag.1998
The.Algorithm.Design.Manual.Springer-Verlag.1998 The.Algorithm.Design.Manual.Springer-Verlag.1998
Voronoi Diagrams Aurenhammer [Aur91] and Fortune [For92] provide excellent surveys on Voronoi diagrams and associated variants such as power diagrams. The first algorithm for constructing Voronoi diagrams was based on divide-and-conquer and is due to Shamos and Hoey [SH75]. Good expositions of Fortune's sweepline algorithm for constructing Voronoi diagrams in [For87] include [O'R94]. Good expositions on the relationship between Delaunay triangulations and (d+1)-dimensional convex hulls [ES86] include [O'R94]. In a kth-order Voronoi diagram, we partition the plane such that each point in a region is closest to the same set of k sites. Using the algorithm of [ES86], the complete set of kth-order Voronoi diagrams can be constructed in time. By doing point location on this structure, the k nearest neighbors to a query point can be found in . Expositions on kth-order Voronoi diagrams include [O'R94, PS85]. The smallest enclosing circle problem can be solved in time using (n-1)st order Voronoi diagrams [PS85]. In fact, there exist linear-time algorithms based on low-dimensional linear programming [Meg83]. A linear algorithm for computing the Voronoi diagram of a convex polygon is given by [AGSS89]. Related Problems: Nearest neighbor search (see page ), point location (see page ), triangulation (see page ). Next: Nearest Neighbor Search Up: Computational Geometry Previous: Triangulation Algorithms Mon Jun 2 23:33:50 EDT 1997 file:///E|/BOOK/BOOK4/NODE187.HTM (4 of 4) [19/1/2003 1:31:41]
Nearest Neighbor Search Next: Range Search Up: Computational Geometry Previous: Voronoi Diagrams Nearest Neighbor Search Input description: A set S of n points in d dimensions; a query point q. Problem description: Which point in S is closest to q? Discussion: The need to quickly find the nearest neighbor to a query point arises in a variety of geometric applications. The classic example in two dimensions is designing a system to dispatch emergency vehicles to the scene of a fire. Once the dispatcher learns the location of the fire, she uses a map to find the firehouse closest to this point so as to minimize transportation delays. This situation occurs in any application mapping customers to service providers. Nearest-neighbor search is also important in classification. Suppose we are given a collection of data about people (say age, height, weight, years of education, sex, and income level) each of whom has been labeled as Democrat or Republican. We seek a classifier to decide which way a different person is likely to vote. Each of the people in our data set is represented by a party-labeled point in d-dimensional space. A simple classifier can be built by assigning to the new point the party affiliation of its nearest neighbor. Such nearest-neighbor classifiers are widely used, often in high-dimensional spaces. The vector- file:///E|/BOOK/BOOK4/NODE188.HTM (1 of 4) [19/1/2003 1:31:43]
- Page 521 and 522: Vertex Cover Vertex cover and indep
- Page 523 and 524: Traveling Salesman Problem Next: Ha
- Page 525 and 526: Traveling Salesman Problem practice
- Page 527 and 528: Traveling Salesman Problem Size is
- Page 529 and 530: Hamiltonian Cycle Eulerian cycle, p
- Page 531 and 532: Graph Partition Next: Vertex Colori
- Page 533 and 534: Graph Partition annealing, is almos
- Page 535 and 536: Vertex Coloring Several special cas
- Page 537 and 538: Vertex Coloring Notes: An excellent
- Page 539 and 540: Edge Coloring The minimum number of
- Page 541 and 542: Graph Isomorphism Next: Steiner Tre
- Page 543 and 544: Graph Isomorphism vertices into equ
- Page 545 and 546: Steiner Tree Next: Feedback Edge/Ve
- Page 547 and 548: Steiner Tree The worst case for a m
- Page 549 and 550: Feedback Edge/Vertex Set Next: Comp
- Page 551 and 552: Feedback Edge/Vertex Set An interes
- Page 553 and 554: Computational Geometry complete bib
- Page 555 and 556: Robust Geometric Primitives Next: C
- Page 557 and 558: Robust Geometric Primitives ● Are
- Page 559 and 560: Robust Geometric Primitives Related
- Page 561 and 562: Convex Hull ● How many dimensions
- Page 563 and 564: Convex Hull http://www.cs.att.com/n
- Page 565 and 566: Triangulation Next: Voronoi Diagram
- Page 567 and 568: Triangulation GEOMPACK is a suite o
- Page 569 and 570: Voronoi Diagrams Next: Nearest Neig
- Page 571: Voronoi Diagrams McDonald's, the ti
- Page 575 and 576: Nearest Neighbor Search Implementat
- Page 577 and 578: Range Search Next: Point Location U
- Page 579 and 580: Range Search subdivisions in C++. I
- Page 581 and 582: Point Location the n edges for inte
- Page 583 and 584: Point Location More recently, there
- Page 585 and 586: Intersection Detection ● Do you w
- Page 587 and 588: Intersection Detection Implementati
- Page 589 and 590: Bin Packing Next: Medial-Axis Trans
- Page 591 and 592: Bin Packing approach for general sh
- Page 593 and 594: Medial-Axis Transformation Next: Po
- Page 595 and 596: Medial-Axis Transformation Implemen
- Page 597 and 598: Polygon Partitioning number of piec
- Page 599 and 600: Simplifying Polygons Next: Shape Si
- Page 601 and 602: Simplifying Polygons vertices and o
- Page 603 and 604: Shape Similarity Next: Motion Plann
- Page 605 and 606: Shape Similarity or how close it is
- Page 607 and 608: Motion Planning There is a wide ran
- Page 609 and 610: Motion Planning often arise in the
- Page 611 and 612: Maintaining Line Arrangements Think
- Page 613 and 614: Maintaining Line Arrangements Next:
- Page 615 and 616: Minkowski Sum where x+y is the vect
- Page 617 and 618: Set and String Problems Next: Set C
- Page 619 and 620: Set Cover Next: Set Packing Up: Set
- Page 621 and 622: Set Cover Figure: Hitting set is du
Nearest Neighbor Search<br />
Next: Range Search Up: Computational Geometry Previous: Voronoi Diagrams<br />
Nearest Neighbor Search<br />
Input description: A set S of n points in d dimensions; a query point q.<br />
Problem description: Which point in S is closest to q?<br />
Discussion: <strong>The</strong> need to quickly find the nearest neighbor to a query point arises in a variety of<br />
geometric applications. <strong>The</strong> classic example in two dimensions is designing a system to dispatch<br />
emergency vehicles to the scene of a fire. Once the dispatcher learns the location of the fire, she uses a<br />
map to find the firehouse closest to this point so as to minimize transportation delays. This situation<br />
occurs in any application mapping customers to service providers.<br />
Nearest-neighbor search is also important in classification. Suppose we are given a collection of data<br />
about people (say age, height, weight, years of education, sex, and income level) each of whom has been<br />
labeled as Democrat or Republican. We seek a classifier to decide which way a different person is likely<br />
to vote. Each of the people in our data set is represented by a party-labeled point in d-dimensional space.<br />
A simple classifier can be built by assigning to the new point the party affiliation of its nearest neighbor.<br />
Such nearest-neighbor classifiers are widely used, often in high-dimensional spaces. <strong>The</strong> vector-<br />
file:///E|/BOOK/BOOK4/NODE188.HTM (1 of 4) [19/1/2003 1:31:43]