Я набираю это довольно быстро из-за серьезных временных ограничений (и даже не смог ответить раньше по той же причине), но я подумал, что постараюсь, по крайней мере, скинуть свои два цента.
Я думаю, что это действительно великий вопрос, и за последние несколько лет я потратил немало времени на его изучение. (Полное раскрытие: я получил большую часть моего текущего финансирования именно для того, чтобы попытаться найти ответы на вопросы этого типа, а затем потенциально преобразовать более глубокое понимание SAT в более эффективные решатели SAT.)
Если бы нужно было дать ответ в одно предложение, то я думаю,
никто на самом деле не знает, и это активная область исследований
почти так же хорошо, как и получается. За исключением того, что есть гораздо больше возможностей для большей активности, особенно с точки зрения теории.
Некоторые предложенные объяснения (не взаимоисключающие), которые уже обсуждались в других ответах и комментариях,
- (а) черный ход,
- (б) параметризованные соображения сложности,
- (в) графовая структура задачи КНФ,
- (d) соображения сложности доказательства и
- (е) фазовые переходы.
Начиная с конца (е), кажется, что существует некоторая путаница в отношении фазовых переходов. Короткий ответ здесь заключается в том, что нет никаких оснований полагать, что отношение предложений к переменным имеет отношение к прикладным задачам или теоретическим комбинаторным задачам (иначе говоря, созданным случаям). Но по какой-то причине в прикладной части сообщества SAT существует не слишком редкое заблуждение о том, что отношение разделов к переменным должно как-то быть в целом уместной мерой. Отношение пункт-переменная очень важно для случайного k-SAT, но не для других моделей.
Мне кажется, что бэкдоры (а) были популярным объяснением, но я лично не видел убедительных доказательств того, что это объясняет то, что происходит на практике.
Параметризованная сложность (b) дает прекрасную теорию о некоторых аспектах SAT, и очень привлекательная гипотеза состоит в том, что экземпляры SAT просты, потому что они, как правило, «близки к некоторому островку управляемости». Я думаю, что эта гипотеза открывает много интересных направлений исследований. Как отмечено в некоторых ответах, существует много связей между (а) и (б). Однако до сих пор я не вижу никаких доказательств того, что параметризованная сложность слишком сильно коррелирует с тем, что происходит на практике. В частности, кажется, что примеры, которые можно отследить, могут быть очень, очень трудными на практике, и случаи без каких-либо маленьких бэкдоров все еще могут быть очень легкими.
Объяснение, которое кажется мне наиболее правдоподобным для промышленных случаев, заключается в (с), а именно в том, что (график) структура рассматриваемых формул CNF должна коррелировать с практической эффективностью SAT. Идея здесь в том, что переменные и предложения промышленных экземпляров могут быть сгруппированы в хорошо связанные сообщества с небольшим количеством связей между ними, и что решатели SAT так или иначе используют эту структуру. К сожалению, кажется довольно трудно определить это более жестко, и в равной степени, к сожалению, эта область страдает от обмана. Предложенные объяснения, которые я видел до сих пор в статьях, совершенно неудовлетворительны, и модели, кажется, легко сбить. Казалось бы, проблема в том, что если кто-то действительно хочет сделать это тщательно, тогда математика становится действительно трудной (потому что это сложная проблема), и она также становится чрезвычайно запутанной (потому что ваша модель должна быть достаточно близкой к реальности, чтобы получить релевантные результаты). В частности, в работах, которые я видел, объясняется, что производительность эвристики VSIDS (переменной затухающей суммы, не зависящей от состояния переменной) для выбора переменных работает хорошо, потому что исследует сообщества в графическом представлении примеров, довольно неубедительно, хотя гипотеза как таковая все еще остается неубедительной. очень привлекательный.
Одно направление исследований, которое я лично проводил, заключается в том, насколько практическая эффективность SAT как-то соотносится с показателями сложности доказательств рассматриваемых формул CNF. К сожалению, короткий ответ, похоже, заключается в том, что на самом деле нет четкой и убедительной связи. Возможно, все еще существуют нетривиальные корреляции (это то, что мы в настоящее время исследуем по-разному), но теория кажется слишком красивой, чистой и красивой, а реальность слишком запутанная, чтобы быть действительно подходящим. (Относительно статьи, относящейся к мерам доказательства сложности и практической твердости SATJärvisalo, Matsliah, Nordström и Živný из CP '12 выяснили, что более подробные эксперименты дают гораздо более сложную картину с менее четкими выводами - мы надеемся получить полную версию журнала, сообщающую об этом в любое десятилетие, но это сложно, хотя все еще надеюсь, интересно.)
Другое связанное направление работы в области сложности доказательств состоит в том, чтобы смоделировать современные решатели SAT в качестве систем доказательства и доказать теоремы в этих моделях, чтобы вывести свойства соответствующих решателей. Это в какой-то степени минное поле, однако, поскольку небольшие и, казалось бы, безобидные варианты дизайна на стороне теоретической модели могут привести к тому, что результаты практически не будут иметь значения с практической точки зрения. С другой стороны, если кто-то хочет теоретическую модель, достаточно близкую к реальности, чтобы дать соответствующие результаты, то эта модель становится чрезвычайно грязной. (Это связано с тем, что производительность решателя SAT зависит от глобальной истории всего, что до сих пор происходило нетривиальными способами, и это означает, что модель не может быть модульной, как мы обычно настраиваем наши системы доказательств - независимо от того, является ли конкретный шаг деривации "правильный"
Тем не менее, двумя статьями, которые действительно следует упомянуть в качестве исключений к этому, являются [Pipatsrisawat and Darwiche 2011] и [Atserias, Fichte and Thurley 2011], где показано, что основанные на конфликте решения для обучения SAT, моделируемые естественным образом, имеют потенциал для полиномиального моделирования полного, общего разрешения. Существует довольно длинный список работ, предшествующих [PD11] и [AFT11], которые, по сути, претендуют на один и тот же результат, но все они имеют серьезные проблемы с моделированием. (Это правда, что [PD11] и [AFT11] также нужны некоторые допущения для работы, но они в значительной степени минимальны, которые вы ожидаете, если только вы не запрашиваете документы, которые также показывают, что иерархия параметризованной сложности разрушается.)
Опять же, я пишу все это очень быстро, но если есть что-то интересное из вышеперечисленного, я мог бы попытаться уточнить (хотя может потребоваться некоторое время, чтобы вернуться к этому снова - пожалуйста, не стесняйтесь пинговать меня, если есть это то, что вы хотели бы, чтобы я прокомментировал). В качестве быстрого способа предоставления ссылок, позвольте мне сделать несколько бесстыдных самоподключений (хотя стыд несколько уменьшается, когда я вижу, что некоторые комментарии также цитируют некоторые из этих ссылок):
Доклад в стиле учебника «Взаимодействие между сложностью доказательства и решением SAT», проведенный в Международной летней школе по теории удовлетворенности, теории удовлетворенности и автоматизированного мышления в 2016 году, с множеством полных ссылок в конце слайдов: http://www.csc .kth.se / ~ jakobn / исследования / TalkInterplaySummerSchool2016.pdf
Немного более свежие и краткие доклады об опросах Понимание решения SAT на основе конфликтов с помощью объектива доказательства сложности с начала 2017 года (также с полными ссылками в конце): http://www.csc.kth.se/~jakobn/research /TalkProofComplexityLensCDCL1702.pdf
Обзор связей между сложностью доказательства и решением SAT: http://www.csc.kth.se/~jakobn/research/InterplayProofCplxSAT.pdf [Библиографическая ссылка: Якоб Нордстрем. О взаимодействии между проверкой сложности и SAT-решением. ACM SIGLOG Новости, том 2, номер 3, страницы 19-44, июль 2015 года. (Слегка отредактированная версия с некоторыми исправлениями опечаток.)]
Документ SAT '16 с CDCL, честно смоделированный как система доказательств: http://www.csc.kth.se/~jakobn/research/Trade-offsTimeMemoryModelCDCL_SAT.pdf [Библиографическая ссылка: Ян Элферс, Ян Йоханнсен, Массимо Лаурия, Томас Магнард Якоб Нордстрем и Марк Виньялс. Компромиссы между временем и памятью в более узкой модели CDCL SAT Solvers. В материалах 19-й Международной конференции по теории и применениям тестирования удовлетворенности (SAT '16), Конспект лекций в области компьютерных наук, том 9710, страницы 160-176, июль 2016 года.]