5

I want to generate M n-dimensional points constrained inside a hypercube such that the points are relatively well separated. I'm playing around with this using a scripting language like R or python.

For example, if we're working with n=2 and the rectangle with vertices (0,0), (5,0), (0,5), (5,5), and I want to generate 4 points inside it, then I might cut the rectangle into 4 separate smaller rectangles, and then generate a point in the middle of each square.

The problem is that I'm having a lot of trouble visualizing how to go about this when it goes beyond 2 dimensions. Is this the best approach to solve my problem? What kind of topics should I even be searching or googling to try and find a solution? Is this question about calculating a spread of m vectors in n-dimensional space possibly relevant to what I want to do? I also found a lot of questions about choosing evenly distributed points on a sphere or this question about Well separated points on a sphere, but I'm more interested in the case for hypercubes which I'm hoping is easier. The Wolfram Alpha page on Hypercube Point Picking goes completely over my head unfortunately.

Thanks in advance for any insight anyone can offer!

Geo
  • 51

1 Answers1

0

I would do the following.

  • Step 0: Choose $\delta$ the minimal distance you want between two arbitrary points of your distribution.
  • Step 1: generate $M$ points uniformly distributed in your hypercube.
  • Step 2: For each couple of points compute the distance between them.
  • Step 3: If one of the distances is bigger than $\delta$, go back to step 0. Otherwise you are done.