Основные причины, почему проблемы в P или BPP


56

Недавно, когда я разговаривал с физиком, я утверждал, что в моем опыте, когда проблема, которая наивно кажется такой, что она требует экспоненциального времени, нетривиально оказывается в P или BPP, обычно можно определить «общую причину», почему происходит сокращение --- и почти всегда эта причина принадлежит списку из дюжины или меньше «обычных подозреваемых» (например: динамическое программирование, линейная алгебра ...). Однако это заставило меня задуматься: можем ли мы записать достойный список таких причин? Вот первая, неполная попытка одного:

(0) Математическая характеристика. Задача имеет неочевидную «чисто математическую» характеристику, которая, как только она станет известна, сразу делает возможным полный поиск по списку поли (n) возможностей. Пример: планарность графа, для которой алгоритм O (n 6 ) следует из теоремы Куратовского.

(Как указывает «планарная» ниже, это был плохой пример: даже если вы знаете комбинаторную характеристику планарности, дать алгоритм для ее полиномиального времени все еще довольно нетривиально. Итак, позвольте мне привести лучший пример здесь: как насчет скажем, «учитывая входные данные n, записанные в двоичном виде, вычислите, сколько цветов необходимо для окраски произвольной карты, встроенной в поверхность с n отверстиями». Априори не очевидно, что это вообще вычислимо (или даже конечно!). Но есть известная формула, дающая ответ, и как только вы узнаете формулу, ее вычислить за полиномиальное время тривиально. Между тем, «сводится к исключенным несовершеннолетним / теория Робертсона-Сеймура», вероятно, следует добавить в качестве отдельной всеобъемлющей причины, по которой что-то может быть в п.)

Во всяком случае, это не та ситуация, которая меня больше всего интересует.

(1) Динамическое программирование. Проблема может быть разбита таким образом, чтобы обеспечить рекурсивное решение без экспоненциального увеличения - часто потому, что выполняемые ограничения расположены в линейном или другом простом порядке. «Чисто комбинаторный»; Алгебраическая структура не требуется. Возможно, достижимость графа (и, следовательно, 2SAT) являются частными случаями.

(2) Матроиды. Задача имеет матроидную структуру, позволяющую работать жадному алгоритму. Примеры: соответствие, минимальное остовное дерево.

(3) Линейная алгебра. Задача может быть сведена к решению линейной системы, вычислению детерминанта, вычислению собственных значений и т. Д. Возможно, большинство проблем, связанных с «чудесными отменами», в том числе теми, которые решаются с помощью формализма спичечных ворот Валианта, также попадают под линейно-алгебраический зонт.

(4) Выпуклость. Проблема может быть выражена как некая выпуклая оптимизация. Полуконечное программирование, линейное программирование и игры с нулевой суммой являются частыми (все более и более) частными случаями.

(5) Проверка полиномиальной идентичности. Задача может быть сведена к проверке полиномиального тождества, так что основная теорема об алгебре приводит к эффективному рандомизированному алгоритму, а в некоторых случаях, например, к простоте, даже доказуемо-детерминированному алгоритму.

(6) Марковская цепь Монте-Карло. Проблема может быть сведена к выборке из результата быстро смешанного хождения. (Пример: примерный подсчет идеальных совпадений.)

(7) Евклидов алгоритм. GCD, продолжение дроби ...

Разное / Непонятно, как именно классифицировать: стабильный брак, полиномиальный факторинг, проблема принадлежности для групп перестановок, различные другие проблемы в теории чисел и теории групп, задачи о низкоразмерных решетках ...

Мой вопрос: какие самые важные вещи я не учел?

Чтобы уточнить:

  • Я понимаю, что ни один список не может быть полным: независимо от конечного числа причин, которые вы приводите, кто- то сможет найти экзотическую проблему, которая есть в P, но не по любой из этих причин. Отчасти по этой причине меня больше интересуют идеи, которые ставят множество разных, казалось бы, не связанных проблем в P или BPP, чем идеи, которые работают только для одной проблемы.

  • Я также понимаю, что это субъективно, как разделить вещи. Например, должны ли матроиды быть особым случаем динамического программирования? Является ли разрешимость поиска в глубину достаточно важной, чтобы быть его собственной причиной, отдельной от динамического программирования? Кроме того, часто одна и та же проблема может быть в P по нескольким причинам, в зависимости от того, как вы на это смотрите: например, поиск главного собственного значения находится в P из-за линейной алгебры, а также потому, что это проблема выпуклой оптимизации.

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


10
При комбинаторной оптимизации разрешимость за полиномиальное время часто тесно связана с результатами min-max (связанными с двойственностью), которые устанавливают, что проблема находится в . NPcoNP
Чандра Чекури

3
Скотт: одной выпуклости недостаточно в некотором смысле, потому что метод Эллипсоида показывает, что можно оптимизировать по выпуклым телам, если можно разделить по нему, что опять-таки является алгоритмической проблемой! Классический пример, который нужно иметь в виду, - это алгоритм / многогранник соответствия Эдмондса. Формула Тутте-Берге показала, что сопоставление максимальной мощности находится в до того, как мы узнали алгоритм поли-времени. То же самое для LP из-за двойственности. NPcoNP
Чандра Чекури

4
Я бы сказал, что идеальные графики являются показательным аргументом Чандры. Хроматическое число и максимальный размер клики - двойные проблемы, но в целом двойственность слабая. В идеальных графиках, однако, у нас также есть сильная двойственность. Причина, по которой работает Lovasz заключается в том, что это обычная выпуклая релаксация как хроматического числа, так и числа клики, поэтому, если между этими двумя значениями нет разрыва, то между ними и нет разрыва . ИМО, двойственность - лучшее объяснение, почему двухстороннее сопоставление и минимальное сокращение работают также: классические алгоритмы для обоих являются своего рода первично-двойственными. ϑϑϑ
Сашо Николов

8
Я бы добавил субмодулярность в этот список. В то время как некоторые результаты, включающие максимизацию или минимизацию субмодулярных функций, связаны с матроидами или выпуклостью, я не думаю, что связь достаточно сильна, чтобы объяснить большинство алгоритмических результатов, связанных с субмодулярностью.
SRD

7
Как алгоритм планарности O (n ^ 6) следует из теоремы Куратовского?

Ответы:


19

Некоторые классы графов допускают алгоритмы полиномиального времени для задач, которые NP-трудны для класса всех графов. Например, для совершенных графиков можно найти самый большой независимый набор за полиномиальное время (спасибо vzn в комментарии за пробежку в моей памяти). Через конструкцию продукта это также позволяет унифицированному объяснению нескольких явно различающихся CSP, таких как те с древовидной структурой, которые обычно решаются с помощью иерархической декомпозиции, и ограничения All-Different, которое обычно решается с помощью идеального сопоставления.

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

  • András Z. Salamon и Peter G. Jeavons, Совершенные ограничения поддаются лечению, CP 2008, LNCS 5202, 524–528. doi: 10.1007 / 978-3-540-85958-1_35

  • Мейнольф Селлманн, Многогранник древовидно-ориентированных задач удовлетворения двоичных ограничений , CPAIOR 2008, LNCS 5015, 367–371. doi: 10.1007 / 978-3-540-68155-7_39


Как отметил Гил Калай, свойства графов, образующих минор-замкнутые классы, могут быть определены конечным набором запрещенных миноров (это теорема Робертсона-Сеймура ). Другой результат Робертсона и Сеймура состоит в том, что тестирование на присутствие несовершеннолетнего может быть выполнено в кубическое время. Вместе они приводят к алгоритму полиномиального времени для определения свойств, которые являются второстепенными.

  • Нил Робертсон и П.Д. Сеймур, граф Майнорс. XIII. Проблема непересекающихся путей , Журнал Комбинаторной Теории, Серия B 63 (1) 65–110, 1995. doi: 10.1006 / jctb.1995.1006

Одна проблема со второстепенно замкнутыми свойствами графа состоит в том, что они «малы»; исключение даже одного несовершеннолетнего исключает множество графиков. Возможно, это одна из причин, по которой работает структурная декомпозиция Робертсона-Сеймура: осталось немного графов, чтобы они имели хорошую структуру.

  • Сергей Норин, Пол Сеймур, Робин Томас и Пол Воллан, Правильные малозамкнутые семьи малы , Журнал комбинаторной теории, Серия B 96 (5) 754–757, 2006. doi: 10.1016 / j.jctb.2006.01.006 ( препринт )

Одна попытка выйти за пределы минор-замкнутых классов - через классы, определенные запрещенными подграфами или запрещенными индуцированными подграфами.

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

FFFF

F

FFFF

  • Мария Чудновская и Пол Сеймур, Исключая индуцированные подграфы , Обзоры в комбинаторике 2007, 99–119, издательство Кембриджского университета, ISBN 9780521698238. ( препринт )

FFF


эти ссылки отражают сокращение до «хороших формулировок полуопределенного программирования»? но только некоторые проблемы с SDP в P, верно?
13

Связь с полуопределенным программированием (и доказательство того, что наибольшие независимые множества могут быть найдены в совершенных графах за полиномиальное время) была сделана в оригинальной статье Grötschel / Lovász / Schrijver 1981 года (раздел 6), см. Dx.doi.org/10.1007/ BF02579273, в то время как ссылки выше касаются связи с CSP.
Андрас Саламон

1
Другим важным примером является граф с запрещенными подграфами, где теория Роберсона-Сеймура допускает использование алгоритма P-времени для различных алгоритмических вопросов. (Часто с огромными константами.) P-алгоритм для совершенных графов и графов с запрещенными индуцированными подграфами выходят за рамки приложений LP и PSD программирования.
Гил Калай

@Gil: спасибо, я попытался ответить на этот комментарий в редактировании. Возможно, вы могли бы расширить SDP-соединение отдельно?
Андрас Саламон,

1
Интересным и сходным с теорией запрещенных миноров результатом является характеристика Сеймура вполне унимодулярных матриц. Они эквивалентны обычным матроидам, и теорема Сеймура говорит, что они могут быть «построены» из (со) графических матроидов и 5 специальных матроидов, используя простые операции составления. Композиции также легко «отменить», что приводит к совершенно неочевидному алгоритму распознавания полной унимодулярности. Как упоминал @Kunal, полная унимодулярность сама объясняет политическую разрешимость многих проблем.
Сашо Николов

18

Редукция на основе решетки (алгоритм LLL). Это основа для эффективной целочисленной полиномиальной факторизации и некоторых эффективных криптоаналитических алгоритмов, таких как разрыв линейно-конгруэнтных генераторов и RSA низкой степени. В некотором смысле вы можете рассматривать евклидов алгоритм как частный случай.


Я бы сказал, что LLL (и PSLQ / HJLS) являются обобщениями алгоритма GCD, а не наоборот.
user834

2

3
Что такое PSLQ / HJLS?
Гил Калай

Частичная сумма LQ (как в факторизации) алгоритме и Hastad, как раз, Lagarias и алгоритм Шнорры (я предполагаю , что алгоритм был назван в честь фамилии автора) более «современные» алгоритмы для обнаружения целочисленных отношений.
user834

15

Целочисленное программирование Ленстры в ограниченной размерности, алгоритм Ленстры-Ленстры-Ловаша и связанные с ними последующие алгоритмы - алгоритм Барвинок для числа целочисленных решений задачи ИС в ограниченной размерности и P-алгоритм Каннана для задачи Фробениуса / Сильвестра можно добавить в виде особая категория. Примечательной открытой проблемой здесь является нахождение P-алгоритма для задач более высокого порядка в иерархии Пресбургера.

Другим классом P-алгоритма, заслуживающим упоминания, являются те P-алгоритмы, которые даны объекту, доказанному существованием рандомизированных доказательств. Примеры: алгоритмы для применения Ловаш-локальной леммы; алгоритмические версии результата дискретности Спенсера; (немного другого вида) алгоритмические версии леммы регулярности Семереди.


14

Существует большое и все еще растущее количество теорий о классах задач удовлетворения фиксированных шаблонов, которые имеют алгоритмы полиномиального времени. Большая часть этой работы требует мастерства в книгах Хобби и МакКензи , но, к счастью, для тех из нас, кто больше интересуется информатикой, чем универсальной алгеброй, некоторые части этой теории теперь достаточно упрощены, чтобы быть доступными для аудитории TCS.

ΓSTΓST

Γk3kΓ(0,0,,0)S0T

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

ΓΓ

Результаты на сегодняшний день, кажется, указывают на то, что должно быть своего рода общее мощное преобразование базового пространства состояний достижимости, которое может превратить такие проблемы в проблемы с постоянным кортежем в каждом отношении, как в примере выше. (Это моя личная интерпретация текущих исследований и вполне может быть совершенно неправильно , в зависимости от того, как постоянный поиска алгоритма для алгебр с циклическими точками кастрюли, поэтому я оставляю за собой право отречься это.) Известно , что , когда там ISN Если это не трансформация, то проблема является NP-полной. Граница гипотезы дихотомии в настоящее время включает в себя сокращение этого разрыва; см. список открытых проблем из семинара 2011 года по алгебре и CSP .

В любом случае, это, вероятно, заслуживает записи в списке Скотта.

Второй класс в PTIME позволяет применять методы локальной согласованности для сокращения возможных решений до тех пор, пока решение не будет найдено или пока не будет невозможно. По сути, это сложная версия того, как большинство людей решают проблемы с судоку. Я не думаю, что эта причина в настоящее время фигурирует в списке Скотта либо.

Γ

Наконец, Мануэль Бодирски также предлагает много интересных работ для случая бесконечных областей. Некоторые алгоритмы выглядят довольно странно и в конечном итоге могут привести к большему количеству записей в списке Скотта.


11

Я вижу, что на это ссылается Чандра, но я думаю, что структура релаксации ЛП (например, из-за полной унимодулярности) является распространяющейся формой «структуры», которая приводит к полиномиальности. Это объясняет большой класс поли времени алгоритмов. Если один включает в себя проблемы с обещаниями, он также учитывает большой класс алгоритмов приближения. Наиболее частые классы причин, которые встречаются, которые не вытекают из LP и / или SDP, - это гауссово исключение и динамическое программирование. Конечно, есть и другие, такие как голографические алгоритмы, которые не имеют простых объяснений.

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