This preview shows pages 1–3. Sign up to view the full content.
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
Unformatted text preview: Chapter 7 Approximation algorithms II By Sariel HarPeled , September 17, 2007 Version: 0.2 7.1 Max Exact 3SAT We remind the reader that an instance of 3SAT is a boolean formula, for example F = ( x 1 + x 2 + x 3 )( x 4 + x 1 + x 2 ), and the decision problem is to decide if the formula has a satisfiable assignment. Interestingly, we can turn this into an optimization problem. Problem: Max 3SAT Instance: A collection of clauses: C 1 , . . . , C m . Output: Find the assignment to x 1 , ..., x n that satisfies the maximum number of clauses. Clearly, since 3SAT is NPC it implies that Max 3SAT is NPH . In particular, the formula F becomes the following set of two clauses: x 1 + x 2 + x 3 and x 4 + x 1 + x 2 . Note, that Max 3SAT is a maximization problem . Definition 7.1.1 Algorithm Alg for a maximization problem achieves an approximation factor if for all inputs, we have: Alg ( G ) Opt( G ) . In the following, we present a randomized algorithm it is allowed to consult with a source of random numbers in making decisions. A key property we need about random variables, is the linearity of expectation property, which is easy to derive directly from the definition of expectation. This work is licensed under the Creative Commons AttributionNoncommercial 3.0 License. To view a copy of this license, visit http://creativecommons.org/licenses/bync/3.0/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA. 1 Definition 7.1.2 ( Linearity of expectations .) Given two random variables X , Y (not necessarily in dependent, we have that E [ X + Y ] = E [ X ] + E [ Y ]. Theorem 7.1.3 One can achieve (in expectation) (7 / 8)approximation to Max 3SAT in polynomial time. Namely, if the instance has m clauses, then the generated assignment satisfies (7 / 8) m clauses in expectation . Proof: Let x 1 , . . . , x n be the n variables used in the given instance. The algorithm works by randomly assigning values to x 1 , . . . , x n , independently, and equal probability, to 0 or 1, for each one of the variables. Let Y i be the indicator variables which is 1 if (and only if) the i th clause is satisfied by the generated random assignment and 0 otherwise, for i = 1 , . . . , m . Formally, we have Y i = 1 C i is satisfied by the generated assignment, otherwise....
View
Full
Document
This note was uploaded on 06/14/2009 for the course CS 473 taught by Professor Viswanathan during the Fall '08 term at University of Illinois at Urbana–Champaign.
 Fall '08
 Viswanathan
 Algorithms

Click to edit the document details