Я можу частково відповісти на ваше запитання: підрахунок локальної оптими проблеми пошуку, повного PLS, дійсно може бути # P-важким.
По-перше, як вказує Йосіо, в PLS є проблема пошуку , пов'язана з цим проблема підрахунку - # P-завершена. (Ми не знаємо, чи є PLS-повним.) Нехай є деякою проблемою, заповненою PLS. Потім визначте який на вході для запитує локальний оптимум для введення щодо . Ця проблема успадковує приналежність до PLS , успадковує PLS-повноту , а для проблеми підрахунку успадковує # P-повноту .П1P 2 P ′ ( x , i ) i ∈ { 1 , 2 } x P i P 1 , P 2 P 2 P 1П1П2П'( x , i )i ∈ { 1 , 2 }хПiП1, С2П2П1
Аналогічно, можна побудувати задачу (штучну), повну PLS, для якої вирішити, чи існує більше одного локального оптимуму. Як і в попередньому аргументі, одна «скріплює» проблему -повну як і раніше, з проблемою PLS яка при введенні булевої формули , має більше ніж один асоційований локальний оптимум iff .P 2 ψ ψП1П2ψψ
Такі конструкції дещо незадовільні, оскільки ми намагаємося побудувати задачу пошуку яка має дві властивості твердості, але домен "розбивається" на дві частини, кожна з яких може мати лише одне з двох властивостей. Нижче я покажу, як, враховуючи проблему пошуку в PLS, пов’язана з якою проблемою підрахунку є # P-повна, і задану проблему, повну PLS , можна визначити проблему PLS, яка настільки ж складна, як обидва рахунки для і шукати "способом від конкретного випадку".Q P 1 P 2 Q P 1 P 2QQП1П2QП1П2
А саме, ми покажемо таким, що розв’язування задачі підрахунку для на вході ефективно зводиться до вирішення проблеми підрахунку на вході , а проблема пошуку на вході зводиться до проблеми пошуку для на вході .P 1 x Q xQП1хQх x Q xП2хQх
Для простоти подання, ми припускаємо, що є такими, що на будь-якому вході довжини простір кандидата-рішення, пов'язаний з , перевищує рядок довжини для деякого (але з різними структурами сусідства для ). Нехай - функція фітнесу, пов'язана з . x n x y n c c P 1 , P 2 F i ( x , y ) P iП1, С2хнхунccП1, С2Жi( х , у)Пi
На вході простір пошуку для знаходиться над кортежами де кожен знаходиться в , , і . Як функцію фітнесу для визначимо Q ( y 1 , y 2 , z , b ) y i { 0 , 1 } n c z ∈ { 0 , 1 } n c + 1 b ∈ { 0 , 1 } F ( x , ( y 1 , y 2 , z , bx ∈ { 0 , 1 }нQ( у1, у2, z, б )уi{ 0 , 1 }нcz∈ { 0 , 1 }нc+ 1b ∈ { 0 , 1 }QЖ( х , ( у1, у2, z, б ) )Q
b = 1Ж( х , ( у1, у2, z, б ) ) : = F1( х , у1) + F2( х , у2) якщо , b = 1
b = 0Ж( х , ( у1, у2, z, б ) ) : = | | у1| | + | | z| | + F2( х , у2) якщо .b = 0
(Це вага Хеммінга вище.)
Для структури сусідства з’єднуємо кожен кортеж (з ) до всіх кортежів таке, що( x , ( y 1 , y 2 , z , 1 ) ) b = 1 ( x , ( ( y ′ ) 1 , ( y ′ ) 2 , z ′ , 1 ) )Q( х , ( у1, у2, z, 1 ) )b = 1( х , ( ( у')1, ( у')2, z', 1 ) )
(A) підключається до відповідно до для , AND( x , ( y ′ ) i ) P i i = 1 , 2( х , уi)( х , ( у')i)Пii=1,2
(B) відрізняються щонайбільше 1 координатою.z,z′
Для кортежів з з'єднуємо до всіх кортежів такий, що( x , ( y 1 , y 2 , z , 0 ) ) ( x , ( ( y ′ ) 1 , ( y ′ ) 2 , z ′ , 0 ) )b=0(x,(y1,y2,z,0))(x,((y′)1,(y′)2,z′,0))
(A ') підключено до відповідно до , І( x , ( y ′ ) 2 ) P 2(x,y2)(x,(y′)2)P2
(B ') відрізняються щонайбільше від 1 координати, як і .y 1 , ( y ′ ) 1z,z′y1,(y′)1
(Зверніть увагу, кортежі з відключаються від тих, у яких )b = 1b=0b=1
Це визначення . Округи мають поліноміальний розмір у міру необхідності, тому знаходиться в PLS. QQQ
Заявка: Локальні оптими для довжини введення відповідно до - це наступні два роз'єднані набори:x QnxQ
(1) всі кортежі , де - локальний оптимум для кожного з (а довільно , і ); і,( x , y i ) P i i = 1 , 2 z b = 1(x,(y1,y2,z,1))(x,yi)Pii=1,2zb=1
(2) всі кортежі , де локальний оптимум , а де обидва є всі-1, і .( x , y 2 ) P 2 z , y 1 b = 0(x,1nc,y2,1n,0))(x,y2)P2z,y1b=0
Якщо ви згодні, то PLS-твердість є безпосереднім, так як будь-який локальний оптимум з для введення дає локальний оптимум з (для того ж вхідного ), і є PLS-важко.( x , ( y 1 , y 2 , z , b ) ) Q x ( x , y 2 ) P 2 x P 2Q(x,(y1,y2,z,b))Qx(x,y2)P2хP2
Також з нашої претензії випливає, що число локальної оптими для при дорівнює , де - кількість локальних оптим для під . Тепер знаходиться в діапазоні , тому ми маємоx Q ( 2 n c + 1 N 1 ( x ) + 1 ) ⋅ N 2 ( x ) N i ( x ) x P i N 2 ( x ) [ 1 , 2 n c ]N( х)хQ(2nc+1N1( x ) + 1 ) ⋅N2( х )Ni( х )хПiN2( х )[ 1 , 2nc]
2 n c + 1 = ( 2 n c + 1 N 1 ( x ) + 1 ) ⋅ N 2 ( x ) 2 n c + 1 = N ( x ) 2 n c + 1N2( x ) = N2( х ) mod mod mod .2нc+ 1= ( 2нc+ 1N1( x ) + 1 ) ⋅ N2( х )2нc+ 1=N( х )2нc+ 1
Таким чином, ми можемо отримати заданий . Тоді ми можемо також отримати за допомогою простої алгебри:
. Оскільки є # P-завершеним для обчислення, так і . Таким чином, # P-повна для підрахунку локальних оптим для (а підрахунок для зводиться до підрахунку для у тому самому екземплярі). N ( x ) N 1 ( x ) N 1 ( x ) = ( N ( x )N2( х )N( х )N1( х )N1(x)N(x)QP1QN1( x ) = (N( х )N2( х )- 1 ) / 2нc+ 1N1( х )N( х )QП1Q
Я не знаю, як дати таке зменшення для поєднання твердості PLS з твердістю NP, щоб визначити унікальність локальної оптими "в конкретному випадку".
Що стосується того, чи кожна проблема пошуку, повного PLS, приносить # P-повну проблему підрахунку, я також цього не знаю. Це здається пов'язано з питанням про те, для кожної NP-повної завдання Рішення L і кожні полиномиального по верифікатори для , асоційована завдання свідка підрахунку є # Р-повній. # Повнота P дорівнює у всіх конкретних випадках, які люди розглядали, і в деяких досить м'яких умовах, але загалом вони відкриті. Дивіться цю дискусію .LV(x,y)L
Для конкретної, більш природної проблеми відомо, є повною для PLS, можливо, вдасться встановити # P-повноту для підрахунку локальної оптими, давши зменшення PLS від сказування Matching до яке має деякі особливі властивості, придатні для підрахунку. Можливо, існуючих методик достатньо; Я не намагався з’ясувати.QQQ