Пусть нерегулярный связный граф, степень которого ограничена. Предположим, что каждый узел содержит уникальный токен.
Я хочу равномерно перетасовать токены среди графа, используя только локальные перестановки (т.е. обмен токенами между двумя соседними узлами)? Известна ли нижняя граница для этой проблемы?
Единственная идея, которая у меня возникла, - это использовать результат случайного блуждания, а затем посмотреть, сколько свопов мне нужно, чтобы «смоделировать» эффект случайных блужданий, переносящих токены на график.
ds.algorithms
random-walks
dc.distributed-comp
Сильвен Пейроннет
источник
источник
Ответы:
Предположим, ваш график был путем. Я думаю, что тогда эта проблема становится эквивалентной сортировке случайной последовательности чисел в массиве путем замены соседних записей. Даже из всех узлов с учетом топологии вы получаете нижнюю границу ^ 2 для числа перестановок (не может быть лучше, чем сортировка пузырьком, которая равна n ^ 2 даже на случайном входе).
источник
Я хотел бы указать на связь между этой проблемой и сетью сортировки. Например, если ваш граф представляет собой путь, то тривиальная сеть сортировки по линейной глубине также показывает, что вы можете получить любую перестановку в линейном количестве раундов. Более того, это сложно, так как для простой замены элементов в конечных точках пути требуется линейное число раундов.
Сортировочные сети AKS показывают, что существуют графики, в которых вы можете получить любую перестановку в логарифмическом количестве раундов. Для случая графиков сетки, см., Например, эти примечания к лекции .
(Конечно, сортировка и перемешивание - разные проблемы, но многие верхние и нижние границы связаны. Например, выбирайте случайные метки и сортируйте по меткам.)
источник