What is Computational Geometry

20
1 What is Computational Geometry Ref: Godfried T. Toussain t

description

What is Computational Geometry. Ref: Godfried T. Toussaint. Given a line (y= a x+ b ) and a point p (x p ,y p ), determine whether the point is above/below the line. The Problem. Solution 1: Set x z = x p Compute y z Compare y z and y p. Signed area: Negative if CW Positive if CCW - PowerPoint PPT Presentation

Transcript of What is Computational Geometry

Page 1: What is Computational Geometry

1

What is Computational Geometry

Ref: Godfried T. Toussaint

Page 2: What is Computational Geometry

2

The Problem

• Given a line (y=ax+b) and a point p (xp,yp), determine whether the point is above/below the line

• Solution 1:– Set xz= xp

– Compute yz

– Compare yz and yp

Page 3: What is Computational Geometry

3

Alternate Solutions

• Signed area:– Negative if CW

– Positive if CCW

• How do you compare these two algorithms in terms of:– Robustness?

– Efficiency?

Origin of this formula

Consider special

cases …

Page 4: What is Computational Geometry

4

Possible Definitions of CGeom

• The science concerned with computing geometric properties of sets of geometric objects in space

• The design and analysis of algorithms for solving geometric problems

• The study of the inherent computational complexity of geometric problems under varying models of computation

• Runs faster, requires less memory space and more robust wrt numerical errors

Page 5: What is Computational Geometry

5

Modern Computational Geometry

• Ph.D. thesis of M. Shamos (Yale, 1978)• Has been around for more than 2600 years starting

with the Greeks• Difference:

– The size of input to an algorithm (n)• (Today) Hundreds, thousands, or millions

– The dimension of a problem (d)• (Greek) Euclidean two and three space• (Today) not limited to the exploration of low dimensional prob

lems; non-Euclidean, higher dimension

Page 6: What is Computational Geometry

6

The Complexity of Algorithm

• Ex: Convex Hull• (naïve algorithm)• C(n): the total number

of primitive operation required

Page 7: What is Computational Geometry

7

Big O, Big Omega

• Big O:– A simplified expression with only the dominant terms, droppi

ng the coefficient– The contribution that Shamos made was the emphasis on incl

uding with each algorithm a complexity analysis in terms of “Big O” notation and the introduction of lower bounds on the complexity of geometric problems

• Big Omega :– Lower bound on the time complexity of the problem– A statement about the problem (not the algorithm)– Optimal: when complexity function of the algorithm matches

the complexity function of the problem

Page 8: What is Computational Geometry

8

The Domain of CG

• Geometric Probing• Art Gallery Theorems

and Algorithms• Computer Graphics• Geometric Modeling• Computer Vision• Robotics

• Dynamic CG• Parallel CG• Isothetic CG• Numerical CG• Geodesic CG• See also:

Eppstein’s Geometry in Action

Page 9: What is Computational Geometry

9

Ex: Minimax Facility Location Problem

• Determine location X where a facility should be located so as to minimize the distance from X to its furthest customer

• Find the smallest circle that encloses a given set of n points

• [reference]

Page 10: What is Computational Geometry

10

Ex: Geometric Probing

• Implement a QC procedure to determine circularity of rings

• For smooth convex shape, the verification of D in sufficient directions should work

• Apply 3 probes, 60 degrees apart

• Does this work?• [Challenger anecdote]

Page 11: What is Computational Geometry

11

Geometric Probing (cont)

• Reuleaux triangle

• (construction)

• Known as constant diameter shape

• Smooth rolling, yet highly non-circular

• Demonstrates that any number of such probes is insufficient to determine circularity

Verify the distance between any parallel lines

is D

Page 12: What is Computational Geometry

12

Theory of Geometric Probing

• The determination of the number of probes that are necessary and sufficient to determine an object completely

• The design of efficient algorithms for actually carrying out the probing strategies

• Computer vision, pattern recognition, QC, robotics

• References:– Steven Skiena: Proble

ms in Geometric Probing. Algorithmica 4(4): 599-605 (1989)

– Skiena: Interactive Reconstruction via Geometric Probing (1992)

Page 13: What is Computational Geometry

13

Ex:Art Gallery Problem

• 1973 Victor Klee poses the problem

• Given n arbitrarily shaped gallery, what is the minimum number of cameras required to guard the interior of an n-wall gallery?

• 1975, Vasek Chvatal’s theorem: n/3 are always sufficient and sometimes necessary.

Page 14: What is Computational Geometry

14

Observation

Page 15: What is Computational Geometry

15

Computer Graphics

• Hidden line problem; hidden surface removal; visibility problem

Page 16: What is Computational Geometry

16

Isothetic Computational Geometry

• Also rectilinear computational geometry

• Often greatly simplifies the algorithm

• Image processing, VLSI design

Page 17: What is Computational Geometry

17

Geodesic

• Euclidean distance between two points no longer a useful measure

• Geodesic distance: the length of the shortest path between the two points that avoids obstacles

• Geodesic convex hull (also relative convex hull):• Given a set S of n points inside a simple polygon

P of n vertices, the relative convex hull of X (relative to P) is the minimum perimeter circuit that lies in p and encloses S.

Page 18: What is Computational Geometry

18

Homework

• Verify that the signed area of triangle is correct.

• Verify that for Reuleaux triangles, the distance between any pair parallel lines is constant.

Page 19: What is Computational Geometry

19

Page 20: What is Computational Geometry

20

...

1

0

0

0

02

1

sin:

pqprprpq

prpr

pqpq yyxxyyxx

yyxx

yyxx

kji

prpqprpqCCW

p q

r