Решение задач в

15

Каковы некоторые примеры сложных проблем решения, которые могут быть решены за полиномиальное время? Я ищу проблемы, для которых оптимальный алгоритм является «медленным», или проблемы, для которых самый быстрый известный алгоритм является «медленным».

Вот два примера:

  • Распознавание совершенных графов. В своей работе FOCS'03 [1] Корнежоль, Лю и Вускович дали временной алгоритм для задачи, где n - количество вершин. Я не уверен, была ли улучшена эта граница, но, насколько я понимаю, более или менее необходим прорыв, чтобы получить более быстрый алгоритм. (Авторы приводят алгоритм времени O ( n 9 ) в журнальной версии [1], см. Здесь ).О(N10)NО(N9)

  • Распознавание графов карт. Торуп [2] дал довольно сложный алгоритм с показателем (около?) . Возможно, это даже значительно улучшилось, но у меня нет хороших рекомендаций.120

Меня особенно интересуют проблемы, которые имеют практическое значение, и получение «быстрого» (или даже практического) алгоритма было открыто в течение нескольких лет.


[1] Корнежоль, Жерар, Синьмин Лю и Кристина Вускович. «Полиномиальный алгоритм распознавания совершенных графов». Основы информатики, 2003. Труды. 44-й ежегодный симпозиум IEEE. IEEE, 2003.

[2] Торуп, Миккель. «Карта графиков за полиномиальное время». Основы информатики, 1998. Труды. 39-й ежегодный симпозиум IEEE, 1998.

Юхо
источник
Возможно, вы захотите взглянуть на Рэймонда Гринлоу, Х. Джеймса Гувера, Уолтера Л. Руццо, « Пределы параллельных вычислений: теория полноты»п , 1995 г.
Каве

Ответы:

12

Возможно, следующие проблемы вписываются в ваши примеры:

  • (Версия решения) Раскраска, Клика, Стабильный Набор, Клик Покрытие в идеальных графиках. До сих пор единственные известные алгоритмы полиномиального времени для этих задач основаны на методе эллипсоидов, который является «медленным» (и численно нестабильным).

  • AKS-тест на простоту за раз. Несмотря на множество улучшений (в настоящее время O ( ( log n ) 7.5 ) ), алгоритм AKS все еще слишком медленный на практике.О((журналN)12)О((журналN)7,5)

VB Le
источник
Да, это очень хорошие примеры!
Юхо
Обратите внимание, что существуют очень быстрые известные алгоритмы тестирования простоты, если рандомизация разрешена. Практически говоря, он не удовлетворяет критериям, согласно которым «самый быстрый известный алгоритм - медленный».
6005
11

Есть аналогичный вопрос по теории , со множеством примеров, начиная от «реально невыполнимо медленных» алгоритмов с показателями от 6 до 7 и выше. Этот вопрос также обсуждает большие константы.

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

1752484608000N79L25/D26(Θ0)

117607251220365312000N79(мaИкс/dмяN(Θ0))26,

От: Джейсон Х. Кантарелла, Эрик Д. Демейн, Хейли Н. Ибен, Джеймс Ф. О'Брайен, Энергетический подход к развёртыванию связей , SOCG 2004.

Люк Мэтисон
источник
Интересно, это действительно практическая проблема? Кроме того, список проблем на CSTheory является коротким, и большинство проблем кажется довольно эзотерическим ... :-(
Юхо
@Juho есть еще одна ссылка в первом комментарии на другой вопрос на другой похожий вопрос на math.se. Я нашел тот, который я воспроизвел, слишком забавным, чтобы сопротивляться, но есть некоторые важные результаты ptime, которые имеют ужасные алгоритмы или неконструктивные: теорема Курселя и куча похожих моделей, проверяющих метатеоремы, множество второстепенных графов и алгоритмы декомпозиции для свойства, такие как ширина дерева.
Люк Мэтисон