I distrubuted objects with instancer and the loop function see below:
As we can see the problem is they are overlapping occasionally. Of course, the more object I distribute the more likely they overlap. My first idea was to use the Intersect Plane Plane node but I didn't know how to incorporate it into the graph. To avoid overlapping we should also measure distance between objects to limit the calculations (only adjacent objects matters) because otherwise the node graph could be very slow. So the soulution might be very comlex.