Self-improving algorithms for coordinate-wise maxima
Abstract
Computing the coordinate-wise maxima of a planar point set is a classic and well-studied problem in computational geometry. We give an algorithm for this problem in the self-improving setting. We have n (unknown) independent distributions D 1, D 2,⋯, D n of planar points. An input pointset (p1,p2,⋯,pn) is generated by taking an independent sample pi from each Di, so the input distribution D is the product Π i D i. A self-improving algorithm repeatedly gets input sets from the distribution D (which is a priori unknown) and tries to optimize its running time for D. Our algorithm uses the first few inputs to learn salient features of the distribution, and then becomes an optimal algorithm for distribution D. Let OPTD denote the expected depth of an optimal linear comparison tree computing the maxima for distribution D. Our algorithm eventually has an expected running time of O(OPT D + n), even though it did not know D to begin with. Our result requires new tools to understand linear comparison trees for computing maxima. We show how to convert general linear comparison trees to very restricted versions, which can then be related to the running time of our algorithm. An interesting feature of our algorithm is an interleaved search, where the algorithm tries to determine the likeliest point to be maximal with minimal computation. This allows the running time to be truly optimal for the distribution D. Copyright © 2012 ACM.