Carleton University - School of Computer Science Honours Project
Winter 2019
An Analysis of the Smallest k-Enclosing Disc Problem and Related Problems
Jeremy Melone
SCS Honours Project Image
ABSTRACT
In this report, I will detail my investigation into the Smallest k-Enclosing Disc problem. I will first analyze the linear solution to the problem described by Sariel Har-Peled and Soham Mazumdar in their paper titled “Fast Algorithms for Computing the Smallest k-Enclosing Disc” [1]. I will first analyze and describe the functions of their algorithm as was detailed in their paper, in order to demonstrate how the algorithm works and achieves a 2-approximation of the problem in O(n+n*min(1/(kδ^3) log2 1/δ, k)) time. Then, I will provide a python implementation of the algorithm to demonstrate its functionality in practice. (See Appendix 1) Next, I will investigate the related problem of determining the smallest k-enclosing n-sided polygon. I will describe this problem in detail, as well as describe the solution to the problem I came up with. My solution uses the k-Enclosing Disc algorithm from Sariel Har-Peled and Soham Mazumdar’s paper [1] to approximate the smallest k-Enclosing n-sided polygon in O(DiscAlg + n + k) time. I will also analyze how well this approximation compares to the optimal solution by using a Brute Force algorithm which is guaranteed to return the smallest enclosing polygon. It is worth noting that for this paper I am assuming that we are trying to minimize the area of the polygon, not the perimeter, although it could be adapted for that case.