A trivial upper bound is OPT( ϕ ) ≤ m So the approximation ratio is 0.5
A trivial upper bound is OPT( ϕ ) ≤ m So the approximation ratio is 0.5 Can we improve it?
A trivial upper bound is OPT( ϕ ) ≤ m So the approximation ratio is 0.5 Can we improve it? In the analysis
A trivial upper bound is OPT( ϕ ) ≤ m So the approximation ratio is 0.5 Can we improve it? In the analysis we use ℓ i ≥ 1
A trivial upper bound is OPT( ϕ ) ≤ m So the approximation ratio is 0.5 Can we improve it? In the analysis we use ℓ i ≥ 1 In fact, we can tweak those singleton clauses
If for some , only one of and is in x ∈ V x x ¯ ϕ
If for some , only one of and is in x ∈ V x x ¯ ϕ • we can toss an unfair coin to increase its chance to be satisfied
If for some , only one of and is in x ∈ V x x ¯ ϕ • we can toss an unfair coin to increase its chance to be satisfied If both and are in , x x ¯ ϕ
If for some , only one of and is in x ∈ V x x ¯ ϕ • we can toss an unfair coin to increase its chance to be satisfied If both and are in , x x ¯ ϕ • only one of them can be satisfied in any assignment!
If for some , only one of and is in x ∈ V x x ¯ ϕ • we can toss an unfair coin to increase its chance to be satisfied If both and are in , x x ¯ ϕ • only one of them can be satisfied in any assignment! Both cases are good for us!
Assume there are more positive singletons than negative singletons in ϕ
Assume there are more positive singletons than negative singletons in ϕ Let S = { x ∈ V : both x and ¯ x are clauses} and t = | S |
Assume there are more positive singletons than negative singletons in ϕ Let S = { x ∈ V : both x and ¯ x are clauses} and t = | S | Then OPT( ϕ ) ≤ m − t
Assume there are more positive singletons than negative singletons in ϕ Let S = { x ∈ V : both x and ¯ x are clauses} and t = | S | Then OPT( ϕ ) ≤ m − t Let be the set of clauses and 𝒟
Assume there are more positive singletons than negative singletons in ϕ Let S = { x ∈ V : both x and ¯ x are clauses} and t = | S | Then OPT( ϕ ) ≤ m − t Let be the set of clauses and 𝒟 𝒟′ = 𝒟 ∖ {singleton x and ¯ x with x ∈ S }
Assume there are more positive singletons than negative singletons in ϕ Let S = { x ∈ V : both x and ¯ x are clauses} and t = | S | Then OPT( ϕ ) ≤ m − t Let be the set of clauses and 𝒟 𝒟′ = 𝒟 ∖ {singleton x and ¯ x with x ∈ S } For all , change it to x ∈ 𝒟′ ¯ x
Assume there are more positive singletons than negative singletons in ϕ Let S = { x ∈ V : both x and ¯ x are clauses} and t = | S | Then OPT( ϕ ) ≤ m − t Let be the set of clauses and 𝒟 𝒟′ = 𝒟 ∖ {singleton x and ¯ x with x ∈ S } Switch the positive and the For all , change it to x ∈ 𝒟′ ¯ x negative for all appearance of x
E [ X ] = t + ∑ Pr[ C is satisfied] ≥ t + ( m − 2 t ) min{ p ,1 − p 2 } C ∈𝒟′
E [ X ] = t + ∑ Pr[ C is satisfied] ≥ t + ( m − 2 t ) min{ p ,1 − p 2 } C ∈𝒟′ The term min{ p ,1 − p 2 } is because the worst case now is either a positive singleton or y ∨ ¯ x ¯ z
E [ X ] = t + ∑ Pr[ C is satisfied] ≥ t + ( m − 2 t ) min{ p ,1 − p 2 } C ∈𝒟′ The term min{ p ,1 − p 2 } is because the worst case now is either a positive singleton or y ∨ ¯ x ¯ z Therefore
E [ X ] = t + ∑ Pr[ C is satisfied] ≥ t + ( m − 2 t ) min{ p ,1 − p 2 } C ∈𝒟′ The term min{ p ,1 − p 2 } is because the worst case now is either a positive singleton or y ∨ ¯ x ¯ z Therefore E [ X ] ≥ t + (OPT − t ) min{ p ,1 − p 2 } ≥ min{ p ,1 − p 2 } ⋅ OPT
E [ X ] = t + ∑ Pr[ C is satisfied] ≥ t + ( m − 2 t ) min{ p ,1 − p 2 } C ∈𝒟′ The term min{ p ,1 − p 2 } is because the worst case now is either a positive singleton or y ∨ ¯ x ¯ z Therefore E [ X ] ≥ t + (OPT − t ) min{ p ,1 − p 2 } ≥ min{ p ,1 − p 2 } ⋅ OPT For p = 1 − p 2 , we have a -approximation 0.618 algorithm
Non-identical Coins via LP
Non-identical Coins via LP The drawback of previous algorithms is that we toss the same coin for each variable
Non-identical Coins via LP The drawback of previous algorithms is that we toss the same coin for each variable The linear programming can helps us to choose coins!
Non-identical Coins via LP The drawback of previous algorithms is that we toss the same coin for each variable The linear programming can helps us to choose coins! We first treat MaxSAT problem as an integer programming
The Integer Program
The Integer Program
The Integer Program - for each clause z j C j
The Integer Program - for each clause z j C j - for each variable y i x i
The Integer Program - for each clause z j C j - for each variable y i x i It is NP-hard to solve the IP
The Linear Program
The Linear Program
The Linear Program - the optimal z * = { z * j } j ∈ [ m ] , y * = { y * i } i ∈ [ n ] solution of the LP
The Linear Program - the optimal z * = { z * j } j ∈ [ m ] , y * = { y * i } i ∈ [ n ] solution of the LP We toss -coin for the variable ! y * x i i
The Linear Program - the optimal z * = { z * j } j ∈ [ m ] , y * = { y * i } i ∈ [ n ] solution of the LP We toss -coin for the variable ! y * x i i m ∑ OPT( ϕ ) ≤ OPT( LP ) = z * j j =1
Recommend
More recommend