2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 Равномерное распределение точек на диске
Сообщение22.12.2014, 09:32 


20/12/14
123
Приветствие участникам форума!

Хотел бы услышать ваше мнение об одной идее/гипотезе.

Началось всё с того, что моя знакомая спросила:
"Как можно красиво расположить точки на сфере?"
Слово "красиво", конечно, меня мало воодушевило.
В результате мы сошлись на множествах вершин платоновых и архимедовых тел.

Следующий вопрос пришёл нам обоим:
"А как наиболее равномерно распределить N точек на единичной сфере?"
Эта тема оказалась весьма нетривиальной; в целом изучена:
https://www.maths.unsw.edu.au/about/distributing-points-sphere
( плюс множество дискуссий на math.stackexchange),
но не имеет однозначного решения.

Возник очевидный вопрос: может, с единичным диском всё будет проще?
Какое распределение N точек внутри него можно считать равномерным?
(для любых N: малых (2, 3, 17,...) и сколь угодно больших). И по какому критерию?

Нашлись два любопытных подхода:
рассеивание по неким "спиралям золотого сечения"
http://blog.marmakoide.org/?p=1
(явно не то для небольшого числа точек)

и метод равных ячеек Isocell (возможен только для особых N)
http://orbi.ulg.ac.be/bitstream/2268/91953/1/masset_isocell_orbi.pdf

Иллюстрации на Геогебре:

http://tube.geogebra.org/student/m286063
http://tube.geogebra.org/student/m286087

Мне оба метода показались неудовлетворительными.
Предлагается следующий критерий (для алгоритма оптимизации)
равномерности распределения конфигурации из N точек на единичном диске.


Поиск минимума среднего (по всем точкам диска) квадрата расстояния до конфигурации.

$\underset{p\in U}{Mean}
   (d^2(p,Set))\rightarrow \min$

Вопрос 1: существуют ли принципиально иные, осмысленные и вычислимые,
критерии равномерности?


Перепробовал множество подходов - различные комбинации max и min,
разные метрики для расстояния; но они давали вырожденные результаты:
все точки в центре, все на единичной окружности и т.п.

Численная оптимизация на Mathematica при небольших N дала очевидные
(это и хорошо!) результаты (N=2, 3, 4, 7, 11, 21):

Изображение

При большем числе точек наблюдается некая хаотичность; но целевая функция всё равно
меньше, чем у конфигураций, полученных с помощью спиралей и Isocell (N=36):

Изображение

И тут мне пришла идея: а что, если оптимальная конфигурация -
это набор из нескольких правильных многоугольников, концентрично расположенных
вокруг центра?

Тогда можно проводить оптимизацию не по координатам, а по радиусам и относительным углам поворота.
Количество точек в каждом многоугольнике также подлежит уточнению.
Ниже приведён пример для N=36;
видно, что по симметричности он не уступает конфигурации Isocell, но целевая функция меньше.

Изображение

Вопрос 2: Наличие правильных многоугольников заставляет предположить, что всю конфигурацию можно найти неким точным, аналитическим или геометрическим, методом.
Как можно к нему подступиться?

 Профиль  
                  
 
 Re: Равномерное распределение точек на диске
Сообщение22.12.2014, 14:34 
Заслуженный участник


27/04/09
28128
denny в сообщении #950582 писал(а):
Вопрос 1: существуют ли принципиально иные, осмысленные и вычислимые,
критерии равномерности?
В одном месте видел, строили диаграмму Вороного и потом смотрели на распределение площадей её ячеек (среднеквадратичное отклонение, например, считать можно, хотя не знаю, насколько полезно).

denny в сообщении #950582 писал(а):
Вопрос 2: Наличие правильных многоугольников заставляет предположить, что всю конфигурацию можно найти неким точным, аналитическим или геометрическим, методом.
Как можно к нему подступиться?
Если ничего не придумается, можно попробовать просто переписать способ оптимизации формулами и попробовать что-то оттуда вывести. И, может быть, есть смысл сначала посчитать количество «оболочек», на котором достигнется минимум, а потом остальные параметры.

(Оффтоп)

denny в сообщении #950582 писал(а):
Возник очевидный вопрос: может, с единичным диском всё будет проще?
Небольшой комментарий: распределению точек по сфере это аналогично не будет, а будет аналогично распределению их в шаре, но вы, наверно, это и так знаете. :-)

Кстати, не пробовали определять «плохие» количества точек (например, укладывающиеся не настолько плотно, как в среднем по соседям)?

 Профиль  
                  
 
 Re: Равномерное распределение точек на диске
Сообщение22.12.2014, 17:57 


06/12/14
510
Решетка $\{(x_{k,j}, y_{k,j}),0\leq k < 2m, 0 \leq j < m\}$, $x_{j,k}=\cos\frac{\pi j}{2m}\cos\frac{(2k+j)\pi}{2m}$, $y_{j,k}=\cos\frac{\pi j}{2m}\sin\frac{(2k+j)\pi}{2m}$, разбивает единичный диск на ромбы со стороной $d=2\sin\frac{\pi}{2m}$. При этом, чем ближе к центру диска расположен ромб, тем более он вытянут в радиальном направлении; наоборот, ромбы, расположенные ближе к границе диска, более вытянуты вдоль касательных к границе. Не знаю как насчет равномерности, но в задачах интерполяции на диске эта решетка бывает весьма удобной. На картинке решетка при $m=4$
Изображение

 Профиль  
                  
 
 Re: Равномерное распределение точек на диске
Сообщение22.12.2014, 19:32 


20/12/14
123
Спасибо, не ожидал такой заинтересованности!

unistudent, вам мне будет проще ответить. В течение 1-2 часов
проверю (на 2-3 примерах) значение оптимизируемой функции для модели ромбов.
Но, интуитивно, ставлю на то, что:
- ромбы будут лучше спиралей по равномерности
- возможно, лучше или почти одинаково с Isocell
- скорее всего, менее равномерны, чем модель автора.

 Профиль  
                  
 
 Re: Равномерное распределение точек на диске
Сообщение22.12.2014, 19:54 


07/08/14
4231

(Оффтоп)

пытаюсь понять, что такое равномерность в контексте вопроса:
если взять квадрат, то видимо точки будут распределены равномерно, если они лежат в узлах квадратной решетки квадрата.
если этот квадрат сделать из резины, нанести решетку и деформировать в круг, будут ли точки по прежнему равномерно распределены? (точки по прежнему будут лежать в узлах решетки, но понятно уже не квадратной).

 Профиль  
                  
 
 Re: Равномерное распределение точек на диске
Сообщение22.12.2014, 20:05 


20/12/14
123
upgrade
Да, хорошая идея. А существует непрерывное (конформное?) преобразование
круга в квадрат? Я не очень силён в этом.

Если есть явные фомулы - можно посмотреть.

 Профиль  
                  
 
 Re: Равномерное распределение точек на диске
Сообщение22.12.2014, 20:06 


06/12/14
510
Именно комформного, думаю, не существует. Ну а так, можно, наверно, что-нибудь придумать. Например, неравномерное сжатие по лучам, переводящее окружность в квадрат, или наоборот. Очевидно, такое отображение непрерывно в каждой точке.

 Профиль  
                  
 
 Re: Равномерное распределение точек на диске
Сообщение22.12.2014, 20:19 
Заслуженный участник
Аватара пользователя


30/01/09
6680
denny в сообщении #950582 писал(а):
Перепробовал множество подходов - различные комбинации max и min,
разные метрики для расстояния; но они давали вырожденные результаты:
все точки в центре, все на единичной окружности и т.п.

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

 Профиль  
                  
 
 Re: Равномерное распределение точек на диске
Сообщение22.12.2014, 20:21 
Аватара пользователя


31/12/13
148
Неск. лет назад интересовался на тему точек равномерно распределенных на сфере.
Решение — формулы 9-11 и текст перед ними.

 Профиль  
                  
 
 Re: Равномерное распределение точек на диске
Сообщение22.12.2014, 21:45 
Заслуженный участник
Аватара пользователя


09/09/14
6328
мат-ламер в сообщении #950851 писал(а):
Максимизировать минимум расстояний между двумя точками.

Только этого мало -- нужно ещё как-то нетривиально учитывать расстояние до границы круга.
UPD: впрочем, что здесь нетривиального? считать расстояние до окружности наравне с (неучитываемой) точкой.

electric_retard
Здесь, похоже, равномерное распределение означает не совсем то же.

denny
Не могли бы Вы найти здесь (в разделе "круги в круге") заполнение на 21? Попробуйте запустить шевеление своего алгоритма, начиная с той начальной позиции (точки, понятно, в центрах кружков). Я думаю, что так Вы найдёте "равномерность" лучше, чем на Вашем рисунке выше. "Упаковка" -- не совсем та же задача, но при увеличении количества точек результаты будут асимптотически сходиться с Вашими желаниями (если я их правильно интерпретирую). На квадратах, например, это будет совсем не прямоугольная решётка.

 Профиль  
                  
 
 Re: Равномерное распределение точек на диске
Сообщение22.12.2014, 21:46 


20/12/14
123
Для unistudent и, отчасти, electric_retard

Если искать большие решётки, дающие достаточно равномерное распределение,
то и ромбы, и спирали, и корректный рандом (как описано в mathworld)
дадут хорошее приближение.

Авторы Isocell в этом плане провели специальное исследование. Они оценивали
площадь случайно выбранной окружности внутри диска по числу точек конфигурации,
которые в неё попадают. И показали, что их метод стабильнее и точнее, чем конкуренты -
Монте-Карло, гексагоны и т.п.

Меня же интересует равномерность с самого начала, буквально с $N=2$.
В это случае, в частности, две точки должны быть центрами масс полудисков.
Это выполняется в случае Isocell, и у моего метода.
В методе ромбов точки лежат на граничной окружности, что уже не равномерно :-(

 Профиль  
                  
 
 Re: Равномерное распределение точек на диске
Сообщение22.12.2014, 21:48 
Заслуженный участник
Аватара пользователя


09/09/14
6328
denny в сообщении #950880 писал(а):
Меня же интересует равномерность с самого начала, буквально с $N=2$

Вот-вот, посмотрите пакоманию :)
Где-то раньше они описывали свои алгоритмы. Я думаю, что Вам нужны почти такие, только Ваша задача будет много проще -- Вы не будете ограничены неупругостью и недеформированностью Ваших кружков.

 Профиль  
                  
 
 Re: Равномерное распределение точек на диске
Сообщение22.12.2014, 21:51 


20/12/14
123
grizzly

О да, Пакомания - это очень увлекательно, спасибо!
Я думал об этом. Очень похоже, правда.

Да, на квадратах равномерность - это точно не прямоугольная рещётка.
Хотя доказать не могу.

С пакомании скачал координаты, но ещё не успел проверить.

-- 22.12.2014, 22:53 --

Deggial

Исправил

 Профиль  
                  
 
 Re: Равномерное распределение точек на диске
Сообщение22.12.2014, 21:59 
Заслуженный участник
Аватара пользователя


24/02/12
1842
Москва
denny в сообщении #950848 писал(а):
А существует непрерывное (конформное?) преобразование
круга в квадрат?
Конформное отображение существует. Гуглите интеграл Кристоффеля-Шварца.

 Профиль  
                  
 
 Re: Равномерное распределение точек на диске
Сообщение22.12.2014, 22:11 


20/12/14
123
Для arseniiv

Диаграммы Вороного пришли сразу на ум. Но в Mathematica
они реализованы как-то туго. Например, общая граница может быть только
кусочно-линейной. Это значит, окружность придётся аппроксимировать 256-угольником...
Но в эту сторону надо продвинуться, спасибо за совет!
Ведь равномерность в том смысле, как предполагает алгоритм,
можно определить почти для любого множества, уж тем более для многоугольника.

Цитата:
И, может быть, есть смысл сначала посчитать количество «оболочек», на котором достигнется минимум, а потом остальные параметры.

Вот в этом самая интрига. Распределение точек по многоугольникам мне напомнило
электронные оболочки из таблицы Менделеева. Но никаких глобальных идей, как
из $N$ получить число оболочек, и количества точек на каждой - нет...

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 25 ]  На страницу 1, 2  След.

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group