2
$\begingroup$

See https://gamedev.stackexchange.com/questions/46463/is-there-an-optimum-set-of-colors-for-10-players

I think a good solution would be to distribute points in the HSV cone in such a way that they are as evenly spread as possible.

I can calculate the sum of distances for all the points, and the find the maximum, but how to distribute the points?

How to approach such a problem?

  • 0
    The tag (distribution-theory) refers to a completely dfferent subject.2012-12-30

1 Answers 1

2

I don't believe there is a general non-numerical solution. One way to do this numerically would be to use simulated annealing or a similar approach. To use this method, you first define a energy function between each pair of points on the cone. For instance you could use: $d(h_1,s_1,v_1,h_2,s_2,v_2)=\frac{1}{\sqrt{(h_1-h_2)^2+(s_1-s_2)^2+(v_1-v_2)^2}}$ Then randomly choose 10 points on the cone, and with each step move each point a small random amount, recalculate the total energy, and decide whether you want to keep the new set of points. Continue iterating, and with a correct choice of the annealing schedule, you should converge to the "optimal" solution for the function you chose. This method has been used quite successfully on the Thomson problem, which is quite similar to yours.

  • 0
    It will yield a global optimum (with the right choice of schedule) - that's why simulated annealing is such a good choice :)2012-12-30