78

Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Embed Size (px)

Citation preview

Page 1: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ïðèáëèæåííîå ðåøåíèåçàäà÷ êîìáèíàòîðíîé îïòèìèçàöèè:

àëãîðèòìû è òðóäíîñòüËåêöèÿ 6: Òðóäíîñòü ïðèáëèæ¼ííîãî ðåøåíèÿ çàäà÷

îïòèìèçàöèè

Ì. Âÿëûé

Âû÷èñëèòåëüíûé öåíòð

èì. À.À.Äîðîäíèöûíà

ÔÈÖ ÈÓ ÐÀÍ

Ñàíêò-Ïåòåðáóðã, Computer Science Club, 2016

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 1 / 29

Page 2: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ïðèáëèæ¼ííûå àëãîðèòìû: âîçìîæíîñòè è îãðàíè÷åíèÿ

Çàäà÷à Àëãîðèòì Òðóäíîñòü

MAX-3SAT 7/8 = 0.875 7/8 + ε

MAX-CUT αGW ≈ 0.878 16/17 ≈ 0.94

MAX-2SAT ≈ 0.940 21/22 ≈ 0.955

MIN-VC 2 ≈ 1.36

MAX-IND O(

log3 nn(log log n)2

)Ω(n−c), c > 0

sparsest cut O(√log n) ?

Åñëè P 6= NP, òî äëÿ çàäà÷è íåò ïîëèíîìèàëüíîãî àëãîðèòìà ñ

óêàçàííîé òî÷íîñòüþ àïïðîêñèìàöèè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 2 / 29

Page 3: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ïðèáëèæ¼ííûå àëãîðèòìû: âîçìîæíîñòè è îãðàíè÷åíèÿ

Çàäà÷à Àëãîðèòì Òðóäíîñòü

MAX-3SAT 7/8 = 0.875 7/8 + ε

MAX-CUT αGW ≈ 0.878 16/17 ≈ 0.94

MAX-2SAT ≈ 0.940 21/22 ≈ 0.955

MIN-VC 2 ≈ 1.36

MAX-IND O(

log3 nn(log log n)2

)Ω(n−c), c > 0

sparsest cut O(√log n) ?

Åñëè P 6= NP, òî äëÿ çàäà÷è íåò ïîëèíîìèàëüíîãî àëãîðèòìà ñ

óêàçàííîé òî÷íîñòüþ àïïðîêñèìàöèè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 2 / 29

Page 4: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ïðèáëèæ¼ííûå àëãîðèòìû: âîçìîæíîñòè è îãðàíè÷åíèÿ

Çàäà÷à Àëãîðèòì Òðóäíîñòü

MAX-3SAT 7/8 = 0.875 7/8 + ε

MAX-CUT αGW ≈ 0.878 16/17 ≈ 0.94

MAX-2SAT ≈ 0.940 21/22 ≈ 0.955

MIN-VC 2 ≈ 1.36

MAX-IND O(

log3 nn(log log n)2

)Ω(n−c), c > 0

sparsest cut O(√log n) ?

Åñëè P 6= NP, òî äëÿ çàäà÷è íåò ïîëèíîìèàëüíîãî àëãîðèòìà ñ

óêàçàííîé òî÷íîñòüþ àïïðîêñèìàöèè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 2 / 29

Page 5: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ïðèáëèæ¼ííûå àëãîðèòìû: âîçìîæíîñòè è îãðàíè÷åíèÿ

Çàäà÷à Àëãîðèòì Òðóäíîñòü

MAX-3SAT 7/8 = 0.875 7/8 + ε

MAX-CUT αGW ≈ 0.878 16/17 ≈ 0.94

MAX-2SAT ≈ 0.940 21/22 ≈ 0.955

MIN-VC 2 ≈ 1.36

MAX-IND O(

log3 nn(log log n)2

)Ω(n−c), c > 0

sparsest cut O(√log n) ?

Åñëè P 6= NP, òî äëÿ çàäà÷è íåò ïîëèíîìèàëüíîãî àëãîðèòìà ñ

óêàçàííîé òî÷íîñòüþ àïïðîêñèìàöèè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 2 / 29

Page 6: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Unique games conjecture: óñèëåíèå ðåçóëüòàòîâ

Õîò âûñêàçàë ãèïîòåçó, óñèëèâàþùóþ ðåçóëüòàòû î òðóäíîñòè

ïðèáëèæåíèÿ. Íåÿñíî, âåðíà ëè îíà. Âîò òàáëèöà äîñòèæåíèé â

ïðåäïîëîæåíèè èñòèííîñòè ãèïîòåçû Õîòà è ãèïîòåçû P 6= NP:

Çàäà÷à Àëãîðèòì Òðóäíîñòü

MAX-CUT αGW ≈ 0.878 αGW + ε

MAX-2SAT αLLZ ≈ 0.940 αLLZ + ε

MIN-VC 2 2− εsparsest cut O(

√log n) > C (C ëþáîå)

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 3 / 29

Page 7: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ñìûñë óñëîâíûõ ðåçóëüòàòîâ î òðóäíîñòè

problem

problem 1

problem 2

problem 3

. . .

problem N

. . .

Class

Åñëè ñóùåñòâóåò ýôôåêòèâíûé àëãîðèòì äëÿ çàäà÷è, òî ñóùåñòâóþò

ýôôåêòèâíûå àëãîðèòìû äëÿ âñåõ çàäà÷ èç íåêîòîðîãî êëàññà.

Ñòðåëêè îáîçíà÷àþò ñâîäèìîñòè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 4 / 29

Page 8: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ñìûñë óñëîâíûõ ðåçóëüòàòîâ î òðóäíîñòè

problem

problem 1

problem 2

problem 3

. . .

problem N

. . .

Class

Åñëè ñóùåñòâóåò ýôôåêòèâíûé àëãîðèòì äëÿ çàäà÷è, òî ñóùåñòâóþò

ýôôåêòèâíûå àëãîðèòìû äëÿ âñåõ çàäà÷ èç íåêîòîðîãî êëàññà.

Ñòðåëêè îáîçíà÷àþò ñâîäèìîñòè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 4 / 29

Page 9: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ìîäåëè âû÷èñëåíèé è ðåñóðñû

Àëãîðèòì ñïîñîá âû÷èñëåíèÿ (÷àñòè÷íî îïðåäåë¼ííîé) ôóíêöèè

f : Σ∗ → Σ∗, |Σ| <∞. Áåç îãðàíè÷åíèÿ îáùíîñòè Σ = 0, 1.Îñíîâíàÿ ìîäåëü: ìíîãîëåíòî÷íàÿ ìàøèíà Òüþðèíãà.

Âðåìÿ ðàáîòû: êîëè÷åñòâî òàêòîâ äî îñòàíîâêè.

Âðåìÿ ðàáîòû íà âõîäàõ äëèíû n: íàèõóäøåå âðåìÿ ïî âñåì âõîäàì

äëèíû n.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 5 / 29

Page 10: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ìîäåëè âû÷èñëåíèé è ðåñóðñû

Àëãîðèòì ñïîñîá âû÷èñëåíèÿ (÷àñòè÷íî îïðåäåë¼ííîé) ôóíêöèè

f : Σ∗ → Σ∗, |Σ| <∞. Áåç îãðàíè÷åíèÿ îáùíîñòè Σ = 0, 1.Îñíîâíàÿ ìîäåëü: ìíîãîëåíòî÷íàÿ ìàøèíà Òüþðèíãà.

Âðåìÿ ðàáîòû: êîëè÷åñòâî òàêòîâ äî îñòàíîâêè.

Âðåìÿ ðàáîòû íà âõîäàõ äëèíû n: íàèõóäøåå âðåìÿ ïî âñåì âõîäàì

äëèíû n.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 5 / 29

Page 11: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Àëãîðèòìè÷åñêèå çàäà÷è

Çàäà÷à ðàçðåøåíèÿ äëÿ ÿçûêà L

Âõîä x ∈ Σ∗. Âåðíî ëè, ÷òî x ∈ L?

Ïðèìåð: çàäà÷à âûïîëíèìîñòè ÊÍÔ. Îïèñàíèÿ âûïîëíèìûõ ÊÍÔ

(äâîè÷íûå ñëîâà) îáðàçóþò ÿçûê SAT.

Âû÷èñëåíèå ôóíêöèè f : 0, 1∗ → 0, 1∗

Âõîä x ∈ Σ∗. Ðåçóëüòàò f (x).

Ïðèìåð: çàäà÷à MAX-3SAT çíà÷åíèå ôóíêöèè ðàâíî ìàêñèìàëüíîìó

÷èñëó äèçúþíêòîâ, êîòîðûå ìîæíî âûïîëíèòü íà íåêîòîðîì

ïðèñâàèâàíèè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 6 / 29

Page 12: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Àëãîðèòìè÷åñêèå çàäà÷è

Çàäà÷à ðàçðåøåíèÿ äëÿ ÿçûêà L

Âõîä x ∈ Σ∗. Âåðíî ëè, ÷òî x ∈ L?

Ïðèìåð: çàäà÷à âûïîëíèìîñòè ÊÍÔ. Îïèñàíèÿ âûïîëíèìûõ ÊÍÔ

(äâîè÷íûå ñëîâà) îáðàçóþò ÿçûê SAT.

Âû÷èñëåíèå ôóíêöèè f : 0, 1∗ → 0, 1∗

Âõîä x ∈ Σ∗. Ðåçóëüòàò f (x).

Ïðèìåð: çàäà÷à MAX-3SAT çíà÷åíèå ôóíêöèè ðàâíî ìàêñèìàëüíîìó

÷èñëó äèçúþíêòîâ, êîòîðûå ìîæíî âûïîëíèòü íà íåêîòîðîì

ïðèñâàèâàíèè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 6 / 29

Page 13: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Êëàññû P è FP

Îïðåäåëåíèå êëàññà P

ßçûê L ïðèíàäëåæèò êëàññó P, åñëè ñóùåñòâóþò àëãîðèòì M (ìàøèíà

Òüþðèíãà) è ïîëèíîì p(·) òàêèå, ÷òî M(x) = 1 ðàâíîñèëüíî x ∈ L äëÿ ëþáîãî x ;

âðåìÿ ðàáîòû M íà âõîäå x íå ïðåâîñõîäèò p(|x |).

Îïðåäåëåíèå êëàññà FP

Ôóíêöèÿ f : 0, 1∗ → 0, 1∗ ïðèíàäëåæèò êëàññó FP, åñëèñóùåñòâóþò àëãîðèòì M è ïîëèíîì p(·) òàêèå, ÷òî M(x) = f (x) äëÿ ëþáîãî x ;

âðåìÿ ðàáîòû M íà âõîäå x íå ïðåâîñõîäèò p(|x |).

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 7 / 29

Page 14: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Êëàññû P è FP

Îïðåäåëåíèå êëàññà P

ßçûê L ïðèíàäëåæèò êëàññó P, åñëè ñóùåñòâóþò àëãîðèòì M (ìàøèíà

Òüþðèíãà) è ïîëèíîì p(·) òàêèå, ÷òî M(x) = 1 ðàâíîñèëüíî x ∈ L äëÿ ëþáîãî x ;

âðåìÿ ðàáîòû M íà âõîäå x íå ïðåâîñõîäèò p(|x |).

Îïðåäåëåíèå êëàññà FP

Ôóíêöèÿ f : 0, 1∗ → 0, 1∗ ïðèíàäëåæèò êëàññó FP, åñëèñóùåñòâóþò àëãîðèòì M è ïîëèíîì p(·) òàêèå, ÷òî M(x) = f (x) äëÿ ëþáîãî x ;

âðåìÿ ðàáîòû M íà âõîäå x íå ïðåâîñõîäèò p(|x |).

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 7 / 29

Page 15: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ïîëèíîìèàëüíàÿ ñâîäèìîñòü

Îïðåäåëåíèå ïîëèíîìèàëüíîé ñâîäèìîñòè

A 6p B åñëè ñóùåñòâóåò òàêîå îòîáðàæåíèå f ∈ FP , ÷òî x ∈ Aðàâíîñèëüíî f (x) ∈ B .

Ëåììà

Ïîëèíîìèàëüíàÿ ñâîäèìîñòü òðàíçèòèâíà: èç A 6p B , B 6p C ñëåäóåò

A 6p C .

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 8 / 29

Page 16: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ïîëèíîìèàëüíàÿ ñâîäèìîñòü

Îïðåäåëåíèå ïîëèíîìèàëüíîé ñâîäèìîñòè

A 6p B åñëè ñóùåñòâóåò òàêîå îòîáðàæåíèå f ∈ FP , ÷òî x ∈ Aðàâíîñèëüíî f (x) ∈ B .

A

A

B

B

Ëåììà

Ïîëèíîìèàëüíàÿ ñâîäèìîñòü òðàíçèòèâíà: èç A 6p B , B 6p C ñëåäóåò

A 6p C .

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 8 / 29

Page 17: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ïîëèíîìèàëüíàÿ ñâîäèìîñòü

Îïðåäåëåíèå ïîëèíîìèàëüíîé ñâîäèìîñòè

A 6p B åñëè ñóùåñòâóåò òàêîå îòîáðàæåíèå f ∈ FP , ÷òî x ∈ Aðàâíîñèëüíî f (x) ∈ B .

A

A

B

B

Ëåììà

Ïîëèíîìèàëüíàÿ ñâîäèìîñòü òðàíçèòèâíà: èç A 6p B , B 6p C ñëåäóåò

A 6p C .

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 8 / 29

Page 18: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Êëàññ NP

Îïðåäåëåíèå êëàññà NP

ßçûê L ïðèíàäëåæèò êëàññó NP, åñëè ñóùåñòâóþò àëãîðèòì M,

ðàáîòàþùèé íà äâóõ âõîäàõ x , y è ïîëèíîìû p(·), q(·) òàêèå, ÷òî âðåìÿ ðàáîòû M íà âõîäå x , y íå ïðåâîñõîäèò p(|x |+ |y |). åñëè x ∈ L, òî ñóùåñòâóåò òàêîé y , ÷òî M(x , y) = 1 è |y | 6 q(|x |); åñëè x /∈ L, òî äëÿ ëþáîãî y èç |y | 6 q(|x |) ñëåäóåò M(x , y) = 0.

Ñëîâî y ìîæíî ïîíèìàòü êàê ¾äîêàçàòåëüñòâî¿ ïðèíàäëåæíîñòè

ñëîâà x ÿçûêó L.

NP-òðóäíûå è NP-ïîëíûå ÿçûêè

ßçûê A íàçûâàåòñÿ NP-òðóäíûì, åñëè äëÿ ëþáîãî L ∈ NPâûïîëíÿåòñÿ L 6p A.Åñëè äîïîëíèòåëüíî A ∈ NP, òî A íàçûâàåòñÿ NP-ïîëíûì.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 9 / 29

Page 19: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Êëàññ NP

Îïðåäåëåíèå êëàññà NP

ßçûê L ïðèíàäëåæèò êëàññó NP, åñëè ñóùåñòâóþò àëãîðèòì M,

ðàáîòàþùèé íà äâóõ âõîäàõ x , y è ïîëèíîìû p(·), q(·) òàêèå, ÷òî âðåìÿ ðàáîòû M íà âõîäå x , y íå ïðåâîñõîäèò p(|x |+ |y |). åñëè x ∈ L, òî ñóùåñòâóåò òàêîé y , ÷òî M(x , y) = 1 è |y | 6 q(|x |); åñëè x /∈ L, òî äëÿ ëþáîãî y èç |y | 6 q(|x |) ñëåäóåò M(x , y) = 0.

Ñëîâî y ìîæíî ïîíèìàòü êàê ¾äîêàçàòåëüñòâî¿ ïðèíàäëåæíîñòè

ñëîâà x ÿçûêó L.

NP-òðóäíûå è NP-ïîëíûå ÿçûêè

ßçûê A íàçûâàåòñÿ NP-òðóäíûì, åñëè äëÿ ëþáîãî L ∈ NPâûïîëíÿåòñÿ L 6p A.Åñëè äîïîëíèòåëüíî A ∈ NP, òî A íàçûâàåòñÿ NP-ïîëíûì.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 9 / 29

Page 20: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Òåîðåìà Êóêà Ëåâèíà

Òåîðåìà (Êóê, Ëåâèí)

ßçûê SAT ÿâëÿåòñÿ NP-ïîëíûì.

Ëåììà

Åñëè A 6p B è ANP-òðóäíûé, òî è B NP-òðóäíûé.

Äîêàçàòåëüñòâî NP-òðóäíîñòè ñâîäèìîñòÿìè: áåð¼ì èçâåñòíóþ

òðóäíóþ çàäà÷ó è ñâîäèì ê äàííîé.

Ñâîäèìîñòü îçíà÷àåò ïîçèòèâíîå óòâåðæäåíèå ñóùåñòâîâàíèå

àëãîðèòìà. Ïîýòîìó ñâîäèìîñòè ñòðîèòü îòíîñèòåëüíî ëåãêî è

êîëè÷åñòâî NP-òðóäíûõ çàäà÷ î÷åíü âåëèêî.

Èëëþñòðàöèÿ

SAT 6p 3SAT 6p 3-ðàñêðàñêà. Ïîýòîìó 3-ðàñêðàñêà NP-ïîëíàÿ.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 10 / 29

Page 21: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Òåîðåìà Êóêà Ëåâèíà

Òåîðåìà (Êóê, Ëåâèí)

ßçûê SAT ÿâëÿåòñÿ NP-ïîëíûì.

Ëåììà

Åñëè A 6p B è ANP-òðóäíûé, òî è B NP-òðóäíûé.

Äîêàçàòåëüñòâî NP-òðóäíîñòè ñâîäèìîñòÿìè: áåð¼ì èçâåñòíóþ

òðóäíóþ çàäà÷ó è ñâîäèì ê äàííîé.

Ñâîäèìîñòü îçíà÷àåò ïîçèòèâíîå óòâåðæäåíèå ñóùåñòâîâàíèå

àëãîðèòìà. Ïîýòîìó ñâîäèìîñòè ñòðîèòü îòíîñèòåëüíî ëåãêî è

êîëè÷åñòâî NP-òðóäíûõ çàäà÷ î÷åíü âåëèêî.

Èëëþñòðàöèÿ

SAT 6p 3SAT 6p 3-ðàñêðàñêà. Ïîýòîìó 3-ðàñêðàñêà NP-ïîëíàÿ.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 10 / 29

Page 22: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Òåîðåìà Êóêà Ëåâèíà

Òåîðåìà (Êóê, Ëåâèí)

ßçûê SAT ÿâëÿåòñÿ NP-ïîëíûì.

Ëåììà

Åñëè A 6p B è ANP-òðóäíûé, òî è B NP-òðóäíûé.

Äîêàçàòåëüñòâî NP-òðóäíîñòè ñâîäèìîñòÿìè: áåð¼ì èçâåñòíóþ

òðóäíóþ çàäà÷ó è ñâîäèì ê äàííîé.

Ñâîäèìîñòü îçíà÷àåò ïîçèòèâíîå óòâåðæäåíèå ñóùåñòâîâàíèå

àëãîðèòìà. Ïîýòîìó ñâîäèìîñòè ñòðîèòü îòíîñèòåëüíî ëåãêî è

êîëè÷åñòâî NP-òðóäíûõ çàäà÷ î÷åíü âåëèêî.

Èëëþñòðàöèÿ

SAT 6p 3SAT 6p 3-ðàñêðàñêà. Ïîýòîìó 3-ðàñêðàñêà NP-ïîëíàÿ.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 10 / 29

Page 23: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Òåîðåìà Êóêà Ëåâèíà

Òåîðåìà (Êóê, Ëåâèí)

ßçûê SAT ÿâëÿåòñÿ NP-ïîëíûì.

Ëåììà

Åñëè A 6p B è ANP-òðóäíûé, òî è B NP-òðóäíûé.

Äîêàçàòåëüñòâî NP-òðóäíîñòè ñâîäèìîñòÿìè: áåð¼ì èçâåñòíóþ

òðóäíóþ çàäà÷ó è ñâîäèì ê äàííîé.

Ñâîäèìîñòü îçíà÷àåò ïîçèòèâíîå óòâåðæäåíèå ñóùåñòâîâàíèå

àëãîðèòìà. Ïîýòîìó ñâîäèìîñòè ñòðîèòü îòíîñèòåëüíî ëåãêî è

êîëè÷åñòâî NP-òðóäíûõ çàäà÷ î÷åíü âåëèêî.

Èëëþñòðàöèÿ

SAT 6p 3SAT 6p 3-ðàñêðàñêà. Ïîýòîìó 3-ðàñêðàñêà NP-ïîëíàÿ.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 10 / 29

Page 24: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Çàäà÷è ñ àïðèîðíîé èíôîðìàöèåé (promise problems)

Âû÷èñëåíèå ÷àñòè÷íî îïðåäåë¼ííîãî ïðåäèêàòà.

Î âõîäíûõ äàííûõ çàðàíåå èçâåñòíà íåêîòîðàÿ èíôîðìàöèÿ.

Èíòåðåñóåò àëãîðèòì ðåøåíèÿ, êîððåêòíî ðàáîòàþùèé íà òàêèõ âõîäàõ

(íà îñòàëüíûõ íåâàæíî êàê ðàáîòàåò).

Ôîðìàëüíî çàäà¼òñÿ ïàðîé ÿçûêîâ (Lyes, Lno), Lyes ∩ Lno = ∅.  ïåðâîì

ñëó÷àå îòâåò 1, âî âòîðîì 0.

Íà çàäà÷è ñ àïðèîðíîé èíôîðìàöèåé ïåðåíîñÿòñÿ åñòåñòâåííûì

îáðàçîì îïðåäåëåíèÿ ïîëèíîìèàëüíîé ñâîäèìîñòè è NP-òðóäíîñòè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 11 / 29

Page 25: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Çàäà÷è ñ àïðèîðíîé èíôîðìàöèåé (promise problems)

Âû÷èñëåíèå ÷àñòè÷íî îïðåäåë¼ííîãî ïðåäèêàòà.

Î âõîäíûõ äàííûõ çàðàíåå èçâåñòíà íåêîòîðàÿ èíôîðìàöèÿ.

Èíòåðåñóåò àëãîðèòì ðåøåíèÿ, êîððåêòíî ðàáîòàþùèé íà òàêèõ âõîäàõ

(íà îñòàëüíûõ íåâàæíî êàê ðàáîòàåò).

Ôîðìàëüíî çàäà¼òñÿ ïàðîé ÿçûêîâ (Lyes, Lno), Lyes ∩ Lno = ∅.  ïåðâîì

ñëó÷àå îòâåò 1, âî âòîðîì 0.

Íà çàäà÷è ñ àïðèîðíîé èíôîðìàöèåé ïåðåíîñÿòñÿ åñòåñòâåííûì

îáðàçîì îïðåäåëåíèÿ ïîëèíîìèàëüíîé ñâîäèìîñòè è NP-òðóäíîñòè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 11 / 29

Page 26: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Çàäà÷è ðàçðåøåíèÿ èç çàäà÷ îïòèìèçàöèè

Çàôèêñèðóåì íåêîòîðóþ ýôôåêòèâíî âû÷èñëèìóþ îöåíêó M(I ) âçàäà÷å ìàêñèìèçàöèè.

(Íàïðèìåð, äëÿ MAX-3SAT ýòî îáùåå êîëè÷åñòâî äèçúþíêòîâ).

Çàäà÷à ñî ùåëüþ

Ýòî çàäà÷à ñ àïðèîðíîé èíôîðìàöèåé. Çàäà¼òñÿ äâóìÿ ÷èñëîâûìè

ïàðàìåòðàìè c (ïîëíîòà), s (êîððåêòíîñòü), c > s.Àïðèîðíûå óñëîâèÿ äëÿ âõîäíûõ äàííûõ I :

ëèáî OPT(I ) > cM(I );

ëèáî OPT(I ) < sM(I ).

Çàäà÷à ñîñòîèò â òîì, ÷òîáû âûÿñíèòü, êàêîé èç äâóõ ñëó÷àåâ èìååò

ìåñòî äëÿ âõîäíûõ äàííûõ.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 12 / 29

Page 27: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ñâÿçü ñ ïðèáëèæ¼ííûìè àëãîðèòìàìè

Ïóñòü äëÿ çàäà÷è ìàêñèìèçàöèè åñòü ïðèáëèæ¼ííûé àëãîðèòì A ñ

òî÷íîñòüþ ðåëàêñàöèè k .Åãî ìîæíî ïðåîáðàçîâàòü â àëãîðèòì ðåøåíèÿ çàäà÷è ñî ùåëüþ

(c , kc).Ïî ðåçóëüòàòó A(I ) ðàáîòû àëãîðèòìà ðàçëè÷àåì äâà ñëó÷àÿ:

íà âõîäå ñ OPT(I ) > cM(I ) âûïîëíÿåòñÿ A(I ) > kcM(I ),íà âõîäå ñ OPT(I ) < kcM(I ) âûïîëíÿåòñÿ A(I ) < kcM(I ).

Ëåììà

Åñëè çàäà÷à ñî ùåëüþ (c , s) NP-òðóäíà, òî ñóùåñòâîâàíèå

ïðèáëèæ¼ííîãî ïîëèíîìèàëüíîãî àëãîðèòìà ñ òî÷íîñòüþ s/c âëå÷¼ò

P = NP.

Äëÿ äîêàçàòåëüñòâà NP-òðóäíîñòè çàäà÷ ñî ùåëüþ íóæíû ñâîäèìîñòè,

ïðè êîòîðûõ ùåëü èçìåíÿåòñÿ êîíòðîëèðóåìûì îáðàçîì.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 13 / 29

Page 28: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ñâÿçü ñ ïðèáëèæ¼ííûìè àëãîðèòìàìè

Ïóñòü äëÿ çàäà÷è ìàêñèìèçàöèè åñòü ïðèáëèæ¼ííûé àëãîðèòì A ñ

òî÷íîñòüþ ðåëàêñàöèè k .Åãî ìîæíî ïðåîáðàçîâàòü â àëãîðèòì ðåøåíèÿ çàäà÷è ñî ùåëüþ

(c , kc).Ïî ðåçóëüòàòó A(I ) ðàáîòû àëãîðèòìà ðàçëè÷àåì äâà ñëó÷àÿ:

íà âõîäå ñ OPT(I ) > cM(I ) âûïîëíÿåòñÿ A(I ) > kcM(I ),íà âõîäå ñ OPT(I ) < kcM(I ) âûïîëíÿåòñÿ A(I ) < kcM(I ).

Ëåììà

Åñëè çàäà÷à ñî ùåëüþ (c , s) NP-òðóäíà, òî ñóùåñòâîâàíèå

ïðèáëèæ¼ííîãî ïîëèíîìèàëüíîãî àëãîðèòìà ñ òî÷íîñòüþ s/c âëå÷¼ò

P = NP.

Äëÿ äîêàçàòåëüñòâà NP-òðóäíîñòè çàäà÷ ñî ùåëüþ íóæíû ñâîäèìîñòè,

ïðè êîòîðûõ ùåëü èçìåíÿåòñÿ êîíòðîëèðóåìûì îáðàçîì.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 13 / 29

Page 29: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ñâÿçü ñ ïðèáëèæ¼ííûìè àëãîðèòìàìè

Ïóñòü äëÿ çàäà÷è ìàêñèìèçàöèè åñòü ïðèáëèæ¼ííûé àëãîðèòì A ñ

òî÷íîñòüþ ðåëàêñàöèè k .Åãî ìîæíî ïðåîáðàçîâàòü â àëãîðèòì ðåøåíèÿ çàäà÷è ñî ùåëüþ

(c , kc).Ïî ðåçóëüòàòó A(I ) ðàáîòû àëãîðèòìà ðàçëè÷àåì äâà ñëó÷àÿ:

íà âõîäå ñ OPT(I ) > cM(I ) âûïîëíÿåòñÿ A(I ) > kcM(I ),íà âõîäå ñ OPT(I ) < kcM(I ) âûïîëíÿåòñÿ A(I ) < kcM(I ).

Ëåììà

Åñëè çàäà÷à ñî ùåëüþ (c , s) NP-òðóäíà, òî ñóùåñòâîâàíèå

ïðèáëèæ¼ííîãî ïîëèíîìèàëüíîãî àëãîðèòìà ñ òî÷íîñòüþ s/c âëå÷¼ò

P = NP.

Äëÿ äîêàçàòåëüñòâà NP-òðóäíîñòè çàäà÷ ñî ùåëüþ íóæíû ñâîäèìîñòè,

ïðè êîòîðûõ ùåëü èçìåíÿåòñÿ êîíòðîëèðóåìûì îáðàçîì.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 13 / 29

Page 30: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Çàäà÷à î ìèíèìàëüíîé ðàñêðàñêå

Ôîðìóëèðîâêà

Äàíî: ãðàô G .

Íàéòè: õðîìàòè÷åñêîå ÷èñëî ãðàôà χ(G ), òî åñòü ìèíèìàëüíîå

êîëè÷åñòâî öâåòîâ k = χ(G ), äëÿ êîòîðîãî ñóùåñòâóåò

ïðàâèëüíàÿ ðàñêðàñêà G â k öâåòîâ.

Òåîðåìà

 ïðåäïîëîæåíèè P 6= NP äëÿ çàäà÷è î ìèíèìàëüíîé ðàñêðàñêå íåò

ïîëèíîìèàëüíîãî àëãîðèòìà ñ òî÷íîñòüþ 6 4/3− ε.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 14 / 29

Page 31: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Çàäà÷à î ìèíèìàëüíîé ðàñêðàñêå

Ôîðìóëèðîâêà

Äàíî: ãðàô G .

Íàéòè: õðîìàòè÷åñêîå ÷èñëî ãðàôà χ(G ), òî åñòü ìèíèìàëüíîå

êîëè÷åñòâî öâåòîâ k = χ(G ), äëÿ êîòîðîãî ñóùåñòâóåò

ïðàâèëüíàÿ ðàñêðàñêà G â k öâåòîâ.

Òåîðåìà

 ïðåäïîëîæåíèè P 6= NP äëÿ çàäà÷è î ìèíèìàëüíîé ðàñêðàñêå íåò

ïîëèíîìèàëüíîãî àëãîðèòìà ñ òî÷íîñòüþ 6 4/3− ε.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 14 / 29

Page 32: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Òðóäíîñòü ïðèáëèæåíèÿ äëÿ ìèíèìàëüíîé ðàñêðàñêè

Íàïîìèíàíèå

NP-ïîëíà çàäà÷à î 3-ðàñêðàñêå.

Ñâîäèìîñòü 3-ðàñêðàñêè ê ìèíèìàëüíîé ðàñêðàñêå ñî ùåëüþ

(3n, 4n − 1) (îöåíêà M(I ) = 1):

ãðàôó G íà n âåðøèíàõ ñîïîñòàâëÿåì ãðàô Kn · G (â êàæäóþ âåðøèíó

ïîëíîãî ãðàôà âêëåèâàåì êîïèþ ãðàôà G ).Õðîìàòè÷åñêîå ÷èñëî óìíîæàåòñÿ íà n: â êàæäîé èç n êîïèé ãðàôà Gíóæíî èñïîëüçîâàòü ñâîé êîìïëåêò öâåòîâ.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 15 / 29

Page 33: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Êîððåêòíîñòü ñâîäèìîñòè

Ïîýòîìó äëÿ 3-ðàñêðàøèâàåìîãî ãðàôà χ(Kn · G ) = 3n, à åñëèχ(G ) > 4, òî χ(Kn · G ) > 4n > 4n − 1.

Âîïðîñ

 ýòîì ðàññóæäåíèè åñòü íåòî÷íîñòü.  ÷¼ì îíà ñîñòîèò è êàê å¼

èñïðàâèòü?

Ñâîäèìîñòü íåêîððåêòíà íà ãðàôàõ ñ χ(G ) < 3

Óòî÷íåíèå ñâîäèìîñòè

Ïðîâåðêà χ(G ) < 3 âîçìîæíà çà ïîëèíîìèàëüíîå âðåìÿ.

Åñëè χ(G ) < 3, òî ãðàôó G ñîïîñòàâëÿåì ãðàô Kn · Kn.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 16 / 29

Page 34: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Êîððåêòíîñòü ñâîäèìîñòè

Ïîýòîìó äëÿ 3-ðàñêðàøèâàåìîãî ãðàôà χ(Kn · G ) = 3n, à åñëèχ(G ) > 4, òî χ(Kn · G ) > 4n > 4n − 1.

Âîïðîñ

 ýòîì ðàññóæäåíèè åñòü íåòî÷íîñòü.  ÷¼ì îíà ñîñòîèò è êàê å¼

èñïðàâèòü?

Ñâîäèìîñòü íåêîððåêòíà íà ãðàôàõ ñ χ(G ) < 3

Óòî÷íåíèå ñâîäèìîñòè

Ïðîâåðêà χ(G ) < 3 âîçìîæíà çà ïîëèíîìèàëüíîå âðåìÿ.

Åñëè χ(G ) < 3, òî ãðàôó G ñîïîñòàâëÿåì ãðàô Kn · Kn.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 16 / 29

Page 35: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Êîððåêòíîñòü ñâîäèìîñòè

Ïîýòîìó äëÿ 3-ðàñêðàøèâàåìîãî ãðàôà χ(Kn · G ) = 3n, à åñëèχ(G ) > 4, òî χ(Kn · G ) > 4n > 4n − 1.

Âîïðîñ

 ýòîì ðàññóæäåíèè åñòü íåòî÷íîñòü.  ÷¼ì îíà ñîñòîèò è êàê å¼

èñïðàâèòü?

Ñâîäèìîñòü íåêîððåêòíà íà ãðàôàõ ñ χ(G ) < 3

Óòî÷íåíèå ñâîäèìîñòè

Ïðîâåðêà χ(G ) < 3 âîçìîæíà çà ïîëèíîìèàëüíîå âðåìÿ.

Åñëè χ(G ) < 3, òî ãðàôó G ñîïîñòàâëÿåì ãðàô Kn · Kn.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 16 / 29

Page 36: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Êîððåêòíîñòü ñâîäèìîñòè

Ïîýòîìó äëÿ 3-ðàñêðàøèâàåìîãî ãðàôà χ(Kn · G ) = 3n, à åñëèχ(G ) > 4, òî χ(Kn · G ) > 4n > 4n − 1.

Âîïðîñ

 ýòîì ðàññóæäåíèè åñòü íåòî÷íîñòü.  ÷¼ì îíà ñîñòîèò è êàê å¼

èñïðàâèòü?

Ñâîäèìîñòü íåêîððåêòíà íà ãðàôàõ ñ χ(G ) < 3

Óòî÷íåíèå ñâîäèìîñòè

Ïðîâåðêà χ(G ) < 3 âîçìîæíà çà ïîëèíîìèàëüíîå âðåìÿ.

Åñëè χ(G ) < 3, òî ãðàôó G ñîïîñòàâëÿåì ãðàô Kn · Kn.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 16 / 29

Page 37: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Çàäà÷à êîììèâîÿæ¼ðà

Ôîðìóëèðîâêà

Äàíî: ïîëíûé âçâåøåííûé ãðàô.

Íàéòè: ãàìèëüòîíîâ öèêë íàèìåíüøåãî âåñà (âåñ ñóììà âåñîâ

ð¼áåð öèêëà).

Òåîðåìà

 ïðåäïîëîæåíèè P 6= NP äëÿ ëþáîãî C > 0 äëÿ çàäà÷è

êîììèâîÿæ¼ðà íåò ïîëèíîìèàëüíîãî àëãîðèòìà ñ òî÷íîñòüþ C .

Èäåÿ äîêàçàòåëüñòâà

Ñâåñòè ê êîììèâîÿæ¼ðó ñî ùåëüþ NP-ïîëíóþ çàäà÷ó î ñóùåñòâîâàíèè

ãàìèëüòîíîâà öèêëà â ãðàôå.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 17 / 29

Page 38: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Çàäà÷à êîììèâîÿæ¼ðà

Ôîðìóëèðîâêà

Äàíî: ïîëíûé âçâåøåííûé ãðàô.

Íàéòè: ãàìèëüòîíîâ öèêë íàèìåíüøåãî âåñà (âåñ ñóììà âåñîâ

ð¼áåð öèêëà).

Òåîðåìà

 ïðåäïîëîæåíèè P 6= NP äëÿ ëþáîãî C > 0 äëÿ çàäà÷è

êîììèâîÿæ¼ðà íåò ïîëèíîìèàëüíîãî àëãîðèòìà ñ òî÷íîñòüþ C .

Èäåÿ äîêàçàòåëüñòâà

Ñâåñòè ê êîììèâîÿæ¼ðó ñî ùåëüþ NP-ïîëíóþ çàäà÷ó î ñóùåñòâîâàíèè

ãàìèëüòîíîâà öèêëà â ãðàôå.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 17 / 29

Page 39: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Çàäà÷à êîììèâîÿæ¼ðà

Ôîðìóëèðîâêà

Äàíî: ïîëíûé âçâåøåííûé ãðàô.

Íàéòè: ãàìèëüòîíîâ öèêë íàèìåíüøåãî âåñà (âåñ ñóììà âåñîâ

ð¼áåð öèêëà).

Òåîðåìà

 ïðåäïîëîæåíèè P 6= NP äëÿ ëþáîãî C > 0 äëÿ çàäà÷è

êîììèâîÿæ¼ðà íåò ïîëèíîìèàëüíîãî àëãîðèòìà ñ òî÷íîñòüþ C .

Èäåÿ äîêàçàòåëüñòâà

Ñâåñòè ê êîììèâîÿæ¼ðó ñî ùåëüþ NP-ïîëíóþ çàäà÷ó î ñóùåñòâîâàíèè

ãàìèëüòîíîâà öèêëà â ãðàôå.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 17 / 29

Page 40: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Âîïðîñ ïîòðóäíåå

Âîïðîñ

Çàäà÷à MAX-3SAT: åñòü ëè ïîëèíîìèàëüíûå ïðèáëèæåííûå

àëãîðèòìû ñ òî÷íîñòüþ 1− ε äëÿ ëþáîãî ε > 0?

Íàïîìèíàíèå

Åñòü ïîëèíîìèàëüíûå àëãîðèòìû ñ òî÷íîñòüþ 7/8.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 18 / 29

Page 41: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Îáùàÿ çàäà÷à âûïîëíèìîñòè

Îáùàÿ çàäà÷à âûïîëíèìîñòè íàçûâàåòñÿ CSP (constraint satisfaction

problem). Íóæíî âûïîëíèòü íàáîð óñëîâèé, ïåðåìåííûå íå îáÿçàòåëüíî

áóëåâû.

Çàäà÷à CSP

Äàíî: Ãèïåðãðàô îãðàíè÷åíèé G (V ,E ,Σ, c). Âåðøèíû ãðàôà

ïåðåìåííûå, ãèïåðð¼áðà óïîðÿäî÷åííûå ñïèñêè âåðøèí.

Íà êàæäîì ðåáðå e ∈ V k çàäàíî îãðàíè÷åíèå ce ⊆ Σk .

Ïðèñâàèâàíèå σ : V → Σ. (Êàæäîé ïåðåìåííîé

ïðèñâîåíî îäíî èç âîçìîæíûõ çíà÷åíèé.)

Îãðàíè÷åíèå ce íà ðåáðå e = (v1, . . . , vk) âûïîëíåíî íà

ïðèñâàèâàíèè, åñëè

(σ(v1), . . . , σ(vk)) ∈ ce ⊆ Σk .

Íàéòè: ìàêñèìàëüíîå êîëè÷åñòâî îãðàíè÷åíèé, êîòîðûå

âûïîëíÿþòñÿ íà íåêîòîðîì ïðèñâàèâàíèè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 19 / 29

Page 42: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Îáùàÿ çàäà÷à âûïîëíèìîñòè

Îáùàÿ çàäà÷à âûïîëíèìîñòè íàçûâàåòñÿ CSP (constraint satisfaction

problem). Íóæíî âûïîëíèòü íàáîð óñëîâèé, ïåðåìåííûå íå îáÿçàòåëüíî

áóëåâû.

Çàäà÷à CSP

Äàíî: Ãèïåðãðàô îãðàíè÷åíèé G (V ,E ,Σ, c). Âåðøèíû ãðàôà

ïåðåìåííûå, ãèïåðð¼áðà óïîðÿäî÷åííûå ñïèñêè âåðøèí.

Íà êàæäîì ðåáðå e ∈ V k çàäàíî îãðàíè÷åíèå ce ⊆ Σk .

Ïðèñâàèâàíèå σ : V → Σ. (Êàæäîé ïåðåìåííîé

ïðèñâîåíî îäíî èç âîçìîæíûõ çíà÷åíèé.)

Îãðàíè÷åíèå ce íà ðåáðå e = (v1, . . . , vk) âûïîëíåíî íà

ïðèñâàèâàíèè, åñëè

(σ(v1), . . . , σ(vk)) ∈ ce ⊆ Σk .

Íàéòè: ìàêñèìàëüíîå êîëè÷åñòâî îãðàíè÷åíèé, êîòîðûå

âûïîëíÿþòñÿ íà íåêîòîðîì ïðèñâàèâàíèè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 19 / 29

Page 43: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Îáùàÿ çàäà÷à âûïîëíèìîñòè

Îáùàÿ çàäà÷à âûïîëíèìîñòè íàçûâàåòñÿ CSP (constraint satisfaction

problem). Íóæíî âûïîëíèòü íàáîð óñëîâèé, ïåðåìåííûå íå îáÿçàòåëüíî

áóëåâû.

Çàäà÷à CSP

Äàíî: Ãèïåðãðàô îãðàíè÷åíèé G (V ,E ,Σ, c). Âåðøèíû ãðàôà

ïåðåìåííûå, ãèïåðð¼áðà óïîðÿäî÷åííûå ñïèñêè âåðøèí.

Íà êàæäîì ðåáðå e ∈ V k çàäàíî îãðàíè÷åíèå ce ⊆ Σk .

Ïðèñâàèâàíèå σ : V → Σ. (Êàæäîé ïåðåìåííîé

ïðèñâîåíî îäíî èç âîçìîæíûõ çíà÷åíèé.)

Îãðàíè÷åíèå ce íà ðåáðå e = (v1, . . . , vk) âûïîëíåíî íà

ïðèñâàèâàíèè, åñëè

(σ(v1), . . . , σ(vk)) ∈ ce ⊆ Σk .

Íàéòè: ìàêñèìàëüíîå êîëè÷åñòâî îãðàíè÷åíèé, êîòîðûå

âûïîëíÿþòñÿ íà íåêîòîðîì ïðèñâàèâàíèè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 19 / 29

Page 44: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Îáùàÿ çàäà÷à âûïîëíèìîñòè

Îáùàÿ çàäà÷à âûïîëíèìîñòè íàçûâàåòñÿ CSP (constraint satisfaction

problem). Íóæíî âûïîëíèòü íàáîð óñëîâèé, ïåðåìåííûå íå îáÿçàòåëüíî

áóëåâû.

Çàäà÷à CSP

Äàíî: Ãèïåðãðàô îãðàíè÷åíèé G (V ,E ,Σ, c). Âåðøèíû ãðàôà

ïåðåìåííûå, ãèïåðð¼áðà óïîðÿäî÷åííûå ñïèñêè âåðøèí.

Íà êàæäîì ðåáðå e ∈ V k çàäàíî îãðàíè÷åíèå ce ⊆ Σk .

Ïðèñâàèâàíèå σ : V → Σ. (Êàæäîé ïåðåìåííîé

ïðèñâîåíî îäíî èç âîçìîæíûõ çíà÷åíèé.)

Îãðàíè÷åíèå ce íà ðåáðå e = (v1, . . . , vk) âûïîëíåíî íà

ïðèñâàèâàíèè, åñëè

(σ(v1), . . . , σ(vk)) ∈ ce ⊆ Σk .

Íàéòè: ìàêñèìàëüíîå êîëè÷åñòâî îãðàíè÷åíèé, êîòîðûå

âûïîëíÿþòñÿ íà íåêîòîðîì ïðèñâàèâàíèè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 19 / 29

Page 45: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Çàäà÷à âûïîëíèìîñòè ñî ùåëüþ

Ïîòåðè íà ïðèñâàèâàíèè unsatσ(G ): äîëÿ îãðàíè÷åíèé, êîòîðûå

íàðóøàþòñÿ íà ïðèñâàèâàíèè σ. Ïîòåðè â çàäà÷å CSP ýòî

unsat(G ) = minσ unsatσ(G ).

Çàäà÷à MAX-kCSPq(a, b) ñî ùåëüþ

Äàíî: ãèïåðãðàô îãðàíè÷åíèé G (V ,E ,Σ, c), E ⊆ V k , |Σ| = q.

Èçâåñòíî: ëèáî unsat(G ) 6 1− a, ëèáî unsat(G ) > 1− b.

Âûÿñíèòü: êàêîé èç âàðèàíòîâ èìååò ìåñòî.

Çàìå÷àíèÿ1 Çàäà÷à MAX-kCSPq(1, < 1) ýòî îáû÷íàÿ çàäà÷à âûïîëíèìîñòè.

2 Âçâåøåííûé âàðèàíò îãðàíè÷åíèÿì ïðèñâîåíû âåñà, ïîòåðè

ñóììèðóþòñÿ ñ âåñàìè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 20 / 29

Page 46: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Çàäà÷à âûïîëíèìîñòè ñî ùåëüþ

Ïîòåðè íà ïðèñâàèâàíèè unsatσ(G ): äîëÿ îãðàíè÷åíèé, êîòîðûå

íàðóøàþòñÿ íà ïðèñâàèâàíèè σ. Ïîòåðè â çàäà÷å CSP ýòî

unsat(G ) = minσ unsatσ(G ).

Çàäà÷à MAX-kCSPq(a, b) ñî ùåëüþ

Äàíî: ãèïåðãðàô îãðàíè÷åíèé G (V ,E ,Σ, c), E ⊆ V k , |Σ| = q.

Èçâåñòíî: ëèáî unsat(G ) 6 1− a, ëèáî unsat(G ) > 1− b.

Âûÿñíèòü: êàêîé èç âàðèàíòîâ èìååò ìåñòî.

Çàìå÷àíèÿ1 Çàäà÷à MAX-kCSPq(1, < 1) ýòî îáû÷íàÿ çàäà÷à âûïîëíèìîñòè.

2 Âçâåøåííûé âàðèàíò îãðàíè÷åíèÿì ïðèñâîåíû âåñà, ïîòåðè

ñóììèðóþòñÿ ñ âåñàìè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 20 / 29

Page 47: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Çàäà÷à âûïîëíèìîñòè ñî ùåëüþ

Ïîòåðè íà ïðèñâàèâàíèè unsatσ(G ): äîëÿ îãðàíè÷åíèé, êîòîðûå

íàðóøàþòñÿ íà ïðèñâàèâàíèè σ. Ïîòåðè â çàäà÷å CSP ýòî

unsat(G ) = minσ unsatσ(G ).

Çàäà÷à MAX-kCSPq(a, b) ñî ùåëüþ

Äàíî: ãèïåðãðàô îãðàíè÷åíèé G (V ,E ,Σ, c), E ⊆ V k , |Σ| = q.

Èçâåñòíî: ëèáî unsat(G ) 6 1− a, ëèáî unsat(G ) > 1− b.

Âûÿñíèòü: êàêîé èç âàðèàíòîâ èìååò ìåñòî.

Çàìå÷àíèÿ1 Çàäà÷à MAX-kCSPq(1, < 1) ýòî îáû÷íàÿ çàäà÷à âûïîëíèìîñòè.

2 Âçâåøåííûé âàðèàíò îãðàíè÷åíèÿì ïðèñâîåíû âåñà, ïîòåðè

ñóììèðóþòñÿ ñ âåñàìè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 20 / 29

Page 48: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Çàäà÷à âûïîëíèìîñòè ñî ùåëüþ

Ïîòåðè íà ïðèñâàèâàíèè unsatσ(G ): äîëÿ îãðàíè÷åíèé, êîòîðûå

íàðóøàþòñÿ íà ïðèñâàèâàíèè σ. Ïîòåðè â çàäà÷å CSP ýòî

unsat(G ) = minσ unsatσ(G ).

Çàäà÷à MAX-kCSPq(a, b) ñî ùåëüþ

Äàíî: ãèïåðãðàô îãðàíè÷åíèé G (V ,E ,Σ, c), E ⊆ V k , |Σ| = q.

Èçâåñòíî: ëèáî unsat(G ) 6 1− a, ëèáî unsat(G ) > 1− b.

Âûÿñíèòü: êàêîé èç âàðèàíòîâ èìååò ìåñòî.

Çàìå÷àíèÿ1 Çàäà÷à MAX-kCSPq(1, < 1) ýòî îáû÷íàÿ çàäà÷à âûïîëíèìîñòè.

2 Âçâåøåííûé âàðèàíò îãðàíè÷åíèÿì ïðèñâîåíû âåñà, ïîòåðè

ñóììèðóþòñÿ ñ âåñàìè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 20 / 29

Page 49: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

×àñòíûå ñëó÷àè çàäà÷è MAX-kCSPq

Çàäà÷à MAX-3SAT (àðíîñòü 3, àëôàâèò ðàçìåðà 2)

Âåðøèíû ãèïåðãðàôà ïåðåìåííûå èç ÊÍÔ.

мáðà òðîéêè ïåðåìåííûõ, âõîäÿùèõ â äèçúþíêòû.

Îãðàíè÷åíèÿ: `1 ∨ `2 ∨ `3 = 1, ãäå `i ëèòåðàëû, âõîäÿùèå â äèçúþíêò.

Çàäà÷à 3-ðàñêðàñêà (àðíîñòü 2, àëôàâèò ðàçìåðà 3)

Ðåáðà ãðàôà ðåáðà ãðàôà.

Îãðàíè÷åíèÿ: öâåòà êîíöîâ ðåáðà ðàçëè÷íû (îäèíàêîâîå îãðàíè÷åíèå

äëÿ âñåõ ð¼áåð).

Çàäà÷à MAX-CUT (àðíîñòü 2, àëôàâèò ðàçìåðà 2)

Ïåðåìåííûå áóëåâû è îòâå÷àþò âåðøèíàì ãðàôà. Îãðàíè÷åíèÿ

îäèíàêîâû íà êàæäîì ðåáðå è èìåþò âèä íåðàâåíñòâà: σ(u) 6= σ(v).

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 21 / 29

Page 50: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

×àñòíûå ñëó÷àè çàäà÷è MAX-kCSPq

Çàäà÷à MAX-3SAT (àðíîñòü 3, àëôàâèò ðàçìåðà 2)

Âåðøèíû ãèïåðãðàôà ïåðåìåííûå èç ÊÍÔ.

мáðà òðîéêè ïåðåìåííûõ, âõîäÿùèõ â äèçúþíêòû.

Îãðàíè÷åíèÿ: `1 ∨ `2 ∨ `3 = 1, ãäå `i ëèòåðàëû, âõîäÿùèå â äèçúþíêò.

Çàäà÷à 3-ðàñêðàñêà (àðíîñòü 2, àëôàâèò ðàçìåðà 3)

Ðåáðà ãðàôà ðåáðà ãðàôà.

Îãðàíè÷åíèÿ: öâåòà êîíöîâ ðåáðà ðàçëè÷íû (îäèíàêîâîå îãðàíè÷åíèå

äëÿ âñåõ ð¼áåð).

Çàäà÷à MAX-CUT (àðíîñòü 2, àëôàâèò ðàçìåðà 2)

Ïåðåìåííûå áóëåâû è îòâå÷àþò âåðøèíàì ãðàôà. Îãðàíè÷åíèÿ

îäèíàêîâû íà êàæäîì ðåáðå è èìåþò âèä íåðàâåíñòâà: σ(u) 6= σ(v).

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 21 / 29

Page 51: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

×àñòíûå ñëó÷àè çàäà÷è MAX-kCSPq

Çàäà÷à MAX-3SAT (àðíîñòü 3, àëôàâèò ðàçìåðà 2)

Âåðøèíû ãèïåðãðàôà ïåðåìåííûå èç ÊÍÔ.

мáðà òðîéêè ïåðåìåííûõ, âõîäÿùèõ â äèçúþíêòû.

Îãðàíè÷åíèÿ: `1 ∨ `2 ∨ `3 = 1, ãäå `i ëèòåðàëû, âõîäÿùèå â äèçúþíêò.

Çàäà÷à 3-ðàñêðàñêà (àðíîñòü 2, àëôàâèò ðàçìåðà 3)

Ðåáðà ãðàôà ðåáðà ãðàôà.

Îãðàíè÷åíèÿ: öâåòà êîíöîâ ðåáðà ðàçëè÷íû (îäèíàêîâîå îãðàíè÷åíèå

äëÿ âñåõ ð¼áåð).

Çàäà÷à MAX-CUT (àðíîñòü 2, àëôàâèò ðàçìåðà 2)

Ïåðåìåííûå áóëåâû è îòâå÷àþò âåðøèíàì ãðàôà. Îãðàíè÷åíèÿ

îäèíàêîâû íà êàæäîì ðåáðå è èìåþò âèä íåðàâåíñòâà: σ(u) 6= σ(v).

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 21 / 29

Page 52: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ïðèìåðû ñâîäèìîñòåé

Ëåììà (óìåíüøåíèå àðíîñòè çà ñ÷¼ò óâåëè÷åíèÿ àëôàâèòà)

∀ε MAX-kCSPq(1, 1− ε) 6p MAX-2CSPqk (1, 1− ε/k).

Ñâîäèìîñòü: G (V ,E ,Σ, c) k-àðíûé ãèïåðãðàô ïðåîáðàçóåòñÿ â

îáû÷íûé äâóäîëüíûé ãðàô G ′ ñ àëôàâèòîì Σk .

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 22 / 29

Page 53: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ïðèìåðû ñâîäèìîñòåé

Ëåììà (óìåíüøåíèå àðíîñòè çà ñ÷¼ò óâåëè÷åíèÿ àëôàâèòà)

∀ε MAX-kCSPq(1, 1− ε) 6p MAX-2CSPqk (1, 1− ε/k).

Ñâîäèìîñòü: G (V ,E ,Σ, c) k-àðíûé ãèïåðãðàô ïðåîáðàçóåòñÿ â

îáû÷íûé äâóäîëüíûé ãðàô G ′ ñ àëôàâèòîì Σk .

Âåðøèíû G ′: âåðøèíû G (îäíà äîëÿ) è ð¼áðà G (äðóãàÿ äîëÿ).

Îáîçíà÷åíèå âåðøèí G ′: v , e.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 22 / 29

Page 54: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ïðèìåðû ñâîäèìîñòåé

Ëåììà (óìåíüøåíèå àðíîñòè çà ñ÷¼ò óâåëè÷åíèÿ àëôàâèòà)

∀ε MAX-kCSPq(1, 1− ε) 6p MAX-2CSPqk (1, 1− ε/k).

Ñâîäèìîñòü: G (V ,E ,Σ, c) k-àðíûé ãèïåðãðàô ïðåîáðàçóåòñÿ â

îáû÷íûé äâóäîëüíûé ãðàô G ′ ñ àëôàâèòîì Σk .

Âåðøèíû G ′: âåðøèíû G (îäíà äîëÿ) è ð¼áðà G (äðóãàÿ äîëÿ).

Îáîçíà÷åíèå âåðøèí G ′: v , e.мáðà G ′: ïàðû (v , e), v ∈ e â èñõîäíîì ãèïåðãðàôå G .

ev3

v2

v1

E(G) V (G)

v1v2v3

e ∈ E(G)

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 22 / 29

Page 55: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ïðèìåðû ñâîäèìîñòåé

Ëåììà (óìåíüøåíèå àðíîñòè çà ñ÷¼ò óâåëè÷åíèÿ àëôàâèòà)

∀ε MAX-kCSPq(1, 1− ε) 6p MAX-2CSPqk (1, 1− ε/k).

Ñâîäèìîñòü: G (V ,E ,Σ, c) k-àðíûé ãèïåðãðàô ïðåîáðàçóåòñÿ â

îáû÷íûé äâóäîëüíûé ãðàô G ′ ñ àëôàâèòîì Σk .

Îãðàíè÷åíèÿ â ãðàôå G ′. e = (v1, . . . , vk) ∈ E (G )

e vj

σ′(e) = (α1, . . . , αj , . . . , αk) σ′(vj) = (β1, . . . , βj , . . . , βk)

Îãðàíè÷åíèå íà ðåáðå (e, vj) âûïîëíåíî:

(α1, . . . , αj , . . . , αk) ∈ c(e) è αj = β1.

 âåðøèíàõ v âàæíà òîëüêî ïåðâàÿ êîìïîíåíòà ñèìâîëà σ′(v).

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 22 / 29

Page 56: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Êîððåêòíîñòü ñâîäèìîñòè, îöåíêà ùåëè

Óòâåðæäåíèå

unsat(G ) > unsat(G ′) > 1kunsat(G ).

Èç ïåðâîãî íåðàâåíñòâà: åñëè unsat(G ) = 0, òî unsat(G ′) = 0.

Èç âòîðîãî íåðàâåíñòâà: unsat(G ) > ε, òî unsat(G ′) > ε/k .Ïóñòü ïðèñâàèâàíèå σ îïòèìàëüíî äëÿ G .

1 Ïîëàãàåì σ′(v)(1) = σ(v), σ′(e) = (σ(v1), . . . , σ(vk)).

2 Îáùåå êîëè÷åñòâî íàðóøåíèé â σ′ â k ðàç áîëüøå, ÷åì â σ. Äîëÿòà æå. Ò.å. unsat(G ′) 6 unsatσ′(G ′) = unsatσ(G ) = unsat(G ).

Âòîðîå íåðàâåíñòâî. Ïóñòü σ′ îïòèìàëüíî äëÿ G ′.

1 Ïîëàãàåì σ(v) = σ′(v)(1).

2 Êàæäîå íàðóøåíèå â σ äà¼ò õîòÿ áû îäíî íàðóøåíèå â σ′.

3 À êîëè÷åñòâî ð¼áåð â G ′ â k ðàç áîëüøå. Çíà÷èò,

unsat(G ′) = unsatσ′(G ′) > 1kunsatσ(G ) > 1

kunsat(G ).

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 23 / 29

Page 57: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Êîððåêòíîñòü ñâîäèìîñòè, îöåíêà ùåëè

Óòâåðæäåíèå

unsat(G ) > unsat(G ′) > 1kunsat(G ).

Èç ïåðâîãî íåðàâåíñòâà: åñëè unsat(G ) = 0, òî unsat(G ′) = 0.

Èç âòîðîãî íåðàâåíñòâà: unsat(G ) > ε, òî unsat(G ′) > ε/k .Ïóñòü ïðèñâàèâàíèå σ îïòèìàëüíî äëÿ G .

1 Ïîëàãàåì σ′(v)(1) = σ(v), σ′(e) = (σ(v1), . . . , σ(vk)).

2 Îáùåå êîëè÷åñòâî íàðóøåíèé â σ′ â k ðàç áîëüøå, ÷åì â σ. Äîëÿòà æå. Ò.å. unsat(G ′) 6 unsatσ′(G ′) = unsatσ(G ) = unsat(G ).

Âòîðîå íåðàâåíñòâî. Ïóñòü σ′ îïòèìàëüíî äëÿ G ′.

1 Ïîëàãàåì σ(v) = σ′(v)(1).

2 Êàæäîå íàðóøåíèå â σ äà¼ò õîòÿ áû îäíî íàðóøåíèå â σ′.

3 À êîëè÷åñòâî ð¼áåð â G ′ â k ðàç áîëüøå. Çíà÷èò,

unsat(G ′) = unsatσ′(G ′) > 1kunsatσ(G ) > 1

kunsat(G ).

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 23 / 29

Page 58: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Êîððåêòíîñòü ñâîäèìîñòè, îöåíêà ùåëè

Óòâåðæäåíèå

unsat(G ) > unsat(G ′) > 1kunsat(G ).

Èç ïåðâîãî íåðàâåíñòâà: åñëè unsat(G ) = 0, òî unsat(G ′) = 0.

Èç âòîðîãî íåðàâåíñòâà: unsat(G ) > ε, òî unsat(G ′) > ε/k .Ïóñòü ïðèñâàèâàíèå σ îïòèìàëüíî äëÿ G .

1 Ïîëàãàåì σ′(v)(1) = σ(v), σ′(e) = (σ(v1), . . . , σ(vk)).

2 Îáùåå êîëè÷åñòâî íàðóøåíèé â σ′ â k ðàç áîëüøå, ÷åì â σ. Äîëÿòà æå. Ò.å. unsat(G ′) 6 unsatσ′(G ′) = unsatσ(G ) = unsat(G ).

Âòîðîå íåðàâåíñòâî. Ïóñòü σ′ îïòèìàëüíî äëÿ G ′.

1 Ïîëàãàåì σ(v) = σ′(v)(1).

2 Êàæäîå íàðóøåíèå â σ äà¼ò õîòÿ áû îäíî íàðóøåíèå â σ′.

3 À êîëè÷åñòâî ð¼áåð â G ′ â k ðàç áîëüøå. Çíà÷èò,

unsat(G ′) = unsatσ′(G ′) > 1kunsatσ(G ) > 1

kunsat(G ).

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 23 / 29

Page 59: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Êîððåêòíîñòü ñâîäèìîñòè, îöåíêà ùåëè

Óòâåðæäåíèå

unsat(G ) > unsat(G ′) > 1kunsat(G ).

Èç ïåðâîãî íåðàâåíñòâà: åñëè unsat(G ) = 0, òî unsat(G ′) = 0.

Èç âòîðîãî íåðàâåíñòâà: unsat(G ) > ε, òî unsat(G ′) > ε/k .Ïóñòü ïðèñâàèâàíèå σ îïòèìàëüíî äëÿ G .

1 Ïîëàãàåì σ′(v)(1) = σ(v), σ′(e) = (σ(v1), . . . , σ(vk)).

2 Îáùåå êîëè÷åñòâî íàðóøåíèé â σ′ â k ðàç áîëüøå, ÷åì â σ. Äîëÿòà æå. Ò.å. unsat(G ′) 6 unsatσ′(G ′) = unsatσ(G ) = unsat(G ).

Âòîðîå íåðàâåíñòâî. Ïóñòü σ′ îïòèìàëüíî äëÿ G ′.

1 Ïîëàãàåì σ(v) = σ′(v)(1).

2 Êàæäîå íàðóøåíèå â σ äà¼ò õîòÿ áû îäíî íàðóøåíèå â σ′.

3 À êîëè÷åñòâî ð¼áåð â G ′ â k ðàç áîëüøå. Çíà÷èò,

unsat(G ′) = unsatσ′(G ′) > 1kunsatσ(G ) > 1

kunsat(G ).

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 23 / 29

Page 60: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Êîððåêòíîñòü ñâîäèìîñòè, îöåíêà ùåëè

Óòâåðæäåíèå

unsat(G ) > unsat(G ′) > 1kunsat(G ).

Èç ïåðâîãî íåðàâåíñòâà: åñëè unsat(G ) = 0, òî unsat(G ′) = 0.

Èç âòîðîãî íåðàâåíñòâà: unsat(G ) > ε, òî unsat(G ′) > ε/k .Ïóñòü ïðèñâàèâàíèå σ îïòèìàëüíî äëÿ G .

1 Ïîëàãàåì σ′(v)(1) = σ(v), σ′(e) = (σ(v1), . . . , σ(vk)).

2 Îáùåå êîëè÷åñòâî íàðóøåíèé â σ′ â k ðàç áîëüøå, ÷åì â σ. Äîëÿòà æå. Ò.å. unsat(G ′) 6 unsatσ′(G ′) = unsatσ(G ) = unsat(G ).

Âòîðîå íåðàâåíñòâî. Ïóñòü σ′ îïòèìàëüíî äëÿ G ′.

1 Ïîëàãàåì σ(v) = σ′(v)(1).

2 Êàæäîå íàðóøåíèå â σ äà¼ò õîòÿ áû îäíî íàðóøåíèå â σ′.

3 À êîëè÷åñòâî ð¼áåð â G ′ â k ðàç áîëüøå. Çíà÷èò,

unsat(G ′) = unsatσ′(G ′) > 1kunsatσ(G ) > 1

kunsat(G ).

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 23 / 29

Page 61: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Êîððåêòíîñòü ñâîäèìîñòè, îöåíêà ùåëè

Óòâåðæäåíèå

unsat(G ) > unsat(G ′) > 1kunsat(G ).

Èç ïåðâîãî íåðàâåíñòâà: åñëè unsat(G ) = 0, òî unsat(G ′) = 0.

Èç âòîðîãî íåðàâåíñòâà: unsat(G ) > ε, òî unsat(G ′) > ε/k .Ïóñòü ïðèñâàèâàíèå σ îïòèìàëüíî äëÿ G .

1 Ïîëàãàåì σ′(v)(1) = σ(v), σ′(e) = (σ(v1), . . . , σ(vk)).

2 Îáùåå êîëè÷åñòâî íàðóøåíèé â σ′ â k ðàç áîëüøå, ÷åì â σ. Äîëÿòà æå. Ò.å. unsat(G ′) 6 unsatσ′(G ′) = unsatσ(G ) = unsat(G ).

Âòîðîå íåðàâåíñòâî. Ïóñòü σ′ îïòèìàëüíî äëÿ G ′.

1 Ïîëàãàåì σ(v) = σ′(v)(1).

2 Êàæäîå íàðóøåíèå â σ äà¼ò õîòÿ áû îäíî íàðóøåíèå â σ′.

3 À êîëè÷åñòâî ð¼áåð â G ′ â k ðàç áîëüøå. Çíà÷èò,

unsat(G ′) = unsatσ′(G ′) > 1kunsatσ(G ) > 1

kunsat(G ).

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 23 / 29

Page 62: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

2-âûïîëíèìîñòü ê MAX-3SAT

Ëåììà (ðåäóêöèÿ àëôàâèòà)

∀α∃ε MAX-2CSPq(1, 1− α) 6p MAX-3SAT(1, 1− ε).

Çàêîäèðóåì ñèìâîëû q-è÷íîãî àëôàâèòà ñ ïîìîùüþ k äâîè÷íûõ áèòîâ

è ðàññìîòðèì áóëåâû ôóíêöèè fe(x1, . . . , x2k): fe(x) = 1 òîãäà è òîëüêî

òîãäà, êîãäà (x1, . . . , xk) è (xk+1, . . . , x2k) êîäèðóþò ñèìâîëû àëôàâèòà

σ1 è σ2 è ce(σ1, σ2) âûïîëíÿåòñÿ.Ïðåäñòàâèì fe êàê ñîâåðøåííóþ ÊÍÔ Ce , êàæäûé äèçúþíêò êîòîðîé

ñîäåðæèò 2k ëèòåðàëîâ. Îáùåå ÷èñëî äèçúþíêòîâ 6 22k .

Íàïîìèíàíèå: â ñîâåðøåííîé ÊÍÔ êàæäîìó íóëþ a ôóíêöèè fîòâå÷àåò äèçúþíêò Da, êîòîðûé îáðàùàåòñÿ â 0 òîëüêî â òî÷êå a.

Ïðèìåð: a = (1, 0, 0, 1), Da = ¬x1 ∨ x2 ∨ x3 ∨ ¬x4.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 24 / 29

Page 63: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

2-âûïîëíèìîñòü ê MAX-3SAT

Ëåììà (ðåäóêöèÿ àëôàâèòà)

∀α∃ε MAX-2CSPq(1, 1− α) 6p MAX-3SAT(1, 1− ε).

Çàêîäèðóåì ñèìâîëû q-è÷íîãî àëôàâèòà ñ ïîìîùüþ k äâîè÷íûõ áèòîâ

è ðàññìîòðèì áóëåâû ôóíêöèè fe(x1, . . . , x2k): fe(x) = 1 òîãäà è òîëüêî

òîãäà, êîãäà (x1, . . . , xk) è (xk+1, . . . , x2k) êîäèðóþò ñèìâîëû àëôàâèòà

σ1 è σ2 è ce(σ1, σ2) âûïîëíÿåòñÿ.Ïðåäñòàâèì fe êàê ñîâåðøåííóþ ÊÍÔ Ce , êàæäûé äèçúþíêò êîòîðîé

ñîäåðæèò 2k ëèòåðàëîâ. Îáùåå ÷èñëî äèçúþíêòîâ 6 22k .

Íàïîìèíàíèå: â ñîâåðøåííîé ÊÍÔ êàæäîìó íóëþ a ôóíêöèè fîòâå÷àåò äèçúþíêò Da, êîòîðûé îáðàùàåòñÿ â 0 òîëüêî â òî÷êå a.

Ïðèìåð: a = (1, 0, 0, 1), Da = ¬x1 ∨ x2 ∨ x3 ∨ ¬x4.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 24 / 29

Page 64: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

2-âûïîëíèìîñòü ê MAX-3SAT

Ëåììà (ðåäóêöèÿ àëôàâèòà)

∀α∃ε MAX-2CSPq(1, 1− α) 6p MAX-3SAT(1, 1− ε).

Çàêîäèðóåì ñèìâîëû q-è÷íîãî àëôàâèòà ñ ïîìîùüþ k äâîè÷íûõ áèòîâ

è ðàññìîòðèì áóëåâû ôóíêöèè fe(x1, . . . , x2k): fe(x) = 1 òîãäà è òîëüêî

òîãäà, êîãäà (x1, . . . , xk) è (xk+1, . . . , x2k) êîäèðóþò ñèìâîëû àëôàâèòà

σ1 è σ2 è ce(σ1, σ2) âûïîëíÿåòñÿ.Ïðåäñòàâèì fe êàê ñîâåðøåííóþ ÊÍÔ Ce , êàæäûé äèçúþíêò êîòîðîé

ñîäåðæèò 2k ëèòåðàëîâ. Îáùåå ÷èñëî äèçúþíêòîâ 6 22k .

Íàïîìèíàíèå: â ñîâåðøåííîé ÊÍÔ êàæäîìó íóëþ a ôóíêöèè fîòâå÷àåò äèçúþíêò Da, êîòîðûé îáðàùàåòñÿ â 0 òîëüêî â òî÷êå a.

Ïðèìåð: a = (1, 0, 0, 1), Da = ¬x1 ∨ x2 ∨ x3 ∨ ¬x4.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 24 / 29

Page 65: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

2-âûïîëíèìîñòü ê MAX-3SAT

Ëåììà (ðåäóêöèÿ àëôàâèòà)

∀α∃ε MAX-2CSPq(1, 1− α) 6p MAX-3SAT(1, 1− ε).

Çàêîäèðóåì ñèìâîëû q-è÷íîãî àëôàâèòà ñ ïîìîùüþ k äâîè÷íûõ áèòîâ

è ðàññìîòðèì áóëåâû ôóíêöèè fe(x1, . . . , x2k): fe(x) = 1 òîãäà è òîëüêî

òîãäà, êîãäà (x1, . . . , xk) è (xk+1, . . . , x2k) êîäèðóþò ñèìâîëû àëôàâèòà

σ1 è σ2 è ce(σ1, σ2) âûïîëíÿåòñÿ.Ïðåäñòàâèì fe êàê ñîâåðøåííóþ ÊÍÔ Ce , êàæäûé äèçúþíêò êîòîðîé

ñîäåðæèò 2k ëèòåðàëîâ. Îáùåå ÷èñëî äèçúþíêòîâ 6 22k .

Íàïîìèíàíèå: â ñîâåðøåííîé ÊÍÔ êàæäîìó íóëþ a ôóíêöèè fîòâå÷àåò äèçúþíêò Da, êîòîðûé îáðàùàåòñÿ â 0 òîëüêî â òî÷êå a.

Ïðèìåð: a = (1, 0, 0, 1), Da = ¬x1 ∨ x2 ∨ x3 ∨ ¬x4.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 24 / 29

Page 66: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ïðîäîëæåíèå äîêàçàòåëüñòâà

Òåïåðü ïîñòðîèì 3-ÊÍÔ Te , çàìåíÿÿ êàæäûé äèçúþíêò

`1 ∨ `2 ∨ · · · ∨ `2k

íà 3-ÊÍÔ

(x ∨ `1 ∨ t1)(¬t1 ∨ `2 ∨ t2) . . . (¬tk−1 ∨ `k ∨ x)∧α,β

(¬x ∨ yα ∨ zβ)

ñî âñïîìîãàòåëüíûìè ïåðåìåííûìè ti , x , y , z (ñâîè äëÿ êàæäîãî

äèçúþíêòà). Êîëè÷åñòâî äèçúþíêòîâ â Te íå áîëüøå (2k + 4)22k .

Íàáëþäåíèå

Âûïîëíèìîñòü Ce ðàâíîñèëüíà âûïîëíèìîñòè Te . (Ïîñëåäíèå

äèçúþíêòû âî âòîðîé ôîðìóëå âûíóæäàþò x = 0.)

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 25 / 29

Page 67: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Ïðîäîëæåíèå äîêàçàòåëüñòâà

Òåïåðü ïîñòðîèì 3-ÊÍÔ Te , çàìåíÿÿ êàæäûé äèçúþíêò

`1 ∨ `2 ∨ · · · ∨ `2k

íà 3-ÊÍÔ

(x ∨ `1 ∨ t1)(¬t1 ∨ `2 ∨ t2) . . . (¬tk−1 ∨ `k ∨ x)∧α,β

(¬x ∨ yα ∨ zβ)

ñî âñïîìîãàòåëüíûìè ïåðåìåííûìè ti , x , y , z (ñâîè äëÿ êàæäîãî

äèçúþíêòà). Êîëè÷åñòâî äèçúþíêòîâ â Te íå áîëüøå (2k + 4)22k .

Íàáëþäåíèå

Âûïîëíèìîñòü Ce ðàâíîñèëüíà âûïîëíèìîñòè Te . (Ïîñëåäíèå

äèçúþíêòû âî âòîðîé ôîðìóëå âûíóæäàþò x = 0.)

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 25 / 29

Page 68: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Çàâåðøåíèå äîêàçàòåëüñòâà

Ñâîäèìîñòü: G 7→ T =∧

e Te .

Êîððåêòíîñòü ñâîäèìîñòè: unsat(G ) = 0

 ãðàôå îãðàíè÷åíèé G âñå îãðàíè÷åíèÿ âûïîëíÿþòñÿ íà σ.Êîäû çíà÷åíèé ïåðåìåííûõ â σ è ïîäõîäÿùèå çíà÷åíèÿ

âñïîìîãàòåëüíûõ ïåðåìåííûõ âûïîëíÿò âñå äèçúþíêòû T .

Êîððåêòíîñòü ñâîäèìîñòè: unsat(G ) > α

Ëþáîå ïðèñâàèâàíèå â ãðàôå G íàðóøàåò äîëþ > α îãðàíè÷åíèé.

Òîãäà ëþáîå ïðèñâàèâàíèå áóëåâûõ ïåðåìåííûõ, âõîäÿùèõ â ÊÍÔ T ,

ñäåëàåò õîòÿ áû äîëþ

ε =α

(2k + 4)22k

äèçúþíêòîâ ëîæíûìè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 26 / 29

Page 69: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Çàâåðøåíèå äîêàçàòåëüñòâà

Ñâîäèìîñòü: G 7→ T =∧

e Te .

Êîððåêòíîñòü ñâîäèìîñòè: unsat(G ) = 0

 ãðàôå îãðàíè÷åíèé G âñå îãðàíè÷åíèÿ âûïîëíÿþòñÿ íà σ.Êîäû çíà÷åíèé ïåðåìåííûõ â σ è ïîäõîäÿùèå çíà÷åíèÿ

âñïîìîãàòåëüíûõ ïåðåìåííûõ âûïîëíÿò âñå äèçúþíêòû T .

Êîððåêòíîñòü ñâîäèìîñòè: unsat(G ) > α

Ëþáîå ïðèñâàèâàíèå â ãðàôå G íàðóøàåò äîëþ > α îãðàíè÷åíèé.

Òîãäà ëþáîå ïðèñâàèâàíèå áóëåâûõ ïåðåìåííûõ, âõîäÿùèõ â ÊÍÔ T ,

ñäåëàåò õîòÿ áû äîëþ

ε =α

(2k + 4)22k

äèçúþíêòîâ ëîæíûìè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 26 / 29

Page 70: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Çàâåðøåíèå äîêàçàòåëüñòâà

Ñâîäèìîñòü: G 7→ T =∧

e Te .

Êîððåêòíîñòü ñâîäèìîñòè: unsat(G ) = 0

 ãðàôå îãðàíè÷åíèé G âñå îãðàíè÷åíèÿ âûïîëíÿþòñÿ íà σ.Êîäû çíà÷åíèé ïåðåìåííûõ â σ è ïîäõîäÿùèå çíà÷åíèÿ

âñïîìîãàòåëüíûõ ïåðåìåííûõ âûïîëíÿò âñå äèçúþíêòû T .

Êîððåêòíîñòü ñâîäèìîñòè: unsat(G ) > α

Ëþáîå ïðèñâàèâàíèå â ãðàôå G íàðóøàåò äîëþ > α îãðàíè÷åíèé.

Òîãäà ëþáîå ïðèñâàèâàíèå áóëåâûõ ïåðåìåííûõ, âõîäÿùèõ â ÊÍÔ T ,

ñäåëàåò õîòÿ áû äîëþ

ε =α

(2k + 4)22k

äèçúþíêòîâ ëîæíûìè.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 26 / 29

Page 71: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

2-âûïîëíèìîñòü ñ ôóíêöèîíàëüíûìè îãðàíè÷åíèÿìè

Çàäà÷à MAX-LCk (Label Cover)

Äàíî: äâóäîëüíûé ãðàô îãðàíè÷åíèé; âåðøèíû â äîëå V1 èìåþò

îäèíàêîâóþ ñòåïåíü; îãðàíè÷åíèÿ èìåþò âèä ôóíêöèé

(projection property) äëÿ êàæäîãî ðåáðà e = (v1, v2)çàäàíà ôóíêöèÿ fe : Σ→ Σ, îãðàíè÷åíèå íà ðåáðåâûïîëíåíî ïðèñâàèâàíèåì σ, åñëè fe(σ(v1)) = σ(v2).Ðàçìåð àëôàâèòà ðàâåí k .

Íàéòè: ïðèñâàèâàíèå, âûïîëíÿþùåå ìàêñèìàëüíîå êîëè÷åñòâî

îãðàíè÷åíèé.

Ëåììà (ïåðåõîä ê ôóíêöèîíàëüíûì îãðàíè÷åíèÿì)

MAX-3SAT(1, 1− ε) 6p MAX-LC7(1, 1− ε/3).

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 27 / 29

Page 72: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

2-âûïîëíèìîñòü ñ ôóíêöèîíàëüíûìè îãðàíè÷åíèÿìè

Çàäà÷à MAX-LCk (Label Cover)

Äàíî: äâóäîëüíûé ãðàô îãðàíè÷åíèé; âåðøèíû â äîëå V1 èìåþò

îäèíàêîâóþ ñòåïåíü; îãðàíè÷åíèÿ èìåþò âèä ôóíêöèé

(projection property) äëÿ êàæäîãî ðåáðà e = (v1, v2)çàäàíà ôóíêöèÿ fe : Σ→ Σ, îãðàíè÷åíèå íà ðåáðåâûïîëíåíî ïðèñâàèâàíèåì σ, åñëè fe(σ(v1)) = σ(v2).Ðàçìåð àëôàâèòà ðàâåí k .

Íàéòè: ïðèñâàèâàíèå, âûïîëíÿþùåå ìàêñèìàëüíîå êîëè÷åñòâî

îãðàíè÷åíèé.

Ëåììà (ïåðåõîä ê ôóíêöèîíàëüíûì îãðàíè÷åíèÿì)

MAX-3SAT(1, 1− ε) 6p MAX-LC7(1, 1− ε/3).

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 27 / 29

Page 73: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Äîêàçàòåëüñòâî ëåììû: îïèñàíèå ñâîäèìîñòè

Ïî 3-ÊÍÔ C = `1 ∨ · · · ∨ `m îò n ïåðåìåííûõ x1, . . . , xn ñòðîèì

äâóäîëüíûé ãðàô G , îäíó äîëþ êîòîðîãî îáðàçóþò äèçúþíêòû, à

äðóãóþ ïåðåìåííûå.

¬x1 ∨ x2 ∨ x7

x1

x2

x7

Σ = 0, 13 \ (0, 0, 0), |Σ| = 7.

 ëåâîé äîëå: çíà÷åíèÿ 3 ëèòåðàëîâ.

 ïðàâîé äîëå: çíà÷åíèå ïåðåìåííîé

(êîäèðóåòñÿ äâóìÿ ñèìâîëàìè èç Σ).Îãðàíè÷åíèå âûïîëíåíî, åñëè â êîäàõ

çíà÷åíèå âåðøèíû-ïåðåìåííîé â ïðà-

âîé äîëå ñîîòâåòñòâóåò çíà÷åíèþ ëèòå-

ðàëà â ëåâîé äîëå.

Ïðèìåð: ñëåâà (0, 1, 0), ñïðàâà â x2: êîä0. Îãðàíè÷åíèå íàðóøåíî.

Ïðèìåð: ñëåâà (1, 0, 0), ñïðàâà â x7: êîä0. Îãðàíè÷åíèå âûïîëíåíî.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 28 / 29

Page 74: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Äîêàçàòåëüñòâî ëåììû: îïèñàíèå ñâîäèìîñòè

Ïî 3-ÊÍÔ C = `1 ∨ · · · ∨ `m îò n ïåðåìåííûõ x1, . . . , xn ñòðîèì

äâóäîëüíûé ãðàô G , îäíó äîëþ êîòîðîãî îáðàçóþò äèçúþíêòû, à

äðóãóþ ïåðåìåííûå.

¬x1 ∨ x2 ∨ x7

x1

x2

x7

Σ = 0, 13 \ (0, 0, 0), |Σ| = 7.

 ëåâîé äîëå: çíà÷åíèÿ 3 ëèòåðàëîâ.

 ïðàâîé äîëå: çíà÷åíèå ïåðåìåííîé

(êîäèðóåòñÿ äâóìÿ ñèìâîëàìè èç Σ).Îãðàíè÷åíèå âûïîëíåíî, åñëè â êîäàõ

çíà÷åíèå âåðøèíû-ïåðåìåííîé â ïðà-

âîé äîëå ñîîòâåòñòâóåò çíà÷åíèþ ëèòå-

ðàëà â ëåâîé äîëå.

Ïðèìåð: ñëåâà (0, 1, 0), ñïðàâà â x2: êîä0. Îãðàíè÷åíèå íàðóøåíî.

Ïðèìåð: ñëåâà (1, 0, 0), ñïðàâà â x7: êîä0. Îãðàíè÷åíèå âûïîëíåíî.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 28 / 29

Page 75: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Äîêàçàòåëüñòâî ëåììû: îïèñàíèå ñâîäèìîñòè

Ïî 3-ÊÍÔ C = `1 ∨ · · · ∨ `m îò n ïåðåìåííûõ x1, . . . , xn ñòðîèì

äâóäîëüíûé ãðàô G , îäíó äîëþ êîòîðîãî îáðàçóþò äèçúþíêòû, à

äðóãóþ ïåðåìåííûå.

¬x1 ∨ x2 ∨ x7

x1

x2

x7

Σ = 0, 13 \ (0, 0, 0), |Σ| = 7.

 ëåâîé äîëå: çíà÷åíèÿ 3 ëèòåðàëîâ.

 ïðàâîé äîëå: çíà÷åíèå ïåðåìåííîé

(êîäèðóåòñÿ äâóìÿ ñèìâîëàìè èç Σ).Îãðàíè÷åíèå âûïîëíåíî, åñëè â êîäàõ

çíà÷åíèå âåðøèíû-ïåðåìåííîé â ïðà-

âîé äîëå ñîîòâåòñòâóåò çíà÷åíèþ ëèòå-

ðàëà â ëåâîé äîëå.

Ïðèìåð: ñëåâà (0, 1, 0), ñïðàâà â x2: êîä0. Îãðàíè÷åíèå íàðóøåíî.

Ïðèìåð: ñëåâà (1, 0, 0), ñïðàâà â x7: êîä0. Îãðàíè÷åíèå âûïîëíåíî.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 28 / 29

Page 76: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Äîêàçàòåëüñòâî ëåììû: îïèñàíèå ñâîäèìîñòè

Ïî 3-ÊÍÔ C = `1 ∨ · · · ∨ `m îò n ïåðåìåííûõ x1, . . . , xn ñòðîèì

äâóäîëüíûé ãðàô G , îäíó äîëþ êîòîðîãî îáðàçóþò äèçúþíêòû, à

äðóãóþ ïåðåìåííûå.

¬x1 ∨ x2 ∨ x7

x1

x2

x7

Σ = 0, 13 \ (0, 0, 0), |Σ| = 7.

 ëåâîé äîëå: çíà÷åíèÿ 3 ëèòåðàëîâ.

 ïðàâîé äîëå: çíà÷åíèå ïåðåìåííîé

(êîäèðóåòñÿ äâóìÿ ñèìâîëàìè èç Σ).Îãðàíè÷åíèå âûïîëíåíî, åñëè â êîäàõ

çíà÷åíèå âåðøèíû-ïåðåìåííîé â ïðà-

âîé äîëå ñîîòâåòñòâóåò çíà÷åíèþ ëèòå-

ðàëà â ëåâîé äîëå.

Ïðèìåð: ñëåâà (0, 1, 0), ñïðàâà â x2: êîä0. Îãðàíè÷åíèå íàðóøåíî.

Ïðèìåð: ñëåâà (1, 0, 0), ñïðàâà â x7: êîä0. Îãðàíè÷åíèå âûïîëíåíî.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 28 / 29

Page 77: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Äîêàçàòåëüñòâî ëåììû: êîððåêòíîñòü ñâîäèìîñòè

1 Ïóñòü unsata(C ) = 0 (âñå äèçúþíêòû èñòèííûå). Òîãäà

unsatσ(G ) = 0, ãäå σ êîäèðóåò çíà÷åíèÿ ïåðåìåííûõ è òðîåê

ïåðåìåííûõ, âõîäÿùèõ â äèçúþíêòû, â ñîîòâåòñòâèè ñ a.

2 Ïóñòü unsat(C ) > ε. Ïðè ëþáîì σ äëÿ G â > ε äîëå âåðøèíëåâîé äîëè íàðóøàåòñÿ õîòÿ áû îäíî èç òð¼õ îãðàíè÷åíèé.

Çíà÷èò, unsat(G ) > ε/3.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 29 / 29

Page 78: Приближенное решение задач комбинаторной оптимизации: алгоритмы и трудность, осень 2016: Трудность

Äîêàçàòåëüñòâî ëåììû: êîððåêòíîñòü ñâîäèìîñòè

1 Ïóñòü unsata(C ) = 0 (âñå äèçúþíêòû èñòèííûå). Òîãäà

unsatσ(G ) = 0, ãäå σ êîäèðóåò çíà÷åíèÿ ïåðåìåííûõ è òðîåê

ïåðåìåííûõ, âõîäÿùèõ â äèçúþíêòû, â ñîîòâåòñòâèè ñ a.

2 Ïóñòü unsat(C ) > ε. Ïðè ëþáîì σ äëÿ G â > ε äîëå âåðøèíëåâîé äîëè íàðóøàåòñÿ õîòÿ áû îäíî èç òð¼õ îãðàíè÷åíèé.

Çíà÷èò, unsat(G ) > ε/3.

Ì. Âÿëûé (ÂÖ ÔÈÖ ÈÓ ÐÀÍ) Ëåêöèÿ 6: òðóäíîñòü ïðèáëèæåíèÿ ÑÏá, CSclub, 2016 29 / 29