490 likes | 630 Views
CS691G Computational Geometry. Ileana Streinu Oliver Brock Fall 2004. Computational Geometry.
E N D
CS691G Computational Geometry Ileana Streinu Oliver Brock Fall 2004
Computational Geometry The study of algorithms for combinatorial, topological, and metric problems concerning sets of points, typically in Euclidean space. Representative areas of research include geometric search, convexity, proximity, intersection, and linear programming. Online Computing Dictionary
Discrete Geometry Covering Tiling Packing
Computational Geometry • Previously: design and analysis of geometric algorithms • Overlapping and merging with discrete geometry • Now: study of geometrical problems from a computational point of view Handbook of Discrete and Computational Geometry
Goals • Theoretical background • algorithms • data structures • analysis • Practical experience • programming experience • CGAL • Cinderella
Administrative Things • Prerequisites: mathematical maturity, exposure to: algorithms, complexity,programming • Grade: homeworks (33%), in-class presentation (33%), final project (33%) • Late Policy: get permission prior to due date • Web Site (from my home page)
Connection to Applications • Video Games • Voronoi Diagrams • Computer Graphics • Folding
What we saw… • Walking through large model • Collisions • Dynamic simulation • (Compare with automated movie generation)
What to look for… • Algorithms • Complexity • Data structures • Geometric primitives
Multi-Player Games • Some players might be computer generated (animations) • Distributed state representation
Georgy Voronoi 1868-1908 The Post Office Problem • Which is the closest post office to every house? (Don Knuth) • Given nsites in the plane • Subdivision of planebased on proximity
Voronoi Diagram See Applet
Anthropology and Archeology -- Identify the parts of a region under the influence of different neolithic clans, chiefdoms, ceremonial centers, or hill forts. Astronomy -- Identify clusters of stars and clusters of galaxies (Here we saw what may be the earliest picture of a Voronoi diagram, drawn by Descartes in 1644, where the regions described the regions of gravitational influence of the sun and other stars.) Biology, Ecology, Forestry -- Model and analyze plant competition ("Area potentially available to a tree", "Plant polygons") Cartography -- Piece together satellite photographs into large "mosaic" maps CrystallographyandChemistry -- Study chemical properties of metallic sodium ("Wigner-Seitz regions"); Modelling alloy structures as sphere packings ("Domain of an atom") Finite Element Analysis -- Generating finite element meshes which avoid small angles Geography -- Analyzing patterns of urban settlements Geology -- Estimation of ore reserves in a deposit using information obtained from bore holes; modelling crack patterns in basalt due to contraction on cooling Geometric Modeling -- Finding "good" triangulations of 3D surfaces Marketing -- Model market of US metropolitan areas; market area extending down to individual retail stores Mathematics -- Study of positive definite quadratic forms ("Dirichlet tesselation", "Voronoi diagram") Metallurgy -- Modelling "grain growth" in metal films Meteorology -- Estimate regional rainfall averages, given data at discrete rain gauges ("Thiessen polygons") Pattern Recognition -- Find simple descriptors for shapes that extract 1D characterizations from 2D shapes ("Medial axis" or "skeleton" of a contour) Physiology -- Analysis of capillary distribution in cross-sections of muscle tissue to compute oxygen transport ("Capillary domains") Robotics -- Path planning in the presence of obstacles Statistics and Data Analysis -- Analyze statistical clustering ("Natural neighbors" interpolation) Zoology -- Model and analyze the territories of animals Uses for Voronoi Diagram
Facts about Voronoi • A site has an unbounded region if and only if it lies on the convex hull of all sites • All Voronoi regions are convex • Dual of Delaunay triangulationQuestions: • How fast can it be constructed? • How many vertices does it have? • What is the complexity of each cell?
Applications • Graphics: • Realistic Rendering • Radiosity Computation • Morphing • Computational Biology: • Molecular Visualization • Protein Folding • Ligand Docking • Computer Vision: • Reconstructing a 3d model from images
Applications • Graphics: • Realistic Rendering • Radiosity Computation • Morphing • Computational Biology: • Molecular Visualization • Protein Folding • Ligand Docking • Computer Vision: • Reconstructing a 3d model from images
-0.0035 0.034385 0.0719602 -0.003 0.0343985 0.0720802 -0.0025 0.0343985 0.0720802 -0.002 0.0344256 0.0723203 -0.0015 0.0344526 0.0725603 -0.01425 0.0345802 0.0675169 -0.01375 0.034688 0.0684772 -0.01325 0.0347284 0.0688374 -0.01275 0.0347554 0.0690774 -0.01225 0.0347958 0.0694375 -0.01175 0.0348362 0.0697976 -0.01125 0.0348767 0.0701578 -0.01075 0.0349036 0.0703978 -0.01025 0.0349171 0.0705179 -0.00975 0.034944 0.0707579 -0.00925 0.034971 0.070998 -0.00875 0.0349845 0.071118 -0.00825 0.0349979 0.0712381 -0.00775 0.0350114 0.0713581 Right: computer rendering
Applications • Graphics: • RealisticRendering • Radiosity Computation • Morphing • Computational Biology: • Molecular Visualization • Protein Folding • Ligand Docking • Computer Vision: • Reconstructing a 3d model from images • Graphics concepts: • Light source • Shadow, penumbra • Occluder • Culling • Geometric keywords: • Visibility edges/regions • High-dimensional polytope
Applications • Graphics: • Realistic rendering • Radiosity Computation • Morphing • Computational Biology: • Molecular Visualization • Protein Folding • Ligand Docking • Computer Vision: • Reconstructing a 3d model from images • Graphics concepts: • Scene • Radiosity • Form factor • Geometric keywords: • Visibility edges/regions • Visibility complex: high-dimensional topological space • Duality point-line
Applications • Graphics: • Realistic Rendering • Radiosity Computation • Morphing • Computational Biology: • Molecular Visualization • Protein Folding • Ligand Docking • Computer Vision: • Reconstructing a 3d model from images Video
Applications • Graphics: • Realistic Rendering • Radiosity Computation • Morphing • Computational Biology: • Molecular Visualization • Protein Folding • Ligand Docking • Computer Vision: • Reconstructing a 3d model from images • Biology concepts: • Atom, molecule, molecular surface • Van der Waals radii • Geometric keywords: • Alpha-hull (convex hull) • Topology of surface • Dynamic changes
Applications • Graphics: • Realistic Rendering • Radiosity Computation • Morphing • Computational Biology: • Molecular Visualization • Protein Structure Prediction and Protein Folding • Ligand Docking • Computer Vision: • Reconstructing a 3d model from images
Proteins on computers • Where we see structure, shape, connections, regions • The computer sees only coordinates • For example, this PXR protein & ligand is in the Protein Data Bank as…
2380 lines later… ATOM 2395 O HOH 1600 29.442 64.461 -1.726 1.00 66.79 8 ATOM 2396 O HOH 1601 19.427 85.921 -22.662 1.00 60.16 8 ATOM 2397 O HOH 1602 5.344 90.815 7.154 1.00 54.96 8 ATOM 2398 O HOH 1603 -14.216 50.571 5.561 1.00 54.96 8 ATOM 2399 O HOH 1604 5.533 45.964 0.404 1.00 62.55 8 ATOM 2400 O HOH 1605 -1.394 63.145 20.705 1.00 40.08 8 ATOM 2401 O HOH 1606 -2.578 54.566 22.874 1.00 57.40 8 ATOM 2402 O HOH 1607 3.600 69.196 22.807 1.00 54.51 8 ATOM 2403 O HOH 1608 6.139 65.007 -18.611 1.00 54.86 8 ATOM 2404 O HOH 1609 4.202 75.224 -27.568 1.00 58.04 8 ATOM 2405 O HOH 1610 -5.421 61.703 24.061 1.00 57.88 8 ATOM 2406 O HOH 1611 -11.943 45.372 11.041 1.00 62.72 8 END REMARK Written by O version 7.0.0 REMARK Sun Jan 21 15:24:51 2001 CRYST1 91.345 91.345 85.302 90.00 90.00 90.00 ORIGX1 1.000000 0.000000 0.000000 0.00000 ORIGX2 0.000000 1.000000 0.000000 0.00000 ORIGX3 0.000000 0.000000 1.000000 0.00000 SCALE1 0.010948 0.000000 0.000000 0.00000 SCALE2 0.000000 0.010948 0.000000 0.00000 SCALE3 0.000000 0.000000 0.011723 0.00000 ATOM 1 C GLY 142 -5.808 44.753 13.561 1.00 58.97 6 ATOM 2 O GLY 142 -5.723 45.523 14.515 1.00 59.54 8 ATOM 3 N GLY 142 -4.377 43.177 14.842 1.00 59.37 7 ATOM 4 CA GLY 142 -5.307 43.330 13.685 1.00 59.68 6 ATOM 5 N LEU 143 -6.324 45.108 12.387 1.00 58.87 7 ATOM 6 CA LEU 143 -6.839 46.455 12.152 1.00 58.50 6 ATOM 7 CB LEU 143 -6.483 46.907 10.736 1.00 57.90 6 ATOM 8 CG LEU 143 -5.849 48.290 10.555 1.00 57.77 6 ATOM 9 CD1 LEU 143 -4.599 48.411 11.407 1.00 56.51 6 ATOM 10 CD2 LEU 143 -5.505 48.492 9.090 1.00 56.92 6 ATOM 11 C LEU 143 -8.352 46.446 12.333 1.00 58.92 6 ATOM 12 O LEU 143 -9.046 45.640 11.714 1.00 59.85 8 ATOM 13 N THR 144 -8.862 47.341 13.174 1.00 58.88 7 ATOM 14 CA THR 144 -10.299 47.407 13.444 1.00 59.76 6
Protein Structure Sequence ATOM 1 C GLY 142 -5.808 44.753 13.561 1.00 58.97 6 ATOM 2 O GLY 142 -5.723 45.523 14.515 1.00 59.54 8 ATOM 3 N GLY 142 -4.377 43.177 14.842 1.00 59.37 7 ATOM 4 CA GLY 142 -5.307 43.330 13.685 1.00 59.68 6 ATOM 5 N LEU 143 -6.324 45.108 12.387 1.00 58.87 7 ATOM 6 CA LEU 143 -6.839 46.455 12.152 1.00 58.50 6 ATOM 7 CB LEU 143 -6.483 46.907 10.736 1.00 57.90 6 ATOM 8 CG LEU 143 -5.849 48.290 10.555 1.00 57.77 6 ATOM 9 CD1 LEU 143 -4.599 48.411 11.407 1.00 56.51 6 ATOM 10 CD2 LEU 143 -5.505 48.492 9.090 1.00 56.92 6
Protein Structure Sequence GLY -5.808 44.753 13.561 1.00 58.97 6 LEU -6.324 45.108 12.387 1.00 58.87 7 THR -6.839 46.455 12.152 1.00 58.50 8 Sequence: a sentence written over a 20-letter alphabet GLY LEU THR LEU GLY ….. Structure: Geometry = coordinates for all the atoms
Applications • Graphics: • Realistic Rendering • Radiosity Computation • Morphing • Computational Biology: • Molecular Visualization • Protein Structure Prediction and Protein Folding • Ligand Docking • Computer Vision: • Reconstructing a 3d model from images
Protein Folding Predict: Structure from Sequence From Vijay Pande’s Folding@Home page at Stanford
Applications • Graphics: • Realistic Rendering • Radiosity Computation • Morphing • Computational Biology: • Molecular Visualization • Protein Structure Prediction and Protein Folding • Ligand Docking • Computer Vision: • Reconstructing a 3d model from images • Polygon folding: • Creases • Boundary of polygon matched with itself • Origami (paper) folding • Linkage (robot arm – protein backbone) folding
Applications • Graphics: • Realistic Rendering • Radiosity Computation • Morphing • Computational Biology: • Molecular Visualization • Protein Structure Prediction and Protein Folding • Ligand Docking • Computer Vision: • Reconstructing a 3d model from images
Forma Urbis Romae http://formaurbis.stanford.edu/
3-dim puzzle Protein docking
Archaeology Drug design
Computational Geometry • Basic objects: points, lines, line segments, polygons, polygonal lines, embedded graphs • Computed objects: convex hull, alpha hull, triangulation, arrangement, Voronoi diagram, Delauney triangulation. • Variations: static, dynamic (discrete changes), kinetic (continuous motion) • Wanted: good algorithms
More video clips • SoCG’04: http://give-lab.cs.uu.nl/socg04video/ • SoCG’03 http://theory.lcs.mit.edu/~edemaine/SoCG2003_multimedia/webproceedings/