advancedalgorithms(i) - chihao zhangchihaozhang.com/teaching/aa2019spring/slides/lec1-slides.pdf ·...
TRANSCRIPT
![Page 1: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/1.jpg)
Advanced Algorithms (I)
Chihao Zhang
Shanghai Jiao Tong University
Feb. 25, 2019
Advanced Algorithms (I) 1/14
![Page 2: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/2.jpg)
Advanced Algorithms
In the course, we will learn Approximation Algorithms
▶ linear programming, semi-definite programming▶ spectral method▶ random walks▶ …
We will emphasize on▶ tools for designing approximation algorithms▶ rigorous analysis of algorithms
Advanced Algorithms (I) 2/14
![Page 3: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/3.jpg)
Advanced Algorithms
In the course, we will learn Approximation Algorithms
▶ linear programming, semi-definite programming▶ spectral method▶ random walks▶ …
We will emphasize on▶ tools for designing approximation algorithms▶ rigorous analysis of algorithms
Advanced Algorithms (I) 2/14
![Page 4: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/4.jpg)
Advanced Algorithms
In the course, we will learn Approximation Algorithms
▶ linear programming, semi-definite programming▶ spectral method▶ random walks▶ …
We will emphasize on▶ tools for designing approximation algorithms▶ rigorous analysis of algorithms
Advanced Algorithms (I) 2/14
![Page 5: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/5.jpg)
Advanced Algorithms
In the course, we will learn Approximation Algorithms
▶ linear programming, semi-definite programming▶ spectral method▶ random walks▶ …
We will emphasize on▶ tools for designing approximation algorithms▶ rigorous analysis of algorithms
Advanced Algorithms (I) 2/14
![Page 6: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/6.jpg)
Course Info
▶ Instructor: Chihao Zhang▶ Course Homepage:
http://chihaozhang.com/teaching/AA2019spring/▶ Office Hour: every Monday, 7:00pm - 9:00pm
Grading Policy▶ Homework 30%▶ Mid-term Exam 30%▶ Course Project 40%
Advanced Algorithms (I) 3/14
![Page 7: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/7.jpg)
Course Info
▶ Instructor: Chihao Zhang▶ Course Homepage:
http://chihaozhang.com/teaching/AA2019spring/▶ Office Hour: every Monday, 7:00pm - 9:00pm
Grading Policy▶ Homework 30%▶ Mid-term Exam 30%▶ Course Project 40%
Advanced Algorithms (I) 3/14
![Page 8: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/8.jpg)
Course Info
▶ Instructor: Chihao Zhang▶ Course Homepage:
http://chihaozhang.com/teaching/AA2019spring/▶ Office Hour: every Monday, 7:00pm - 9:00pm
Grading Policy▶ Homework 30%▶ Mid-term Exam 30%▶ Course Project 40%
Advanced Algorithms (I) 3/14
![Page 9: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/9.jpg)
MaxSAT
Given a CNF formula φ, is it satisfiable?
φ = (x1 ∨ x3 ∨ x̄29) ∧ (x̄3 ∨ x7) ∧ · · · ∧ (x̄33 ∨ x̄34 ∨ x90 ∨ x126)
NP-hard, we look at its optimization version.
MaxSATInput: A CNF formula φ = C1 ∧ C2 · · · ∧ Cm.
Problem: Compute an assignment that satisfies maximumnumber of clauses.
Harder than SAT, so we look for an approximate solution.
Advanced Algorithms (I) 4/14
![Page 10: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/10.jpg)
MaxSAT
Given a CNF formula φ, is it satisfiable?
φ = (x1 ∨ x3 ∨ x̄29) ∧ (x̄3 ∨ x7) ∧ · · · ∧ (x̄33 ∨ x̄34 ∨ x90 ∨ x126)
NP-hard, we look at its optimization version.
MaxSATInput: A CNF formula φ = C1 ∧ C2 · · · ∧ Cm.
Problem: Compute an assignment that satisfies maximumnumber of clauses.
Harder than SAT, so we look for an approximate solution.
Advanced Algorithms (I) 4/14
![Page 11: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/11.jpg)
MaxSAT
Given a CNF formula φ, is it satisfiable?
φ = (x1 ∨ x3 ∨ x̄29) ∧ (x̄3 ∨ x7) ∧ · · · ∧ (x̄33 ∨ x̄34 ∨ x90 ∨ x126)
NP-hard, we look at its optimization version.
MaxSATInput: A CNF formula φ = C1 ∧ C2 · · · ∧ Cm.
Problem: Compute an assignment that satisfies maximumnumber of clauses.
Harder than SAT, so we look for an approximate solution.
Advanced Algorithms (I) 4/14
![Page 12: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/12.jpg)
MaxSAT
Given a CNF formula φ, is it satisfiable?
φ = (x1 ∨ x3 ∨ x̄29) ∧ (x̄3 ∨ x7) ∧ · · · ∧ (x̄33 ∨ x̄34 ∨ x90 ∨ x126)
NP-hard, we look at its optimization version.
MaxSATInput: A CNF formula φ = C1 ∧ C2 · · · ∧ Cm.
Problem: Compute an assignment that satisfies maximumnumber of clauses.
Harder than SAT, so we look for an approximate solution.
Advanced Algorithms (I) 4/14
![Page 13: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/13.jpg)
MaxSAT
Given a CNF formula φ, is it satisfiable?
φ = (x1 ∨ x3 ∨ x̄29) ∧ (x̄3 ∨ x7) ∧ · · · ∧ (x̄33 ∨ x̄34 ∨ x90 ∨ x126)
NP-hard, we look at its optimization version.
MaxSATInput: A CNF formula φ = C1 ∧ C2 · · · ∧ Cm.
Problem: Compute an assignment that satisfies maximumnumber of clauses.
Harder than SAT, so we look for an approximate solution.
Advanced Algorithms (I) 4/14
![Page 14: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/14.jpg)
MaxSAT
Given a CNF formula φ, is it satisfiable?
φ = (x1 ∨ x3 ∨ x̄29) ∧ (x̄3 ∨ x7) ∧ · · · ∧ (x̄33 ∨ x̄34 ∨ x90 ∨ x126)
NP-hard, we look at its optimization version.
MaxSATInput: A CNF formula φ = C1 ∧ C2 · · · ∧ Cm.
Problem: Compute an assignment that satisfies maximumnumber of clauses.
Harder than SAT, so we look for an approximate solution.
Advanced Algorithms (I) 4/14
![Page 15: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/15.jpg)
Tossing a Coin
An instance φ▶ The variable sets V = {x1, x2, . . . , xn}▶ The set of clauses C = {C1,C2, . . . ,Cm}▶ Each clause Ci contains ℓi literals
We first cosnider the following simple algorithm:
▶ For each variable xi, toss an independent fair coin.▶ If the coin goes HEAD, we set xi true, otherwise we
set xi false.
Advanced Algorithms (I) 5/14
![Page 16: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/16.jpg)
Tossing a Coin
An instance φ▶ The variable sets V = {x1, x2, . . . , xn}▶ The set of clauses C = {C1,C2, . . . ,Cm}▶ Each clause Ci contains ℓi literals
We first cosnider the following simple algorithm:
▶ For each variable xi, toss an independent fair coin.▶ If the coin goes HEAD, we set xi true, otherwise we
set xi false.
Advanced Algorithms (I) 5/14
![Page 17: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/17.jpg)
Tossing a Coin
An instance φ▶ The variable sets V = {x1, x2, . . . , xn}▶ The set of clauses C = {C1,C2, . . . ,Cm}▶ Each clause Ci contains ℓi literals
We first cosnider the following simple algorithm:
▶ For each variable xi, toss an independent fair coin.▶ If the coin goes HEAD, we set xi true, otherwise we
set xi false.
Advanced Algorithms (I) 5/14
![Page 18: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/18.jpg)
Tossing a Coin
An instance φ▶ The variable sets V = {x1, x2, . . . , xn}▶ The set of clauses C = {C1,C2, . . . ,Cm}▶ Each clause Ci contains ℓi literals
We first cosnider the following simple algorithm:
▶ For each variable xi, toss an independent fair coin.
▶ If the coin goes HEAD, we set xi true, otherwise weset xi false.
Advanced Algorithms (I) 5/14
![Page 19: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/19.jpg)
Tossing a Coin
An instance φ▶ The variable sets V = {x1, x2, . . . , xn}▶ The set of clauses C = {C1,C2, . . . ,Cm}▶ Each clause Ci contains ℓi literals
We first cosnider the following simple algorithm:
▶ For each variable xi, toss an independent fair coin.▶ If the coin goes HEAD, we set xi true, otherwise we
set xi false.
Advanced Algorithms (I) 5/14
![Page 20: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/20.jpg)
Analysis
The outcome of the algorithm is random, we are interested in itsexpectation.
For this particular algorithm, it can be derandomized.
E [X] =m∑i=1
Pr [Ci is satisfied] =m∑i=1
(1 − 2−ℓi
)≥ m
2.
On the otherhand,OPT ≤ m.
Therefore,
E [X] ≥ 1
2· OPT.
Advanced Algorithms (I) 6/14
![Page 21: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/21.jpg)
Analysis
The outcome of the algorithm is random, we are interested in itsexpectation.
For this particular algorithm, it can be derandomized.
E [X] =m∑i=1
Pr [Ci is satisfied] =m∑i=1
(1 − 2−ℓi
)≥ m
2.
On the otherhand,OPT ≤ m.
Therefore,
E [X] ≥ 1
2· OPT.
Advanced Algorithms (I) 6/14
![Page 22: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/22.jpg)
Analysis
The outcome of the algorithm is random, we are interested in itsexpectation.
For this particular algorithm, it can be derandomized.
E [X] =m∑i=1
Pr [Ci is satisfied] =m∑i=1
(1 − 2−ℓi
)≥ m
2.
On the otherhand,OPT ≤ m.
Therefore,
E [X] ≥ 1
2· OPT.
Advanced Algorithms (I) 6/14
![Page 23: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/23.jpg)
Analysis
The outcome of the algorithm is random, we are interested in itsexpectation.
For this particular algorithm, it can be derandomized.
E [X] =m∑i=1
Pr [Ci is satisfied]
=m∑i=1
(1 − 2−ℓi
)≥ m
2.
On the otherhand,OPT ≤ m.
Therefore,
E [X] ≥ 1
2· OPT.
Advanced Algorithms (I) 6/14
![Page 24: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/24.jpg)
Analysis
The outcome of the algorithm is random, we are interested in itsexpectation.
For this particular algorithm, it can be derandomized.
E [X] =m∑i=1
Pr [Ci is satisfied] =m∑i=1
(1 − 2−ℓi
)≥ m
2.
On the otherhand,OPT ≤ m.
Therefore,
E [X] ≥ 1
2· OPT.
Advanced Algorithms (I) 6/14
![Page 25: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/25.jpg)
Analysis
The outcome of the algorithm is random, we are interested in itsexpectation.
For this particular algorithm, it can be derandomized.
E [X] =m∑i=1
Pr [Ci is satisfied] =m∑i=1
(1 − 2−ℓi
)≥ m
2.
On the otherhand,OPT ≤ m.
Therefore,
E [X] ≥ 1
2· OPT.
Advanced Algorithms (I) 6/14
![Page 26: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/26.jpg)
Analysis
The outcome of the algorithm is random, we are interested in itsexpectation.
For this particular algorithm, it can be derandomized.
E [X] =m∑i=1
Pr [Ci is satisfied] =m∑i=1
(1 − 2−ℓi
)≥ m
2.
On the otherhand,OPT ≤ m.
Therefore,
E [X] ≥ 1
2· OPT.
Advanced Algorithms (I) 6/14
![Page 27: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/27.jpg)
Can we improve the previous algorithm?
Observations▶ the worst case happens when for some singleton clause, i.e.,ℓi = 1;
▶ for a singleton C = x, if there is no C′ = x̄, then we canincrease the probability of x to be true;
▶ otherwise, we can improve the upper bound for OPT! (x and x̄cannot be both satisfied)
Advanced Algorithms (I) 7/14
![Page 28: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/28.jpg)
Can we improve the previous algorithm?
Observations▶ the worst case happens when for some singleton clause, i.e.,ℓi = 1;
▶ for a singleton C = x, if there is no C′ = x̄, then we canincrease the probability of x to be true;
▶ otherwise, we can improve the upper bound for OPT! (x and x̄cannot be both satisfied)
Advanced Algorithms (I) 7/14
![Page 29: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/29.jpg)
Can we improve the previous algorithm?
Observations▶ the worst case happens when for some singleton clause, i.e.,ℓi = 1;
▶ for a singleton C = x, if there is no C′ = x̄, then we canincrease the probability of x to be true;
▶ otherwise, we can improve the upper bound for OPT! (x and x̄cannot be both satisfied)
Advanced Algorithms (I) 7/14
![Page 30: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/30.jpg)
Can we improve the previous algorithm?
Observations▶ the worst case happens when for some singleton clause, i.e.,ℓi = 1;
▶ for a singleton C = x, if there is no C′ = x̄, then we canincrease the probability of x to be true;
▶ otherwise, we can improve the upper bound for OPT! (x and x̄cannot be both satisfied)
Advanced Algorithms (I) 7/14
![Page 31: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/31.jpg)
Tossing a Biased Coin
Let the p-biased coin be with probability p to HEAD, 1 − p to TAIL.
▶ For each variable xi, toss an independent p-biasedcoin.
▶ If the coin goes HEAD, we set xi true, otherwise weset xi false.
Advanced Algorithms (I) 8/14
![Page 32: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/32.jpg)
Tossing a Biased Coin
Let the p-biased coin be with probability p to HEAD, 1 − p to TAIL.
▶ For each variable xi, toss an independent p-biasedcoin.
▶ If the coin goes HEAD, we set xi true, otherwise weset xi false.
Advanced Algorithms (I) 8/14
![Page 33: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/33.jpg)
Tossing a Biased Coin
Let the p-biased coin be with probability p to HEAD, 1 − p to TAIL.
▶ For each variable xi, toss an independent p-biasedcoin.
▶ If the coin goes HEAD, we set xi true, otherwise weset xi false.
Advanced Algorithms (I) 8/14
![Page 34: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/34.jpg)
Tossing a Biased Coin
Let the p-biased coin be with probability p to HEAD, 1 − p to TAIL.
▶ For each variable xi, toss an independent p-biasedcoin.
▶ If the coin goes HEAD, we set xi true, otherwise weset xi false.
Advanced Algorithms (I) 8/14
![Page 35: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/35.jpg)
Tossing a Biased Coin
Let the p-biased coin be with probability p to HEAD, 1 − p to TAIL.
▶ For each variable xi, toss an independent p-biasedcoin.
▶ If the coin goes HEAD, we set xi true, otherwise weset xi false.
Advanced Algorithms (I) 8/14
![Page 36: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/36.jpg)
Analysis
Assumption for Clauses of φ▶ More positive singletons than negative singletons.▶ There are t pairs of x and x̄.▶ p ≥ 1
2 .
E [X] ≥ t+ (m − 2t)min{p, 1 − p2
}.
The new upper bound for OPT:
OPT ≤ m − t
Combine them and obtain
E [X] ≥ α · OPT
where α ≈ 0.618.
Advanced Algorithms (I) 9/14
![Page 37: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/37.jpg)
AnalysisAssumption for Clauses of φ▶ More positive singletons than negative singletons.
▶ There are t pairs of x and x̄.▶ p ≥ 1
2 .
E [X] ≥ t+ (m − 2t)min{p, 1 − p2
}.
The new upper bound for OPT:
OPT ≤ m − t
Combine them and obtain
E [X] ≥ α · OPT
where α ≈ 0.618.
Advanced Algorithms (I) 9/14
![Page 38: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/38.jpg)
AnalysisAssumption for Clauses of φ▶ More positive singletons than negative singletons.▶ There are t pairs of x and x̄.
▶ p ≥ 12 .
E [X] ≥ t+ (m − 2t)min{p, 1 − p2
}.
The new upper bound for OPT:
OPT ≤ m − t
Combine them and obtain
E [X] ≥ α · OPT
where α ≈ 0.618.
Advanced Algorithms (I) 9/14
![Page 39: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/39.jpg)
AnalysisAssumption for Clauses of φ▶ More positive singletons than negative singletons.▶ There are t pairs of x and x̄.▶ p ≥ 1
2 .
E [X] ≥ t+ (m − 2t)min{p, 1 − p2
}.
The new upper bound for OPT:
OPT ≤ m − t
Combine them and obtain
E [X] ≥ α · OPT
where α ≈ 0.618.
Advanced Algorithms (I) 9/14
![Page 40: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/40.jpg)
AnalysisAssumption for Clauses of φ▶ More positive singletons than negative singletons.▶ There are t pairs of x and x̄.▶ p ≥ 1
2 .
E [X] ≥ t+ (m − 2t)min{p, 1 − p2
}.
The new upper bound for OPT:
OPT ≤ m − t
Combine them and obtain
E [X] ≥ α · OPT
where α ≈ 0.618.
Advanced Algorithms (I) 9/14
![Page 41: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/41.jpg)
AnalysisAssumption for Clauses of φ▶ More positive singletons than negative singletons.▶ There are t pairs of x and x̄.▶ p ≥ 1
2 .
E [X] ≥ t+ (m − 2t)min{p, 1 − p2
}.
The new upper bound for OPT:
OPT ≤ m − t
Combine them and obtain
E [X] ≥ α · OPT
where α ≈ 0.618.Advanced Algorithms (I) 9/14
![Page 42: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/42.jpg)
Can we further improve the algorithm?
We can use different coins for each variable, e.g., in
φ = x1 ∧ (x1 ∨ x̄2),
we prefer to set x1 to true.
How can we make use of the information?
Linear Programming helps.
Advanced Algorithms (I) 10/14
![Page 43: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/43.jpg)
Can we further improve the algorithm?
We can use different coins for each variable, e.g., in
φ = x1 ∧ (x1 ∨ x̄2),
we prefer to set x1 to true.
How can we make use of the information?
Linear Programming helps.
Advanced Algorithms (I) 10/14
![Page 44: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/44.jpg)
Can we further improve the algorithm?
We can use different coins for each variable, e.g., in
φ = x1 ∧ (x1 ∨ x̄2),
we prefer to set x1 to true.
How can we make use of the information?
Linear Programming helps.
Advanced Algorithms (I) 10/14
![Page 45: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/45.jpg)
Can we further improve the algorithm?
We can use different coins for each variable, e.g., in
φ = x1 ∧ (x1 ∨ x̄2),
we prefer to set x1 to true.
How can we make use of the information?
Linear Programming helps.
Advanced Algorithms (I) 10/14
![Page 46: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/46.jpg)
Tossing Clever Coins
We introduce the following variables.
▶ for every i ∈ [n], yi indicates whether xi is true;▶ for every j ∈ [m], zj indicates whether Cj is satisfied.
maxm∑j=1
zj
subject to∑i∈Pj
yi +∑k∈Nj
(1 − yk) ≥ zj, ∀j ∈ [m] s.t. Cj =∨i∈Pj
xi ∨∨k∈Nj
x̄k
zj ∈ {0, 1}, ∀j ∈ [m]
yi ∈ {0, 1}, ∀i ∈ [n]
This integer program is equivalent to MaxSAT.
Advanced Algorithms (I) 11/14
![Page 47: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/47.jpg)
Tossing Clever CoinsWe introduce the following variables.
▶ for every i ∈ [n], yi indicates whether xi is true;▶ for every j ∈ [m], zj indicates whether Cj is satisfied.
maxm∑j=1
zj
subject to∑i∈Pj
yi +∑k∈Nj
(1 − yk) ≥ zj, ∀j ∈ [m] s.t. Cj =∨i∈Pj
xi ∨∨k∈Nj
x̄k
zj ∈ {0, 1}, ∀j ∈ [m]
yi ∈ {0, 1}, ∀i ∈ [n]
This integer program is equivalent to MaxSAT.
Advanced Algorithms (I) 11/14
![Page 48: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/48.jpg)
Tossing Clever CoinsWe introduce the following variables.
▶ for every i ∈ [n], yi indicates whether xi is true;▶ for every j ∈ [m], zj indicates whether Cj is satisfied.
maxm∑j=1
zj
subject to∑i∈Pj
yi +∑k∈Nj
(1 − yk) ≥ zj, ∀j ∈ [m] s.t. Cj =∨i∈Pj
xi ∨∨k∈Nj
x̄k
zj ∈ {0, 1}, ∀j ∈ [m]
yi ∈ {0, 1}, ∀i ∈ [n]
This integer program is equivalent to MaxSAT.
Advanced Algorithms (I) 11/14
![Page 49: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/49.jpg)
Tossing Clever CoinsWe introduce the following variables.
▶ for every i ∈ [n], yi indicates whether xi is true;▶ for every j ∈ [m], zj indicates whether Cj is satisfied.
maxm∑j=1
zj
subject to∑i∈Pj
yi +∑k∈Nj
(1 − yk) ≥ zj, ∀j ∈ [m] s.t. Cj =∨i∈Pj
xi ∨∨k∈Nj
x̄k
zj ∈ {0, 1}, ∀j ∈ [m]
yi ∈ {0, 1}, ∀i ∈ [n]
This integer program is equivalent to MaxSAT.
Advanced Algorithms (I) 11/14
![Page 50: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/50.jpg)
Tossing Clever CoinsWe introduce the following variables.
▶ for every i ∈ [n], yi indicates whether xi is true;▶ for every j ∈ [m], zj indicates whether Cj is satisfied.
maxm∑j=1
zj
subject to∑i∈Pj
yi +∑k∈Nj
(1 − yk) ≥ zj, ∀j ∈ [m] s.t. Cj =∨i∈Pj
xi ∨∨k∈Nj
x̄k
zj ∈ {0, 1}, ∀j ∈ [m]
yi ∈ {0, 1}, ∀i ∈ [n]
This integer program is equivalent to MaxSAT.
Advanced Algorithms (I) 11/14
![Page 51: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/51.jpg)
Relaxation
There is no efficient algorithm for integer programming in general
Therefore, we relax its non-linear constriants
maxm∑j=1
zj
subject to∑i∈Pj
yi +∑k∈Pj
(1 − yk) ≥ zj, ∀j ∈ [m] s.t. Cj =∨i∈Pj
xi ∨∨k∈Nj
x̄k
0 ≤ zj ≤ 1, ∀j ∈ [m]
0 ≤ yi ≤ 1, ∀i ∈ [n]
We can solve this LP in poly-time
Advanced Algorithms (I) 12/14
![Page 52: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/52.jpg)
Relaxation
There is no efficient algorithm for integer programming in general
Therefore, we relax its non-linear constriants
maxm∑j=1
zj
subject to∑i∈Pj
yi +∑k∈Pj
(1 − yk) ≥ zj, ∀j ∈ [m] s.t. Cj =∨i∈Pj
xi ∨∨k∈Nj
x̄k
0 ≤ zj ≤ 1, ∀j ∈ [m]
0 ≤ yi ≤ 1, ∀i ∈ [n]
We can solve this LP in poly-time
Advanced Algorithms (I) 12/14
![Page 53: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/53.jpg)
Relaxation
There is no efficient algorithm for integer programming in general
Therefore, we relax its non-linear constriants
maxm∑j=1
zj
subject to∑i∈Pj
yi +∑k∈Pj
(1 − yk) ≥ zj, ∀j ∈ [m] s.t. Cj =∨i∈Pj
xi ∨∨k∈Nj
x̄k
0 ≤ zj ≤ 1, ∀j ∈ [m]
0 ≤ yi ≤ 1, ∀i ∈ [n]
We can solve this LP in poly-time
Advanced Algorithms (I) 12/14
![Page 54: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/54.jpg)
Relaxation
There is no efficient algorithm for integer programming in general
Therefore, we relax its non-linear constriants
maxm∑j=1
zj
subject to∑i∈Pj
yi +∑k∈Pj
(1 − yk) ≥ zj, ∀j ∈ [m] s.t. Cj =∨i∈Pj
xi ∨∨k∈Nj
x̄k
0 ≤ zj ≤ 1, ∀j ∈ [m]
0 ≤ yi ≤ 1, ∀i ∈ [n]
We can solve this LP in poly-time
Advanced Algorithms (I) 12/14
![Page 55: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/55.jpg)
Relaxation
There is no efficient algorithm for integer programming in general
Therefore, we relax its non-linear constriants
maxm∑j=1
zj
subject to∑i∈Pj
yi +∑k∈Pj
(1 − yk) ≥ zj, ∀j ∈ [m] s.t. Cj =∨i∈Pj
xi ∨∨k∈Nj
x̄k
0 ≤ zj ≤ 1, ∀j ∈ [m]
0 ≤ yi ≤ 1, ∀i ∈ [n]
We can solve this LP in poly-time
Advanced Algorithms (I) 12/14
![Page 56: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/56.jpg)
Algorithm
Let({y∗i}i∈[n] ,
{z∗j
}j∈[m]
)be an optimal solution of the LP.
▶ For each variable xi, toss an independent y∗i -biasedcoin.
▶ If the coin goes HEAD, we set xi true, otherwise weset xi false.
Advanced Algorithms (I) 13/14
![Page 57: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/57.jpg)
Algorithm
Let({y∗i}i∈[n] ,
{z∗j
}j∈[m]
)be an optimal solution of the LP.
▶ For each variable xi, toss an independent y∗i -biasedcoin.
▶ If the coin goes HEAD, we set xi true, otherwise weset xi false.
Advanced Algorithms (I) 13/14
![Page 58: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/58.jpg)
Algorithm
Let({y∗i}i∈[n] ,
{z∗j
}j∈[m]
)be an optimal solution of the LP.
▶ For each variable xi, toss an independent y∗i -biasedcoin.
▶ If the coin goes HEAD, we set xi true, otherwise weset xi false.
Advanced Algorithms (I) 13/14
![Page 59: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/59.jpg)
Algorithm
Let({y∗i}i∈[n] ,
{z∗j
}j∈[m]
)be an optimal solution of the LP.
▶ For each variable xi, toss an independent y∗i -biasedcoin.
▶ If the coin goes HEAD, we set xi true, otherwise weset xi false.
Advanced Algorithms (I) 13/14
![Page 60: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/60.jpg)
Algorithm
Let({y∗i}i∈[n] ,
{z∗j
}j∈[m]
)be an optimal solution of the LP.
▶ For each variable xi, toss an independent y∗i -biasedcoin.
▶ If the coin goes HEAD, we set xi true, otherwise weset xi false.
Advanced Algorithms (I) 13/14
![Page 61: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/61.jpg)
Analysis
A typical upper bound of OPT for LP based algorithms is
OPT ≤ OPT(LP) =m∑j=1
z∗j
We can further establish
E [X] ≥(1 − 1
e
) m∑j=1
z∗j .
Therefore, the LP rounding is a(1 − 1
e
)-approximation algorithm for
MaxSAT
Advanced Algorithms (I) 14/14
![Page 62: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/62.jpg)
Analysis
A typical upper bound of OPT for LP based algorithms is
OPT ≤ OPT(LP) =m∑j=1
z∗j
We can further establish
E [X] ≥(1 − 1
e
) m∑j=1
z∗j .
Therefore, the LP rounding is a(1 − 1
e
)-approximation algorithm for
MaxSAT
Advanced Algorithms (I) 14/14
![Page 63: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/63.jpg)
Analysis
A typical upper bound of OPT for LP based algorithms is
OPT ≤ OPT(LP) =m∑j=1
z∗j
We can further establish
E [X] ≥(1 − 1
e
) m∑j=1
z∗j .
Therefore, the LP rounding is a(1 − 1
e
)-approximation algorithm for
MaxSAT
Advanced Algorithms (I) 14/14
![Page 64: AdvancedAlgorithms(I) - Chihao Zhangchihaozhang.com/teaching/AA2019spring/slides/lec1-slides.pdf · AdvancedAlgorithms Inthecourse,wewilllearnApproximationAlgorithms linearprogramming,semi-definiteprogramming](https://reader034.vdocuments.us/reader034/viewer/2022042219/5ec5ca8cdfe04557bd2f2235/html5/thumbnails/64.jpg)
Analysis
A typical upper bound of OPT for LP based algorithms is
OPT ≤ OPT(LP) =m∑j=1
z∗j
We can further establish
E [X] ≥(1 − 1
e
) m∑j=1
z∗j .
Therefore, the LP rounding is a(1 − 1
e
)-approximation algorithm for
MaxSAT
Advanced Algorithms (I) 14/14