computational geometry - theoretical computer science · 2013-09-16 · computational geometry ! is...

35
Computational Geometry Definition, Application Areas, and Course Overview

Upload: others

Post on 17-Mar-2020

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Computational Geometry

Definition, Application Areas, and Course Overview

Page 2: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Computational Geometry

n  is a subfield of the Design and Analysis of Algorithms

Page 3: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Computational Geometry

n  is a subfield of the Design and Analysis of Algorithms

n  deals with efficient data structures and algorithms for geometric problems

Page 4: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Computational Geometry

n  is a subfield of the Design and Analysis of Algorithms

n  deals with efficient data structures and algorithms for geometric problems

n  is only about 30 years old

Page 5: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Computational Geometry

n  is a subfield of the Design and Analysis of Algorithms

n  deals with efficient data structures and algorithms for geometric problems

n  is only about 30 years old n  started out by developing solid theoretical

foundations, but became more and more applied over the last years

Page 6: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Application Areas

n  Computer Graphics n  Computer-aided design / manufacturing n  Telecommunication n  Geology n  Architecture n  Geographic Information Systems n  VLSI design (chip layout) n  ...

Page 7: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

This course

n  covers the theoretical basis of Computational Geometry: q  important algorithms and data structures q  design patterns

Page 8: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

This course

n  covers the theoretical basis of Computational Geometry: q  important algorithms and data structures q  design patterns

n  mentions, but does not cover applications

Page 9: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

This course

n  covers the theoretical basis of Computational Geometry: q  important algorithms and data structures q  design patterns

n  mentions, but does not cover applications n  does not require you to program anything

Page 10: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

This course

n  covers the theoretical basis of Computational Geometry: q  important algorithms and data structures q  design patterns

n  mentions, but does not cover applications n  does not require you to program anything n  requires you to solve homeworks in a careful

mathematically correct way

Page 11: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Surface Reconstruction

n  Digitizing 3-dimensional objects

Stanford Bunny

Page 12: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Surface Reconstruction

n  Step 1: Scan the object (3d laser scanner)

set of points in R3

Page 13: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Surface Reconstruction

n  Step 2: Create a triangulation

set of triangles in R3

Page 14: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Surface Reconstruction

n  Step 3: process the triangulation (rendering)

smooth surface in R3

Page 15: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Surface Reconstruction

n  Major Computational Geometry task: q  Create a “good” triangulation

Page 16: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

In this Course: Good and bad triangulations in R 2

bad triangulation (long and skinny triangles)

Page 17: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

In this Course: Good and bad triangulations in R 2

good triangulation (no small angles, almost regular triangles)

Page 18: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Collision detection

Check whether two (possibly complicated) 3d objects intersect!

Page 19: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Collision detection

n  Bounding volume heuristic: q  Approximate the objects by simple ones that

enclose them (bounding volumes)

Page 20: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Collision detection

n  Bounding volume heuristic: q  Approximate the objects by simple ones that

enclose them (bounding volumes) q  popular bounding volumes: boxes, spheres,

ellipsoids,...

Page 21: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Collision detection

n  Bounding volume heuristic: q  Approximate the objects by simple ones that

enclose them (bounding volumes) q  popular bounding volumes: boxes, spheres,

ellipsoids,... q  if bounding volumes don’t intersect, the objects

don’t intersect, either

Page 22: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Collision detection

n  Bounding volume heuristic: q  Approximate the objects by simple ones that

enclose them (bounding volumes) q  popular bounding volumes: boxes, spheres,

ellipsoids,... q  if bounding volumes don’t intersect, the objects

don’t intersect, either q  only if bounding volumes intersect, apply more

expensive intersection test(s)

Page 23: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

In this Course: Smallest enclosing ball n  Given: finite point set in R d

Page 24: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

In this Course: Smallest enclosing ball n  Given: finite point set in R d

n  Wanted: the smallest ball that contains all the points

Page 25: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

In this Course: Smallest enclosing ball n  Given: finite point set in R d

n  Wanted: the smallest ball that contains all the points

popular free software (also some commercial licenses sold): http://www.inf.ethz.ch/personal/gaertner/miniball.html

Page 26: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Boolean Operations

n  Given two (2d,3d) shapes, compute their...

Page 27: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Boolean Operations

n  ubiquituous in computer-aided design

Page 28: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

In this Course: Arrangements of lines

Page 29: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

In this Course: Arrangements of lines

n  Link to Boolean Operations:

Page 30: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

In this Course: Arrangements of lines

n  Link to Boolean Operations: Arrangement “contains” all the unions / differences / intersections

Page 31: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

In this Course: Topic Overview n  Convex Hulls n  Line Sweep (design pattern)

q  for segment intersections n  Triangulations

q  of point sets q  Delaunay Triangulations

n  Point Location q  Trapezoidal Maps q  Voronoi Diagrams

Page 32: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

In this Course: Topic Overview n  Pseudotriangulations n  Linear Programming n  Smallest Enclosing Balls n  Line Arrangements n  Davenport-Schinzel sequences n  Motion planning n  Epsilon Nets

Page 33: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

In this Course: Topic Overview n  Pseudotriangulations n  Linear Programming n  Smallest Enclosing Balls n  Line Arrangements n  Davenport-Schinzel sequences n  Motion planning n  Epsilon Nets discrete and

combinatorial geometry

Page 34: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

A Teaser Puzzle

n  Suppose that we independently choose three points uniformly at random from a circle. What is the probability that the triangle defined by them contains the center of the circle?

Page 35: Computational Geometry - Theoretical computer science · 2013-09-16 · Computational Geometry ! is a subfield of the Design and Analysis of Algorithms ! deals with efficient data

Formalities

n  Weekly Exercise session + exercise sheets (marked, but not graded)

n  3 graded homeworks, to be submitted in LaTeX (usually two weeks time) 30%

n  Homeworks may include an oral presentation or a small research project

n  30 minute oral exam, with 30 minutes preparation time; one question will be from the weekly exercise sheets; 70%