Подскажите название метода, я его придумал, но на самом деле наверняка такой уже есть, просто все читать не перечитать.
Есть множество значений N, которые нужно поделить на группы. Значения между собой связаны, каждое значение привязано к другим M значениям. Чем больше у значения связей к другим - тем это значение более весомо, и больше вероятности что оно будет центром. Кроме наличия связей, сами значения ничем другим не различаются, и связи все не типизированны - просто связь.
Значениям назначаются статусы - либо является центром, либо притяными к центру.
Центрами становятся значения, которые не имеют между собой общей связи. Если между двух значений, которые ранее были центрами, появляется связь (связи могут добавляться и удаляться в процессе, так же как и сами значения), то тот из центров, который более весомый, поглащает менее весомый, и все ранее притянутые к поглощенному центру притягиваются к новому, если с новым у тех была связь. Если не было, то оставшиеся притягиваются к другим, либо оразуют собственный центр, если это наилучший вариант.