4

Я работаю над проблемой, которая заключается в том, чтобы найти ближайшую тройку соседей для множества произвольно расположенных непересекающихся эллипсов. Как новый пользователь, мне не разрешено включать теги изображений, но я включил URL-адрес в нижней части страницы, так как я всегда думаю, что лучше смогу объяснить себя визуальными средствами. На рисунке показано, что я имею в виду, когда круги Аполлония соединяют 3 ближайших эллипса друг с другом.Ближайшее трио соседей для непересекающихся эллипсов

До сих пор я пытался использовать минимальные расстояния между эллипсами и модифицировать триангуляцию Делано, с помощью инкрементных и sweepline-методов, использовал различные методы, связанные с кругами треугольников, образованных между каждыми 3-мя конфигурациями эллипса и т. Д., И попытался оценить соседей с и полностью исчерпаны идеи о том, как эффективно получить эту работу эффективно

Хотя я разработал решение, он требует исчерпывающего поиска и сравнения каждого трио эллипсов с любым другим эллипсом и имеет временную сложность n(n-1)(n-2)/3! , И кроме того, каждый расчет выполняется итеративно, а не алгебраически.

Может кто-нибудь даже подумать о том, как это сделать, что можно сделать алгебраически и ниже, чем n^2 временная сложность?

Даже предложение техники подойдет для меня, чтобы попробовать, потому что сейчас я работаю над ним в течение почти трех недель и на самом деле не ближе к достойному ответу.

Image http://img859.imageshack.us/img859/727/nearesttrio.png

+0

Я ответил на это по MathOverflow [link] (http://mathoverflow.net/questions/89677/nearest-trio-of-neighbours-for-non-intersecting-ellipses/89680#89680). Это как @zamazalotta говорит, но есть еще сказать. –

ответ

3

Если рассчитать диаграмму Вороного для ваших эллипсов, то ваши круги центральные точки будут размещены на пересечении диаграмм.

http://ima.umn.edu/nuggets/voronoi.html

+0

Танки для этого, сейчас я собираюсь попробовать подход диаграммы voronoi. –

0

Вы можете упаковать свои эллипсы в R-tree на основе их ограничительные рамки. R-дерево представляет собой двоично-древовидную структуру данных для пространственных объектов и поддерживает эффективные ближние и ближние соседние запросы через обход.

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

Надеюсь, это поможет.

+0

Darren, Спасибо за ваше предложение, я думаю, что я попытаюсь повторить попытку вычисления диаграммы voronoi, как было предложено @Joseph O'Rourke (Math Overflow), поскольку на самом деле найти вершину, связанную с трио, будет быть моим следующим шагом, поэтому я бы получил ответ в то же время. Хотя, если я не могу заставить его работать, как я пытался до того, как я разместил на форуме, я вызывающе попытаюсь предложить ваше предложение, так как, посмотрев на него, мне очень нравится звук из-за уменьшения числа расстояний поиск; скорость поиска - ключ для моей работы. Еще раз спасибо за помощь. Росс. –

Смежные вопросы