Size: a a a

2020 October 25

EZ

Evgenii Zheltonozhsk... in pro.algorithms
Евгений Вознесенский
А можете посоветовать идейно, куда копать для задачи нахождения минимальной суммы площадей прямоугольников для покрытия n точек с ограничением на не более чем k прямоугольников?

Прямоугольники не могут пересекаться, паралельные осям координат

Выглядит устрашающе...
Динамика мб (какая конкретно не придумал)
источник

ЕВ

Евгений Вознесенский... in pro.algorithms
Точек кстати, не более 50. Может, перебор какой-то?
источник

GK

Gleb Koveshnikov in pro.algorithms
Евгений Вознесенский
Точек кстати, не более 50. Может, перебор какой-то?
По маскам будет очень долго
источник

ЕВ

Евгений Вознесенский... in pro.algorithms
Евгений Вознесенский
А можете посоветовать идейно, куда копать для задачи нахождения минимальной суммы площадей прямоугольников для покрытия n точек с ограничением на не более чем k прямоугольников?

Прямоугольники не могут пересекаться, паралельные осям координат

Выглядит устрашающе...
По-идее, можно сделать утверждение: если мы сейчас рассматриваем точку на добавление в некий прямоугольник, то добавлять выгодно только тогда, когда для рассматриваемой не существует точки, которая ближе.
Нужно проверить ...

А изначальные k прямоугольников можно накинуть на точки перебором?🤔
источник

ЕВ

Евгений Вознесенский... in pro.algorithms
Хотя нет, даже изначальный перебор это оверкилл
источник

K

Kotomord_λapki in pro.algorithms
Стороны прямоугольников параллельны осям?
источник

ЕВ

Евгений Вознесенский... in pro.algorithms
+
источник

K

Kotomord_λapki in pro.algorithms
Интересно, есть ли разделяй-и-властвуй
источник

K

Kotomord_λapki in pro.algorithms
А есть, по углу
источник

K

Kotomord_λapki in pro.algorithms
Или нет, хз
источник

@N

@urandon Nikita Khom... in pro.algorithms
Евгений Вознесенский
А можете посоветовать идейно, куда копать для задачи нахождения минимальной суммы площадей прямоугольников для покрытия n точек с ограничением на не более чем k прямоугольников?

Прямоугольники не могут пересекаться, паралельные осям координат

Выглядит устрашающе...
Полигоны какие? Выпуклые / невыпуклые / с дырками / самопересечениями?

UPD. А, там прямоугольники
источник

ЕВ

Евгений Вознесенский... in pro.algorithms
По-идее, можно сначало накинуть по прямоугольнику на точку, а затем их объединять пока количество больше k.

Хотя нужно придумать, как их объеденять.

Вопрос ещё в том, что если мы на текущем шаге сделали оптимальное объедение по площади, то приведёт ли это нас к оптимальному решению в итоге.
источник

MK

Matwey Kornilov in pro.algorithms
Евгений Вознесенский
А можете посоветовать идейно, куда копать для задачи нахождения минимальной суммы площадей прямоугольников для покрытия n точек с ограничением на не более чем k прямоугольников?

Прямоугольники не могут пересекаться, паралельные осям координат

Выглядит устрашающе...
Что-то про деревья
источник

MK

Matwey Kornilov in pro.algorithms
Могу жадный алгоритм предложить
источник

MK

Matwey Kornilov in pro.algorithms
Не уверен, что точное решение не NP задача
источник

ЕВ

Евгений Вознесенский... in pro.algorithms
Matwey Kornilov
Могу жадный алгоритм предложить
Топ, предложи, пожалуйста
источник

MK

Matwey Kornilov in pro.algorithms
Евгений Вознесенский
Топ, предложи, пожалуйста
берешь большой прямоугольник min(x) min(y) max(x) max(y), он описывает все точки.
дальше ищешь как его поделить на два. таких способов будет 2(N-1), из них надо выбрать способ с минимальной суммой площадей.
потом каждый прямоугольник опять делишь пока не кончатся свободные прямоугольники
источник

MK

Matwey Kornilov in pro.algorithms
Еще можно посмотреть на алгоритмы кластеризации, типа разбить на k кластеров точки и каждый в свой прямоугольник вписать. Но это зависит от того как твои точки обычно выглядят
источник

ЕВ

Евгений Вознесенский... in pro.algorithms
Matwey Kornilov
Еще можно посмотреть на алгоритмы кластеризации, типа разбить на k кластеров точки и каждый в свой прямоугольник вписать. Но это зависит от того как твои точки обычно выглядят
Ну точки в 2д пространстве
источник

MK

Matwey Kornilov in pro.algorithms
Евгений Вознесенский
Ну точки в 2д пространстве
ну они могут быть насыпаны почти равномерно, а могут кучковаться
источник