Удивительные алгоритмы подсчета проблем


54

Существуют некоторые проблемы подсчета, которые включают экспоненциальный подсчет многих вещей (относительно размера входных данных), и в то же время имеют удивительные точные, детерминированные алгоритмы за полиномиальное время. Примеры включают в себя:

Ключевым шагом в обоих этих примерах является сведение проблемы подсчета к вычислению определителя определенной матрицы. Определитель сам по себе, конечно, является суммой экспоненциально многих вещей, но может удивительным образом вычисляться за полиномиальное время.

Мой вопрос: существуют ли какие-либо «удивительно эффективные» точные и детерминированные алгоритмы, известные для подсчета проблем, которые не сводятся к вычислению определителя?


8
Кстати, еще много проблем со счетом сводятся к вычислению детерминанта. Целочисленный определитель завершен для класса GapL, который содержит #L.
5501

Ответы:


11

Я не знаю, сводятся ли следующие проблемы к вычислению детерминанта или нет, но я все равно перечислю:

v0vfvfv0

2) Подсчет числа решений задач, определяемых в MSO-логике в структурах ограниченной ширины дерева. Посмотрите, например, статью, посвященную работам Курселя, Арнборга и других .

f:{0,1}n{0,1}xf(x)=1Uf|x|0|x|f(x)|1UfHn|0|0


Спасибо - пункты (2) и (3) интересны, но почему-то не совсем то, что я искал; проблемы подсчета с ограниченной шириной дерева больше походят на особые случаи, когда структура, с которой вы работаете, фактически ограничена полиномиально. Меня больше интересовали случаи, когда «реально» экспоненциально много объектов для подсчета, но их можно каким-то волшебным образом подсчитать за полиномиальное время.
Эшли Монтанаро

Не означает ли это, что если вы используете унарную кодировку, алгоритму нужно экспоненциальное время, чтобы просто записать число? Возможно ли, что эта проблема будет преодолена с помощью бинарного кодирования, но это звучит для меня непреложно.
Антонио Валерио Мицели-Бароне

2
@ Miceli-Barone, То, что вы говорите, будет относиться практически ко всем алгоритмам поли времени, которые выводят число. Сам детерминант был бы довольно большим в худшем случае в унарном.
Рафаэль

(n+1)n+122n

11

2
какая основная техника?
Суреш Венкат

2
Короткая производящая функция. Следующая пояснительная статья даст нам больше идей. arxiv.org/abs/math/0506466
Ёсио Окамото

11

В рамках Холанта, есть несколько случаев, которые можно трактовать (по нетривиальным) причинам, кроме как через спичечные ворота в плоских графах.

1) Ворота Фибоначчи

2) Любой набор аффинных подписей .

3) неотрицательные взвешенные #CSP

...назвать несколько.

Кроме того, теорема BEST дает алгоритм полиномиального времени для подсчета числа эйлеровых цепей в ориентированном графе, хотя часть алгоритма действительно использует вычисление определителя.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.