Вибір підмножини для максимізації мінімальної відстані між точками


12

У мене є набір точок C , і я маю відстань між кожною точкою D(Pi,Pj) . Ці відстані є евклідовими, але точки фактично знаходяться в просторі функцій.

З пунктів C я хочу вибрати підмножину з n точок. Виклик цього підмножини s . Я хочу вибрати цей підмножина, щоб максимально збільшити мінімальну відстань між усіма точками в новому наборі s .

maxsC|s|=n(mini,jsijD(Pi,Pj))

Зараз я використовую альпінізм для вирішення цієї проблеми. Я розумію, що змодельований відпал може дати краще рішення.

Чи є відоме рішення цього типу проблеми? Або цю проблему можна переформулювати в іншу проблему, яку легко вирішити?


Мене цікавить подібна проблема. Не грунтується на моєму досі в пошуках результатів, це можна порівняти з проблемою р-дисперсійної в завданню розміщення об'єкта , для якого Це є хорошим спеціальним оглядом.
XTZ

Чи знаєте ви, як називається ця проблема?
Кульбаба

Відповіді:


7

Версія проблеми з оптимізацією є такою:

Задавши поріг , ви хочете знати, чи можна знайти підмножину з точок таким чином, щоб кожна пара точок у підмножині була принаймні одиницями.n ttnt

Звичайно, якщо ви зможете вирішити проблему рішення, ми можемо вирішити вашу оптимізаційну задачу (шляхом двійкового пошуку на порозі ).t

Тепер ця проблема рішення - проблема пошуку незалежного набору в евклідовому графіку, де точки мають між собою ребро, якщо вони знаходяться на відстані одна від одної. Одним із підходів було б переглянути алгоритми стандартного наближення для незалежного набору.tx,yt

Ще краще, ви можете подивитися алгоритми незалежного набору в графіках геометричного перетину . Розглянемо набір дисків, де кожен диск має діаметр і з центром в одній з точок в наборі . Тепер ми можемо сформувати графік геометричного перетину, де є одна вершина для кожного диска і край між двома вершинами, якщо їх відповідні диски перетинаються. Проблема пошуку незалежного набору в такому вигляді графіка була вивчена. Існують алгоритми наближення цієї проблеми, які ви можете спробувати використати.СtC

Якщо ви хочете отримати точний оптимізм, а не наближення, ви можете використовувати будь-який із стандартних "великих молотків", наприклад SAT-розв'язувач або ILP-розв'язувач. Існує простий спосіб сформулювати задачу незалежного набору як екземпляр SAT, і тоді ви можете застосувати до неї розв'язувач SAT, щоб дізнатися, чи існує підмножина з точок, які всі одиниці не віддалені один від одного.tnt

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.