Fix a set of $n$ points $P \subset \mathbb{R}^d$. Now a query point $q$ arrives, and the goal is produce a point $r$ sampled uniformly at random from the Voronoi cell of $q$ in the set $P \cup \{q\}$.

For the purpose of this question, you can assume that $q$'s Voronoi cell is always bounded (for example $q$ always lies in the convex hull of $P$).

Is there anything known about this problem ?

Some constraints:

  • I might want more than one sample from $q$'s Voronoi cell. These should be IID.
  • I am allowed to preprocess the points, but I cannot spend time exponential in $d$.
  • The sample should be generated in time sublinear in $n$ and polynomial in $d$ ideally.

Note that the above rule out computing the Voronoi cell explicitly. Also note that while a rejection sampling approach would yield a uniform sample, it's not clear how to do it efficiently.

  • 2
    $\begingroup$ Is there some reason that it doesn't just immediately work to use the usual volume-estimation random-walk techniques for generating uniformly random samples within convex bodies in polynomial time? $\endgroup$ Jan 7, 2013 at 1:23
  • 1
    $\begingroup$ I should have clarified. It should be possible to use them since the membership oracle can be computed, but the running time to generate a sample is quite expensive (at the very least it's linear time because you describe the voronoi cell in terms of the n halfplane constraints). Hence the sublinear proviso. $\endgroup$ Jan 7, 2013 at 3:34
  • $\begingroup$ Ah, I missed the sublinear part. $\endgroup$ Jan 7, 2013 at 4:32
  • 1
    $\begingroup$ you can realize any polytope as a Voronoi cell. so at a minimum you'd need to be able to preprocess a polytope so that you can draw IID uniform samples from it faster than doing the full random walk each time. this seems hard enough itself? $\endgroup$ Jan 9, 2013 at 8:51

1 Answer 1


Too short for a comment... The following is intuitive bla bla, and feel free not buy it.

That seems extremely unlikely - assuming the points are uniformly distributed, the number of neighbours of the cell of $q$ is going to be $2^d$. Here is maybe a more formal argument. Pick a set of points on the unit hypersphere such that angle between any two points is at least, I dont know, 80 degrees. We know, that one can pick an exponential number of such points on the sphere without too much effort if the dimension is sufficiently large. Now, intuitively, for any subset of half the points, the Voronoi cell of the center of the sphere should have almost double the volume when compared to the cell volume with all the points. This inituitively implies you have to inspect all the points to get a good volume estimate. Which seems to imply, again intuitively, that sampling uniformly is going to be impossible, since the problems seems to be polynomially equivalent...

  • $\begingroup$ That's an interesting argument. However, wouldn't such an argument suggest that you can't estimate the volume of a convex body defined by halfplanes, which we know we can do ? $\endgroup$ Jan 9, 2013 at 5:35
  • $\begingroup$ Not really - if you can read all the input then this argument fails.... $\endgroup$ Jan 9, 2013 at 23:17
  • $\begingroup$ Well I am allowed to preprocess the input any way I see fit. $\endgroup$ Jan 9, 2013 at 23:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.