Approximate Constraint Satisfaction
Total Page:16
File Type:pdf, Size:1020Kb
Approximate Constraint Satisfaction Lars Engebretsen Stockholm 2000 Doctoral Dissertation Royal Institute of Technology Department of Numerical Analysis and Computer Science Akademisk avhandling som med tillst˚and av Kungl Tekniska H¨ogskolan framl¨agges till offentlig granskning f¨or avl¨aggande av teknologie doktorsexamen tisdagen den 25 april 2000 kl 10.00 i Kollegiesalen, Administrationsbyggnaden, Kungl Tekniska H¨ogskolan, Valhallav¨agen 79, Stockholm. ISBN 91-7170-545-7 TRITA-NA-0008 ISSN 0348-2952 ISRN KTH/NA/R--00/08--SE c Lars Engebretsen, April 2000 H¨ogskoletryckeriet, Stockholm 2000 Abstract In this thesis we study optimization versions of NP-complete constraint satisfaction problems. An example of such a problem is the Maximum Satisfiability problem. An instance of this problem consists of clauses formed by Boolean variables and the goal is to find an assignment to the variables that satisfies as many clauses as pos- sible. Since it is NP-complete to decide if all clauses are simultaneously satisfiable, the Maximum Satisfiability problem cannot be solved exactly in polynomial time unless P = NP. However, it may be possible to solve the problem approximately, in the sense that the number of satisfied clauses is at most some factor c from the optimum. Such an algorithm is called a c-approximation algorithm. The foundation of the results presented in this thesis is the approximability of several constraint satisfaction problems. We provide both upper and lower bounds on the approx- imability. A proof of an upper bound is usually a polynomial time c-approximation algorithm for some c, while a proof of a lower bound usually shows that it is NP- hard to approximate the problem within some c. We also use hardness results for constraint satisfaction problems to prove hardness results for other optimization problems. As for upper bounds, we use a combination of semidefinite programming and randomized rounding to construct a randomized 1.380-approximation algorithm for the Set Splitting and Not-All-Equal Satisfiability problems and a randomized (p−Θ(p−12))-approximation algorithm for systems of linear equations mod p with at most two unknowns in each equation. Using randomized sampling, we construct a randomized polynomial time approximation scheme for dense instances of arbitrary k-ary constraint satisfaction problems. With a combination of PCP techniques and representation theory for Abelian groups, we prove that it is NP-hard to approximate√ a k-ary constraint satisfaction problem over sets of cardinality D within Dk−2 k+1+1 − , for any constant >0. As a comparison, the best currently known algorithm approximates the problem within Dk−1. Using a reduction from systems of linear equations mod 2 with exactly three occurrences of each variable, we prove that it is NP-hard to approximate the Asym- metric Traveling Salesman Problem with distances one and two within 2805/2804− for every constant >0. For the special case where the distance function is con- strained to be symmetric, we prove a lower bound of 5381/5380− for every constant >0. Finally, we improve earlier reductions and combine the improved reduction with a recent PCP characterization of NP to prove that the size of a maximum clique in a graph√ with n vertices cannot be approximated in polynomial time within 3/2 n1−O(1/ log log n) unless NP ⊆ ZPTIME(2O(log n(log log n) )). ISBN 91-7170-545-7 • TRITA-NA-0008 • ISSN 0348-2952 • ISRN KTH/NA/R--00/08--SE iii iv Sammanfattning Denna doktorsavhandling – vars titel kan ¨overs¨attas med Approximativ l¨osning av villkorsproblem – behandlar optimeringsvarianter av olika typer av villkorsproblem. En instans av ett s˚adant problem ¨ar en m¨angd villkor ¨over diskreta variabler och m˚alet ¨ar att konstruera en tilldelning till variablerna p˚aetts˚adant s¨att att s˚am˚anga villkor som m¨ojligt ¨ar uppfyllda. Ett exempel ¨ar n¨ar variablerna ¨ar booleska och villkoren ¨ar skrivna p˚a konjunktiv normalform. Villkoren kan d˚aseutp˚af¨oljande s¨att: x ∨ y ∨ z, x ∨ y ∨ z, x ∨ y ∨ z, x ∨ y ∨ z, x ∨ y ∨ z. Eftersom problemet att avg¨ora om alla villkoren ¨ar satisfierbara samtidigt ¨ar NP- fullst¨andigt ¨ar det osannolikt att det finns en algoritm som l¨oser optimeringsva- rianten – att uppfylla s˚am˚anga villkor som m¨ojligt – av problemet i polynomisk tid. I sj¨alva verket ¨ar ovanst˚aende, och m˚anga liknande, villkorsproblem l¨osbara i polynomisk tid endast om P = NP, vilket g¨or det intressant att unders¨oka om det ¨ar m¨ojligt att l¨osa optimeringsproblemet approximativt i polynomisk tid. En ap- proximativ l¨osning ¨ar en variabeltilldelning som uppfyller ˚atminstone en viss andel av det optimala antalet uppfyllda villkor. Inom detta omr˚ade ¨ar det m¨ojligt att visa tv˚a typer av resultat. F¨or det f¨orsta att det g˚ar att approximera ett problem inom n˚agon viss faktor. Ett bevis f¨or ett s˚adant resultat best˚ar i princip av en c-approximationsalgoritm – en algoritm som ber¨aknar en l¨osning vars vikt ¨ar h¨ogst en faktor c fr˚an den optimala vikten. Ju l¨agre c desto b¨attre; om c =1l¨oser algoritmen problemet exakt. Den andra typen av resultat ¨ar att det ¨ar sv˚art att approximera ett problem inom en viss faktor. Ett bevis f¨or ett s˚adant resultat visar normalt att det ¨ar NP-sv˚art att approximera problemet inom n˚agot visst c. Avhandlingen best˚ar av tv˚a inledande kapitel, sex kapitel med redog¨orelser f¨or viktiga tidigare resultat inom omr˚adet och sex kapitel med nya resultat. Inledning- en beskriver en till¨ampning – att hitta det tidsoptimala s¨attet att borra de h˚al som beh¨ovs i de l¨angsg˚aende balkarna i en lastbil. D¨arefter definieras de problem som behandlas i avhandlingen informellt och en redog¨orelse f¨or avhandlingens uppbygg- nad ges. Det andra inledande kapitlet inneh˚aller formella definitioner av de problem och komplexitetsklasser som anv¨ands i resten av avhandlingen. De sex bakgrundskapitlen tar upp tekniker som anv¨ands f¨or att visa de nya re- sultaten i avhandlingen. Kapitel 3 beskriver n˚agra sannolikhetsteoretiska begrepp: slumpalgoritmer och gr¨anser f¨or sannolikheten f¨or h¨andelser i sannolikhetsf¨ordel- ningens svans. Den typiska till¨ampningen av de senare gr¨anserna ¨ar studier av en v vi Sammanfattning stokastisk variabel W som ¨ar en summa av indikatorvariabler. H¨andelsen vars san- nolikhet ska begr¨ansas ¨ar d˚ap˚a formen {|W − E[W ]| >a} och det g˚ar att visa att sannolikheten f¨or en s˚adan h¨andelse i m˚anga fall avtar exponentiellt med v¨axande a. Kapitel 4 beskriver hur approximationsalgoritmer kan konstrueras genom att kombinera linj¨ara eller semidefinita relaxeringar med en slumpm¨assig avrundnings- procedur. Beviset f¨or den resulterande approximationsalgoritmens kvalitet best˚ar av tv˚asteg:F¨orst noteras att optimall¨osningen till en relaxering av ett maximerings- problem ¨ar ˚atminstone lika stor som ursprungsproblemets optimall¨osning. D¨arefter visas att avrundningssteget f¨ors¨amrar den relaxerade m˚alfunktionens v¨arde med en faktor h¨ogst c. Slutsatsen blir att algoritmen ¨ar en c-approximationsalgoritm. I kapitel 5 beskrivs en teknik som anv¨ands f¨or att ¨overf¨ora approximationsresul- tat f¨or ett visst problem till resultat f¨or andra problem. H¨ar anv¨ands ett indirekt bevisf¨orfarande: Vi antar att ett problem ¨ar l¨att att approximera och visar att det medf¨or att ett k¨ant sv˚arapproximerbart problem ocks˚a ¨ar l¨att att approxime- ra. Slutsatsen av detta blir att det ursprungliga problemet inte kan vara l¨att att approximera. Kapitel 6 beskriver hur man genom ett stickprovsf¨orfarande kan konstruera approximationsalgoritmer f¨or vissa typer av villkorsproblem. I kapitel 7 beskrivs hur funktioner fr˚an en ¨andlig abelsk grupp till de komplexa talen kan utvecklas i en fourierserie. I kapitel 8 beskrivs slutligen probabilistiskt verifierbara bevis –bevis vars korrekthet kan verifieras av en algoritm som endast tittar p˚a ett litet antal slumpm¨assigt valda positioner i beviset. I de sex avslutande kapitlen ges f¨oljande resultat: I kapitel 9 studerar vi pro- blemet att givet en ¨andlig m¨angd S och ett antal delm¨angder av S dela upp S i tv˚adelarp˚aetts˚adant s¨att att s˚am˚anga av de givna delm¨angderna som m¨ojligt inneh˚aller element fr˚an b˚ada delarna. Genom att kombinera en semidefinit relax- ering av problemet med en slumpm¨assig avrundningsprocedur konstruerar vi en 1,380-approximationsalgoritm. I kapitel 10 studerar vi problemet att satisfiera s˚am˚anga givna linj¨ara ekvationer som m¨ojligt. I det specialfall vi behandlar antar variablerna v¨arden i Zp och varje ekvation inneh˚aller h¨ogst tv˚as˚adana variabler. Vi visar att det finns en algoritm som approximerar detta problem inom p − Θ(p−12) i polynomisk tid genom att utveckla ett nytt s¨att att uttrycka problemet med en semidefinit relaxering. I kapitel 11 studerar vi problemet att givet en familj villkor, d¨ar varje villkor beror av h¨ogst k variabler som antar v¨arden i en ¨andlig m¨angd G, satisfiera s˚a m˚anga villkor som m√¨ojligt. Vi visar att det ¨ar NP-sv˚art att approximera detta problem inom |G|k−2 k+1+1 − f¨or varje >0. Beviset anv¨ander en kombination av fourierserieutvecklingar av funktioner fr˚an ¨andliga abelska grupper till de kom- plexa talen och en karakterisering av NP i termer av probabilistiskt verifierbara bevis. I kapitel 12 behandlar vi t¨ata instanser – instanser som inneh˚aller Θ(nk) villkor, av ovanst˚aende problem.