Skip to main content

During 2021 we will continue to support students who need to study remotely due to the ongoing impacts of COVID-19 and travel restrictions. Make sure you check the location code when selecting a unit outline or choosing your units of study in Sydney Student. Find out more about what these codes mean. Both remote and on-campus locations have the same learning activities and assessments, however teaching staff may vary. More information about face-to-face teaching and assessment arrangements for each unit will be provided on Canvas.

Unit of study_

COMP5045: Computational Geometry

In many areas of computer science- robotics, computer graphics, virtual reality, and geographic information systems are some examples- it is necessary to store, analyse, and create or manipulate spatial data. This course deals with the algorithmic aspects of these tasks: we study techniques and concepts needed for the design and analysis of geometric algorithms and data structures. Each technique and concept will be illustrated on the basis of a problem arising in one of the application areas mentioned above.

Code COMP5045
Academic unit Computer Science
Credit points 6
Assumed knowledge:
Experience with data structures and algorithms as covered in COMP9103 OR COMP2123 OR COMP2823 OR INFO1105 OR INFO1905 (or equivalent UoS from different institutions).

At the completion of this unit, you should be able to:

  • LO1. argue the correctness and efficiency of a proposed solution. Mainly in writing but also orally
  • LO2. demonstrate knowledge of fundamental algorithms for several problems, for example algorithms to compute convex hulls, triangulate polygons, low-dimensional linear programming and Voronoi diagrams, knowledge of fundamental general algorithmic design techniques, such as greedy, dynamic programming and divide-and-conquer
  • LO3. read, understand, analyze and modify a given algorithm. Ability to design algorithmic solutions for given geometric problems
  • LO4. attack theoretical and practical problems in various application domains
  • LO5. understand and apply important techniques and results in computational geometry
  • LO6. analyze the complexity of a given algorithm
  • LO7. demonstrate knowledge of fundamental geometric data structures such as, data structures for range searching, point location, segment intersection and ray shooting. Demonstrate knowledge of fundamental general design techniques for data structures, such as multi-level trees, duality and divide-and-conquer.

Unit outlines

Unit outlines will be available 2 weeks before the first day of teaching for the relevant session.