Какие границы можно поставить для подсчета достижимых узлов в dag?

23

Дано это даг. Вы хотите пометить каждый узел тем, сколько узлов доступно из него. - тривиальная верхняя граница; является нижней границей (я думаю). Есть ли лучший алгоритм? Есть ли основания полагать, что нижняя граница может быть улучшена (связана: что именно известно о нижних границах для транзитивного замыкания)?Ω ( V + E )О(В(В+Е))Ω(В+Е)

Мотивация: я должен был сделать это пару раз, представляя следующие формулы как даг.

Изменить: Обратите внимание, что просто делая подсчитывает пути , а не достижимые узлы . (Я добавил это, потому что, по-видимому, многие думали, что это простое решение будет работать с помощью голосов, которые я видел в удаленном ответе.) Фактически, эта проблема возникает именно тогда, когда вы хотите сделать что-то интересное с «общими» частями, узлами, доступными для более одного пути. Кроме того, я говорю, дага, потому что, если они решаются, то решение орграфов легко.сИксзнак равно1+ΣИксYсY

Раду ГРИГОРЕ
источник
Похоже, это особый случай (установка всех весов на единицу) cstheory.stackexchange.com/questions/736/…
Суреш Венкат
@Suresh: затрудняет ли решение произвольных весов проблему, мне кажется еще одним интересным вопросом.
Раду GRIGore

Ответы:

10

Транзитивное замыкание ориентированного графа с ребрами и вершинами может быть вычислено немного быстрее, чем время , но ненамного. алгоритм времени упоминается в примечании 2005 комки бумаги Чана на ССЦН (версия журнала в Algorithmica 2008). Небольшое улучшение можно найти в статье ICALP'08 «Новый комбинаторный подход к разреженным задачам графа», автор Blelloch, Vassilevska и Уильямс. При этом я не знаю, проще ли считать потомков, чем на самом деле их найтип О ( т п ) О ( п 2 + м н / войти п ) O ( п 2 + м н лог ( п 2 / м ) / войти 2 п )мNО(мN)О(N2+мN/журналN)О(N2+мNжурнал(N2/м)/журнал2N)

Virgi
источник
4
Также обратите внимание на статью Эдит Коэн «Структура оценки размера с приложениями к транзитивному замыканию и достижимости». Это дает рандомизированный алгоритм, который эффективно оценивает количество потомков.
девственница
Обратите внимание, что эти результаты относятся ко всем ориентированным графам, а не только к группам DAG.
Тонфа
Да. Результат также относится к взвешенной версии, упомянутой в cstheory.stackexchange.com/questions/736/…
virgi
7

Nω

Барт Янсен
источник
Спасибо, это интересно! Я должен добавить, что знаки, представляющие символические формулы, как правило, редки, поэтому я немного больше заинтересован в этом случае.
Раду GRIGore
1

Возможно, это не полезно в вашем контексте, но вы можете получить приближение с помощью Synopsis Diffusion (http://www.cs.cmu.edu/~sknath/sd.htm). Я думаю, что это делает O (V + E). Симуляция диффузии синопсиса на однопроцессоре выглядит для меня как O (V + E), (сначала нужно выполнить топологическую сортировку, которая также является O (V + E)).

Эолдуалф
источник