VERTEXT-COVER: find minimum vertex that covers all the edges (NP-complete)
Optimization problem reduce to decision version
Approximation algorithms "solves" optimization problems
\alpha-approximation:
\forall valid input x: A(x) output a valid solution
\forall valid input x: \text{val}(A(x)) is within factor \alpha of \text{OPT}(x)
APPROX-VERTEX-COVER: at most how many vertices used to cover all edges
Greedy: not a c-approximation
Efficiently Computable Proxy: use some known algorithm "Gavril's algorithmm" (2-approximation)
TSP: traveling salesman problem
Input: G = \langle{V, E}\rangle with edge cost $ : E \rightarrow \mathbb{N}$
Output: minimum cost cycle visiting every vertex exactly once METRIC-TSP:
Input: G = \langle{V, E}\rangle with edge cost $ : E \rightarrow \mathbb{N}$
Output: minimum cost tour visiting every vertex at least once
Efficiently Computable Proxy:
MAX-CUT: 2 coloring of vertices maximizing the number of cut edges
Minimization problem
a set instances: I
solution function: \text{sol} : I \rightarrow \mathfrak{P}_{fin}(\Sigma^*)
cost function: \text{cost} : \text{solution} \rightarrow \mathbb{N}^+
optimal value: \text{optval}(x) = \text{min}(\text{cost}(z) | z \in \text{sol}(x))
performance ratio: \frac{\text{cost}(A(x))}{\text{optval}(x)} \geq 1
k-approximation: \text{cost}(A(x)) \leq k \times \text{optval}(x)
Lemma (P \lneq NP): let f be a polynomial time computable function. Then there is no (1 + f(x))-approximation algorithm for general TSP.
nearest neighbor: does not produce k-approximation algorithm
optimizing the walk of a minimum spanning tree is the go (\frac{3}{2}-approximation algorithm for Metric TSP)
Arora, Mitchel has (1 + \epsilon)-approximation algorithms for Euclidean TSP, but it is impractical
Table of Content