460-4038/02 – Algorithmisation of Geometrical Problems (AGU)
Gurantor department | Department of Computer Science | Credits | 4 |
Subject guarantor | doc. Dr. Ing. Eduard Sojka | Subject version guarantor | doc. Dr. Ing. Eduard Sojka |
Study level | undergraduate or graduate | Requirement | Optional |
Year | 2 | Semester | winter |
| | Study language | English |
Year of introduction | 2015/2016 | Year of cancellation | |
Intended for the faculties | FEI | Intended for study types | Follow-up Master |
Subject aims expressed by acquired skills and competences
The student will understand the techniques of effectively solving the geometrical problems. He/she will be able to propose, implement and evaluate the corresponding algorithms.
Teaching methods
Lectures
Tutorials
Summary
The following topics are discussed: The complexity of the problem and the complexity of the algorithm. Techniques of constructing effective geometrical algorithms. Effective data structures for solving the geometrical problems. Algorithmisation of selected geometrical problems: Point location in a planar map. Convex hull. Proximity problems. Voronoi diagram. Triangulation. Intersections. Visibility.
Compulsory literature:
1. de Berg, M., van Kreveld M., Overmars, M., Schwarzkopf, O.: Computational Geometry: Algorithms and Applications (Third edition), Springer-Verlag, ISBN: 978-3-540-77973-5, 2008.
Recommended literature:
Additional study materials
Way of continuous check of knowledge in the course of semester
Conditions for credit: The tasks assigned during the exercises must be carried out.
The xamination is oral.
E-learning
Other requirements
No further requirements are imposed.
Prerequisities
Subject has no prerequisities.
Co-requisities
Subject has no co-requisities.
Subject syllabus:
Lectures:
1. The complexity of a problem and the complexity of an algorithm. The complexity in the worst case, expected complexity. Models of computation. RAM, algebraic decision tree.
2. Estimating the lower bound of the worst case time complexity by making use of the transformation to the point location problem in En. Using the transformation between problems for estimating the lower bound of time complexity.
3. The data structures for storing the points in multi-dimensional spaces (k-d trees, quad/oct trees, BSP trees, interval trees, range trees).
4. Fundamental techniques of creating the effective algorithms: the plane sweeping method, divide and conquer method, prune and search method, randomised algorithms.
5. Point location problem. Determining the mutual position of a point and a simple polygon. Determining the position of a point in a planar map. Applications.
6. Convex hull. Algorithms for determining the convex hull in the two-dimensional space.
7. Convex hull in multi-dimensional spaces. Applications of convex hull.
8. The problems of distance and proximity. Finding the closest neighbours in E2 and in En.
9. Voronoi diagram. Constructing the Voronoi diagram. Solving the proximity problems by the Voronoi diagram.
10. Triangulation. Delaunay triangulation and its properties. Algorithms for computing the Delaunay triangulation. Triangulation of a simple polygon.
11. Intersections. Finding the intersections of a set of line segments in E2. Intersection of simple polygons.
12. Visibility graph. Computing the visibility graph for planar problems. Applications.
13. On the application of the algorithms discussed in the course: Planning the motion of a mobile robot.
14. Application of modeling the terrain in geographic systems.
Exercises:
During the exercises, the students construct the algorithms that solve given problems. They explain their algorithms in a critical discussion, and evaluate the time and space complexities of the algorithms they proposed.
1. Transformation between problems and estimating the lower bound of time complexity.
2. The search trees for storing the points in multi-dimensional spaces.
3. Plane sweeping method and its applications.
4. Point location problems: point vs polygon, point vs planar map.
5. Convex hull algorithms in the two-dimensional space.
6. Convex hull in multi-dimensional spaces.
7. The problems of distance and proximity. Finding the nearest neighbours.
8. Constructing the Voronoi diagram and its applications.
9. Delaunay triangulation, its computation and properties.
10. Finding the intersections of two polygons.
11. Computing visibility graph for planar problems.
12. Planning the motion of a mobile robot.
13. Modeling the terrain in geographic systems.
14. Summary and obtaining the credit.
Conditions for subject completion
Occurrence in study plans
Occurrence in special blocks
Assessment of instruction
Předmět neobsahuje žádné hodnocení.