k-d Darts: Sampling by k-Dimensional Flat Searches
We formalize the notion of sampling a function using k-d darts. A k-d dart is a set of independent, mutually orthogonal, k-dimensional subspaces called k-d flats. Each dart has d choose k flats, aligned with the coordinate axes for efficiency. We show that k-d darts are useful for exploring a function's properties, such as estimating its integral, or finding an exemplar above a threshold. We describe a recipe for converting an algorithm from point sampling to k-d dart sampling, assuming the function can be evaluated along a k-d flat. We demonstrate that k-d darts are more efficient than point-wise samples in high dimensions, depending on the characteristics of the sampling domain: e.g. the subregion of interest has small volume and evaluating the function along a flat is not too expensive. We present three concrete applications using line darts (1-d darts): relaxed maximal Poisson-disk sampling, high-quality rasterization of depth-of-field blur, and estimation of the probability of failure from a response surface for uncertainty quantification. In these applications, line darts achieve the same fidelity output as point darts in less time. We also demonstrate the accuracy of higher dimensional darts for a volume estimation problem. For Poisson-disk sampling, we use significantly less memory, enabling the generation of larger point clouds in higher dimensions.
READ FULL TEXT