k означает кластеризацию с фиксированными ограничениями (сумма определенного атрибута должна быть меньше или равна 90 000) - PullRequest
0 голосов
/ 04 января 2019

Предположим, у меня есть 20 000 объектов на карте, и у каждого объекта есть много атрибутов (а также широта и долгота).Один из атрибутов называется популяцией.

Я хочу разделить эти 20 000 объектов на 3 кластера, где общая сумма населения каждого кластера равна конкретному значению 90 000, а объекты в каждом кластере должны быть рядом друг с другом (т.е.будет принимать во внимание местоположения в нашем рассмотрении)

Таким образом, выходные кластеры должны иметь следующие условия:

  • Сумма (совокупность) всех точек / элементов / объектов в кластере 1 = 90 000
  • Сумма (совокупность) всех точек / предметов / объектов в кластере 2 = 90 000
  • Сумма (совокупность) всех точек / предметов / объектов в кластере 3 = 90 000

Я пытался использовать алгоритм кластеризации k-средних, который дал мне 3 кластера, но как заставить вышеуказанное ограничение (сумма населения должна равняться 90 000)

Любая идея приветствуется.

1 Ответ

0 голосов
/ 04 января 2019

Готовое решение не будет работать для вас.

Вам придется сформулировать это как стандартную задачу оптимизации ограничений и запустить серебро, чтобы оптимизировать это.Это довольно просто: возьмите цель k-средних и добавьте свои ограничения ...

...