Python: Ensure each pairwise distance is >= some minimum distance
compute pairwise distances between all points -
sklearn.metrics.pairwise.euclidean_distances 
compute minimum of all pairwise distances
if minimum is small enough, exit
compute pairwise vectors between each two points so they point away
from each other
divide by pairwise distances so they are unit
vectors
for each point, compute how far to nudge it as sum over
other points of: pairwise vector/pairwise distance squared * some
constant (the force - constant should be set so that when points are at the minimum distance force is small but not infinitesimal)
nudge all the points by amount
computed in 6. should also cap the nudge at maybe minimum/10, so if 2 points end up in same spot, they don't get nudged an infinite distance apart
repeat until minimum is small enough

Should converge in all cases but will expand canvas as necessary. Also it is memory and compute intensive for e.g. 200,000 points, but a sparse matrix that ignores large vectors/small forces makes it more tractable.
I have a 2D array of ~200,000 points, and wish to "jitter" these points such that the distance between any point and its nearest neighbor is >= some minimum value.
Before writing this algorithm from scratch, I wanted to ask: Are there any canonical approaches or often-used algorithms to implement this behavior? I thought it would make sense to start by reviewing those algorithms before setting out on this.
Any suggestions others can offer on this question would be greatly appreciated.