Алгоритм размещения точки в квадрат с максимальным минимальным расстоянием

Я застрял на этом: есть квадрат. Поместите n точек в этот квадрат, чтобы минимальное расстояние (не обязательно среднее расстояние) было максимально возможным.

Я ищу алгоритм, который сможет генерировать координаты всех точек, учитывая их количество.

Пример результатов для n = 4; 5; 6:

Example results for n=4;5;6

Пожалуйста, не упоминайте вещи, основанные на вычислительной мощности, такие как много комбинаций, а затем выбор правильной и похожие идеи.

Ответы

Ответ 2

Вы можете сделать N body simulation, где точки отталкивают друг друга, возможно, с силой 1/r ^ 2. Очевидно, что движение точек будет ограничено квадратом. Начните со всех точек, расположенных примерно в центре квадрата.

Ответ 3

Микулас, я нашел страницу, полную примеров изображений, возможно, оптических или наиболее известных в настоящее время решений. Это не мое, поэтому используйте его на свой страх и риск.

См

http://www.ime.usp.br/~egbirgin/packing/packing_by_nlp/numerical.php?table=csq-mina&title=Packing%20of%20unitary-radius%20circles%20in%20a%20square

Источник:

http://www.ime.usp.br/~egbirgin/packing/packing_by_nlp/