Пусть простой неориентированный граф на n вершинах и m ребрах.
Я пытаюсь определить ожидаемую продолжительность работы алгоритма Вильсона для генерации случайного остовного дерева . Там показано, что O ( τ ) , где τ - среднее время удара : τ = ∑ v ∈ V π ( v ) ⋅ H ( u , v ) , где:
- -стационарное распределение π ( v ) = d ( v ) ,
- - произвольная вершина, и
- - времяудара(времядоступаAKA), т. Е. Ожидаемое количество шагов допосещениявершины v , начиная с вершины u .
Какова общая верхняя граница для среднего времени удара? И какой граф в худшем случае максимизирует среднее время удара?
Чтобы прояснить мой вопрос, мне не нужны расчеты или подробные доказательства (хотя они могут быть полезны для других людей, сталкивающихся с этим вопросом в будущем). Лично для меня цитата будет достаточной.
В статье упоминается еще один алгоритм Бродера, который работает в ожидаемое время покрытия (впервые, когда все вершины были посещены). Тогда говорят, что среднее время удара всегда меньше, чем время покрытия. Однако он дает только асимптотическую границу для большинства графов (т. Е. Графов расширителей ), чтобы сопоставить ее с Θ ( n log n ) по Бродеру для большинства графов (с несколько более инклюзивным определением большинства ).
Это дает пример графика, где среднее время удара равно а время покрытия Θ ( n 3 ) . Хотя для последнего известно, что это наихудший случай, он конкретно не говорит ничего о наихудшем случае с первым. Это будет означать, что наихудший случай для алгоритма Уилсона может находиться где-то между O ( n 2 ) и O ( n 3 ) .
Мне известны две общедоступные реализации алгоритма Уилсона. Один находится в библиотеке графов Boost , а второй - в инструменте графиков . В документации первого не упоминается время работы, а во втором говорится:
Типичное время выполнения для случайных графиков - .
Который не отвечает на вопрос, и фактически кажется несовместимым с работой Уилсона. Но я сообщаю об этом на всякий случай, чтобы сэкономить время тех, кто с такой же идеей обращается к документации по реализации.
Сначала я надеялся, что худший случай может быть достигнут с помощью графика, построенного путем прикрепления пути к клике, благодаря Ловасу , где время удара может достигать . Тем не менее, вероятность этого события составляет около 1 при выборе вершин из стационарного распределения. Следовательно, получая оценкуO(n2)для среднего времени удара на этом графике.
В докладе Brightwell и Winkler показывает , что подмножество леденцов графиков максимизирует ожидаемое время удара, достигая . График Ловаша также является графом леденцов, но в этом случае размер клики равен 2, а не половина. Однако необходимо соблюдать осторожность, чтобы не перепутать ожидаемое время удара со средним временем удара. Этот результат, как и предыдущий, относится к ожидаемому времени попадания в две заранее выбранные вершины.
Ответы:
Я решил спросить самого Дэвида Уилсона, вскоре после этого получил ответ:
Существует даже доказательство этого факта в вышеупомянутой книге, которая выглядит так:
По общему признанию, я потерян в пункте, который они заявляют:
Однако комментарии к неофициальным доказательствам по-прежнему приветствуются.
источник
В недавней статье мы нашли верхнюю границу mn (без больших O) ожидаемого числа «циклов, всплывающих» по алгоритму Уилсона, и она тесно связана с константами. Он не дает прямого ответа на вопрос о времени работы алгоритмов Уилсона, так как средний размер вытесненных циклов не кажется очевидным. С другой стороны, мне не хватает «репутации», чтобы оставлять комментарии ...
источник