Upload
others
View
8
Download
1
Embed Size (px)
Citation preview
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
Computational Geometry(Master Course)
Mohammad Farshi
Department of Computer Science,Yazd University
1392-1
1 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
Textbook:
Mark de Berg, Otfried Cheong, Marc van Kreveld, MarkOvermars, Computational Geometry Algorithms andApplications, 3rd Edition, Springer-Verlag BerlinHeidelberg, 2008.
2 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
Grading:
Grading:Midterm exam: 6Final exam: 7Presentation: 3Homework: 4Important: For passing the course, one should getat least 8 from midterm+final exams.
3 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
Online Resources:
CG on Web:Course Webpage:cs.yazd.ac.ir/farshi/Teaching/CG3921/CG.html
(Jeff Erickson)compgeom.cs.uiuc.edu/∼jeffe/compgeom/courses.html
(David Eppstein) www.ics.uci.edu/∼eppstein/geom.html
(Godfried Toussaint)www-cgrl.cs.mcgill.ca/∼godfried/teaching/cg-web.html
Computational Geometry Pageswww.computational-geometry.org
and much more ...
4 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
Prerequisites:
What you need to know:Basic Algorithms and Algorithm Analysis: O, Θnotations, sorting, searching.Basic Data Structures: Priority Queue (Heap), BinarySearch Tree, ... and their analysis.Basic Probability theory: Expected value, ...Not needed: Application of CG, programming,knowledge in Geometry.
5 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
Prerequisites:
6 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
Introduction
7 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
What is CG?
Computational Geometryis a branch of computer science devoted to the studyof algorithms which can be stated in terms ofgeometry.is a subfield of the Design and Analysis of Algorithmsdeals with efficient data structures and algorithms forgeometric problemsis only about 30 years oldstarted out by developing solid theoreticalfoundations, but became more and more appliedover the last years
8 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
What is CG?
ApplicationsComputer graphics,Computer-aided design and manufacturing(CAD/CAM),Robotics (motion planning and visibility problems),Geographic Information Systems (GIS) (geometricallocation and search, route planning),Integrated Circuit design (IC geometry design andverification),and so on.
9 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
What is CG?
The main branches of computational geometry are:Combinatorial computational geometry, alsocalled algorithmic geometry, which deals withgeometric objects as discrete entities. Agroundlaying book in the subject by Preparata andShamos dates the first use of the term"computational geometry" in this sense by 1975.Numerical computational geometry, also calledmachine geometry, computer-aided geometricdesign (CAGD), or geometric modeling, which dealsprimarily with representing real-world objects informs suitable for computer computations inCAD/CAM systems. This branch may be seen as afurther development of descriptive geometry and isoften considered a branch of computer graphics orCAD.
10 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
What is CG?
Combinatorial computational geometryThe primary goal is to develop efficient algorithmsand data structures for solving problems stated interms of basic geometrical objects: points, linesegments, polygons, polyhedra, etc.Example: The closest pair problem: Given n points inthe plane, find the two with the smallest distancefrom each other. The brute-force algorithm takesO(n2) time. A classic result: an algorithm that takesO(n log n) time. Also randomized algorithms thattake O(n) expected time, as well as a deterministicalgorithm that takes O(n log logn) time.Computational geometry focuses heavily oncomputational complexity since the algorithms aremeant to be used on very large data sets containingtens or hundreds of millions of points.
11 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
What is CG?
Combinatorial computational geometryThe primary goal is to develop efficient algorithmsand data structures for solving problems stated interms of basic geometrical objects: points, linesegments, polygons, polyhedra, etc.Example: The closest pair problem: Given n points inthe plane, find the two with the smallest distancefrom each other. The brute-force algorithm takesO(n2) time. A classic result: an algorithm that takesO(n log n) time. Also randomized algorithms thattake O(n) expected time, as well as a deterministicalgorithm that takes O(n log logn) time.Computational geometry focuses heavily oncomputational complexity since the algorithms aremeant to be used on very large data sets containingtens or hundreds of millions of points.
11 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
What is CG?
Combinatorial computational geometryThe primary goal is to develop efficient algorithmsand data structures for solving problems stated interms of basic geometrical objects: points, linesegments, polygons, polyhedra, etc.Example: The closest pair problem: Given n points inthe plane, find the two with the smallest distancefrom each other. The brute-force algorithm takesO(n2) time. A classic result: an algorithm that takesO(n log n) time. Also randomized algorithms thattake O(n) expected time, as well as a deterministicalgorithm that takes O(n log logn) time.Computational geometry focuses heavily oncomputational complexity since the algorithms aremeant to be used on very large data sets containingtens or hundreds of millions of points.
11 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
What is CG?
Problem classesStatic problems
1 Convex hull: Given a set of points, find the smallestconvex polyhedron/polygon containing all the points.
2 Line segment intersection: Find the intersectionsbetween a given set of line segments.
3 Voronoi diagram: Given a set of points, partition thespace according to which point is closest.
4 Closest pair of points: Given a set of points, find thetwo with the smallest distance from each other.
5 Euclidean shortest path: Connect two points in aEuclidean space (with polyhedral obstacles) by ashortest path.
6 Polygon triangulation: Given a polygon, partition itsinterior into triangles
12 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
What is CG?
Problem classesGeometric query problems
1 Range searching: Preprocess a set of points, inorder to efficiently count the number of points insidea query region.
2 Point location: Given a partitioning of the space intocells, produce a data structure that efficiently tells inwhich cell a query point is located.
3 Nearest neighbor: Preprocess a set of points, inorder to efficiently find which point is closest to aquery point.
4 Ray tracing: Given a set of objects in space, producea data structure that efficiently tells which object aquery ray intersects first.
13 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
What is CG?
Problem classesDynamic problemsVariations
Point in polygon: Decide whether a point is inside oroutside a given polygon.
14 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
What is CG?
Problem classesDynamic problemsVariations
Point in polygon: Decide whether a point is inside oroutside a given polygon.
14 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
Journals:
Journals1 Computational Geometry: Theory and Applications
(CGTA)2 Discrete & Computational Geometry (DCG)3 International Journal of Computational Geometry
and Applications (IJCGA)4 Journal of Computational Geometry (NEW)5 Other algorithmic journals
15 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
Conferences:
Conferences1 ACM Symposium on Computational Geometry
(SOCG)2 Canadian Conference on Computational Geometry
(CCCG)3 European Workshop on Computational Geometry
(EWCG)4 International Conference on Computational
Geometry and Computer Vision5 Others, like SODA, STOC, ESA.
16 / 17
Yazd Univ.
ComputationalGeometry
Course OutlineTextbook
Grading
Prerequisties
IntroductionWhat is CG?
Research on CGJournals
Conferences
17 / 17