\documentclass{article} \usepackage{me} \setlength{\parindent}{0pt} \def\zhat{{\hat z}}

Approximation Algorithms

2012 Lecture 17 start
2013 Lecture 19 start
What do you do when a problem is NP-complete?

Definitions:

Techincal assumptions we'll often make:

NP-hardness

Approximation algorithm:

Absolute Approximations

Definition: $k$-abs approx if on any $I$, have $|A(I)-OPT(I)| \le k$

Example: planar graph coloring.

Known only for trivial cases, where opt is bounded by a constant.

Often, can show impossible by “scaling” the problem.

Relative Approximation

Definitions:

How do we prove algorithms have relative approximations?

Greedy Algorithms

\def\OPT{{\mbox{OPT}}}

Do obvious thing at each step.

Max cut

Set cover

Vertex cover:

2012 L17 end

Graham's rule for $P||C_{\max}$ is a $2-\frac1m$ approximation algorithm

Notice:

Scheduling Theory

General notation: machines $\mid$ constraints/features $\mid$ objective

Approximation Schemes

So far, we've seen various constant-factor approximations.

An approximation scheme is a family of algorithms $A_\epsilon$ such that

But note: runtime might be awful as function of $\epsilon$

FPAS, Pseudopolynomial algorithms

Knapsack example.

Dynamic program for bounded integer profits

did this prove $P=NP$?

rounding

Wait, how do we know $P$?

pseudopoly gives FPAS; converse almost true

From FPAS to pseudo poly:

Enumeration

More powerful idea: $k$-enumeration

Scheduling any number of machines

Combine enumeration and rounding

Notes

2012 L18 end

Relaxations

So far we've seen two techniques:

Can we be more clever?

TSP

2011 Lecture 17 end

intuition: SPT for $1||\sum C_j$

$1 | r_j | \sum C_j$

2013 lecture 21 end

LP relaxations

Three steps

Vertex cover

$$ \begin{align*} &\min \sum x_i x_i+x_j &\ge 1& (i,j)\in E x_i&\in{0,1} \end{align*} $$

Rounding

Even weighted (unlike greedy).

Approximation hardness:

Facility Location

Metric version, with triangle inequality.

ILP $$ \begin{align*} &\min \sum f_iy_i + \sum c_{ij}x_{ij}\\ x_{ij} &\le y_i\\ \sum_i x_{ij} &\ge 1 \end{align*} $$

Step 1: filtering

Step 2: Facility opening: intuition

Step 2: Facility opening: details

Combine:

Further research progress has yielded

2011 End lecture 19

MAX SAT

Define.

random setting

LP $$ \begin{eqnarray*} \max &&\sum z_j\\ \sum_{i \in C_j^+} y_i + \sum_{i \in C_j^-} (1-y_1) &\ge &z_j \end{eqnarray*} $$

2011 lecture 18 ends
Analysis

LP good for small clauses, random for large.