А


66

В даний час розв’язання або -повної задачі, або P S P A C E -комплектної задачі неможливо в загальному випадку для великих входів. Однак обидва вирішуються в експоненціальному часі та поліномічному просторі.NПPSPACE

Так як ми не можемо побудувати недетермінірованних або «щасливчиків» комп'ютерів, він робить ніякої різниці для нас , якщо проблема є -повне або P S P C E -повний?NPPSPACE

Відповіді:


82

Це дуже приємне запитання, над яким я багато думав: чи впливає факт, що проблема є -комплектною або P S P A C E -комплектною, насправді найгіршою часовою складністю проблеми? NППSПАСЕБільш нечітко, чи дійсно таке розмежування впливає на "типовий випадок" складності проблеми на практиці?

Інтуїція говорить, що проблема -комплект важче, ніж N P -комплект, незалежно від того, яку міру складності ви використовуєте. Але ситуація тонка. Можливо, наприклад, що Q B F (кількісно визначені булеві формули, канонічна P S P A C E -повна проблема) знаходиться в субекспоненціальному часі тоді і лише тоді, коли S A T (Задовільність, канонічний N PПSПАСЕNПQБЖПSПАСЕSАТNП-повна проблема) знаходиться в субекспоненціальному часі. (Один напрямок, очевидно ,! Інший напрямок буде головним результатом) Якщо це так, то , можливо , від «Я просто хочу , щоб вирішити цю проблему» точки зору, це не має великого значення, чи є проблема -повне або N PПSПАСЕNП -повне: в будь-якому випадку, субекспоненціальний алгоритм для одного передбачає субекспоненціальний алгоритм для іншого.

Дозвольте мені бути захисником диявола, і наведіть вам приклад, коли одна проблема виявляється «важче», ніж інша, але все ж виявляється «більш прихованою», ніж інша.

Нехай - булева формула для n змінних, де n парне. Припустимо, у вас є вибір між двома формулами, які ви хочете вирішити:Ж(х1,,хн)нн

.Φ1=(х1)(х2)(хн-1)(хн)Ж(х1,,хн)

Φ2=(х1)(х2)(хн-1(хн)Ж(х1,,хн)

(Тобто в кількісні показники чергуються.)Φ2

Який, на вашу думку, простіше вирішити? Формули типу , або формули типу Φ 2 ?Φ1Φ2

Можна було б подумати , що очевидний вибір , як це тільки Н Р -повне , щоб вирішити його, тоді як Ф 2 є Р С Р С Й -повної проблемою. Але насправді, згідно з нашими найвідомішими алгоритмами, Φ 2 - це легша проблема. Ми не маємо ідеї, як розв’язати Φ 1 для загального F менше ніж 2 nΦ1NПΦ2ПSПАСЕΦ2Φ1Ж2н кроків. (Якби ми могли це зробити, ми мали б нові граничні розміри формули!) Але можна легко вирішити для будь-якого F у рандомізованому O (Φ2Ж час, використовуючи рандомізований пошук ігрового дерева! Для довідки див. Розділ 2.1 глави 2 у Мотвані та Рагавані.О(2.793н)

Інтуїція є те , що додавання кванторів фактично обмежує проблему , що робить його легше вирішити, а не важче. Алгоритм пошуку дерев ігор в значній мірі покладається на наявність змінних кванторів і не може обробляти довільні кількісні показники. Проте все ще залишається, що проблеми іноді можуть бути "простішими" в рамках однієї міри складності, хоча вони можуть виглядати "важче" під іншим заходом.


16
Приємна відповідь та цікавий прийом.
Суреш Венкат

Мені здається, що вищесказане є досить хорошим прикладом того, що ми маємо на увазі під «дрібнозернистою складністю» (програма Fall 2015 в Інституті Сімонса). Однією з ключових ідей є те, що теорія складності може виглядати зовсім інакше, коли замість того, щоб намагатися знайти для кожної проблеми (потенційно химерну) обчислювальну модель, для якої ця проблема є "повною", просто зосереджується на розумінні того, що є найкращим можливим часом виконання показник проблеми.
Райан Вільямс

37

Це має значення, тому що тут більше загрожує, ніж ми можемо знайти рішення чи ні. Також цікаво, чи можемо ми перевірити рішення. Можуть бути зроблені інші якісні розрізнення між складністю проблем, але для NP порівняно з більш великими класами складності це було б саме те, що я визначив би найважливішим.

Проблеми з рішенням - проблеми, на які кожен примірник має відповідь " ТАК " або " НІ " - NP - це саме той клас проблем, для якого ми можемо ефективно перевірити нібито доказ того, що даний екземпляр є " YES ", детерміновано, якщо нам представлений один. Наприклад, якщо у вас є задовольняюче призначення змінних для екземпляра 3-SAT, це призначення дозволяє ефективно довести, що цей примірник підходить. Таке задовільне завдання може бути важко знайти, але як тільки ви його отримаєте, ви можете легко довести іншим, що цей екземпляр є придатним, лише за допомогою них перевірити знайдене рішення.

Аналогічно, для coNP існують ефективні доказові докази для випадків " НІ "; а для проблем у NP  ∩  coNP можна зробити і те, і інше. Але для повних проблем PSPACE таких процедур не існує - якщо ви не зможете довести деякі вражаючі рівності класів складності.


Я думаю, що питання стосується "оптимізації" версії проблем, повних NP та PSPACE. Наприклад, чи є якась різниця (за складністю) між пошуком рішення для SAT та QBF? І взагалі, чи є характеристика проблем оптимізації, яка версія рішення є NP-повною або PSPACE-повною?
Ламін

@Lamine: Я не виявляю різниці, яку ви робите у питанні (принаймні, між простим рішенням та повною оптимізацією). Можливо, ви маєте на увазі, що запитувача цікавить лише питання про ресурси, необхідні для пошуку відповіді, і він не зацікавлений в інших заходах складності проблеми, і тоді я погоджуюся, що моя відповідь не відповідає на це. У будь-якому випадку, вище моя відповідь на питання, яке воно є.
Niel de Beaudrap

5
Дуже приємна відповідь.
Дейв Кларк

Можливість ефективної перевірки не допомагає в обчисленні рішення (якщо тільки P = NP). NP та co-NP дозволяють атакувати проблему за допомогою відгадки та перевірки. Цей підхід легко здійснити і може бути навіть більш ефективним, але він не допомагає в гіршому випадку.
Андраш Саламон

@ András: правда - тому моє наголос на тому, що пошук рішень - не єдина важлива річ у передмові моєї відповіді.
Ніль де Бодорап

36

Ми не знаємо, як побудувати середні важкі проблеми з (найгіршого) NP-повних проблем, але ми можемо це зробити для PSPACE (див. Köbler & Schuler (1998) ), щоб створити проблеми навіть через рівномірний розподіл, який не може бути вирішено на більшості входів, якщо тільки PSPACE не легко обчислити.


20

З практичної сторони важливо пам’ятати, що NP-повнота не є бар'єром для багатьох проблем на практиці. Інструменти подвійного вирішення SAT та CPLEX (для цілого лінійного програмування) є досить потужними та досить добре розробленими, що часто можна вирішити великі екземпляри проблем, повних NP, шляхом формування проблеми як відповідного ILP або шляхом зменшення до SAT.

Мені невідомі аналогічні добре розроблені рішення для проблем у PSPACE.



7

Ви можете подумати про це так: чи має математична проблема доказ, що читається людиною, чи це по суті вимагає «комп’ютерного підтвердження». Приклади: вихідне положення шашок - нічия? (Відповідь: так.) Чи є вихідна позиція шахів виграшю для білих? (Відповідь: невідомо, але більшість класистів вважають, що це нічия.)

Доказ того, що вихідна позиція шашок - це нічия, в кінцевому рахунку вимагає визнати, що комп'ютер дійсно точно перевіряв безліч спеціальних випадків. Якщо доказ про шахи коли-небудь існує, можливо, людські читачі зажадають, що комп'ютер правильно перевірив ще більше особливих випадків. І цілком може бути, що немає кращого способу доведення цих тверджень. Це проблеми в PSPACE. Якщо проблема "просто" в НП, то (інтуїтивно) людина може утримувати весь доказ у своїй голові. Зрозуміло, що цій людині може бути дуже спеціалізований математик.

н1000000


Чи можна також стверджувати, що проблеми, пов’язані із завершенням співпраці, мають цю проблему (іноді), яка потребує "комп'ютерного підтвердження?"
Філіп Уайт

@Philip White: Я не думаю, що це те саме. Скажіть, "шахи внічию" є в coNP. Щоб сказати ні, все, що мені потрібно зробити, - це продемонструвати єдину лінію примусу, яку легко перевірити. Однак ми очікуємо, що навіть за наявності такої лінії, ймовірно, буде дуже важко довести, що вона справді "змушує". Таким чином, проблема не дає гарантії простоти, якщо вона вирішена в певному напрямку. "Шахи - це нічия", ймовірно, за своєю суттю вимагає, щоб комп'ютер довів, правдивий він чи помилковий.
Аарон Стерлінг

5

На додаток до коментаря Суреша, схоже, існує велика різниця у практиці. Є евристики, які вдається використовувати структуру практичних примірників SAT та отримувати відмінні показники (тут я маю на увазі конфліктні рішення, що керуються конфліктом). Одні й ті ж евристики не покращують продуктивність вирішувачів QBF.

Різниця між доказом і верифікацією також виявляється. Деякі рішення SAT (наприклад, MiniSAT 1.14 та безліч інших) надають докази. Надання доказів у поточних рішеннях QBF є нетривіальним. (Наступне твердження - з чужих відомостей) У змаганні QBF є великі випадки, коли вирішувачі, очевидно, дають різні результати. За відсутності рішень, що генерують доказ, ми не знаємо, який результат є правильним.


0

Якщо ви подивитесь на практичну ефективність на SAT та шахах, то є різниця - проблеми, повні з NP, більш простежуються, ніж проблеми, що завершуються PSPACE. Сьогодні вирішувачі SAT можуть обробляти понад тисячу змінних, але найкращий шаховий двигун за той же час може розраховувати лише за 20 ходів.

Я думаю, це через структуру проблем. Так, якщо ви просто перераховуєте рішення, рішення SAT відбувається дуже повільно. Але оскільки він не має чергування кількісних показників, люди виявляють структури у формулі і, отже, уникають значного перерахування. Я думаю, що Райан Вільямс не помітив цього питання.

З чергуванням кількісних показників, так, є розумні методи обрізки, але структура все ж не така багата, як у формули CNF.

Дозвольте передбачити майбутнє. Розв’язання SAT перетворить його на P, вивчивши формулу і по суті уникаючи пошуку, тоді як шахи перетворять її на P, використовуючи великі капітали для пошуку в ігровому дереві.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.