220 likes | 235 Views
Explore approximations for NP-hard problems including Vertex Cover, Traveling Salesman, and Knapsack Problem. Learn about performance ratios, constant-approximations, and algorithms for optimization. Understand the theory and applications in computational complexity.
E N D
Earlier Results on Approximations • Vertex-Cover • Traveling Salesman Problem • Knapsack Problem
Constant-Approximation • c-approximation is apolynomial-timeapproximation satisfying: 1 < approx(input)/opt(input) < c for MIN or 1 < opt(input)/approx(input) < c for MAX
Vertex Cover • Given a graph G=(V,E), find a minimum subset C of vertices such that every edge is incident to a vertex in C.
Vertex-Cover • The vertex set of a maximal matching gives 2-approximation, i.e., approx / opt < 2
Traveling Salesman • Given n cities with a distance table, find a minimum total-distance tour to visit each city exactly once.
Special Case Theorem • Traveling around a minimum spanning tree is a 2-approximation.
Theorem • Minimum spanning tree + minimum-length perfect matching on odd vertices is 1.5-approximation
Minimum perfect matching on odd vertices has weight at most 0.5 opt.
Theorem Proof.
Algorithm • Classify: for i < m, ci< a= cG, for i > m+1, ci > a. • Sort • For Why?
Theorem Proof: Given a graph G=(V,E), define a distance table on V as follows:
Contradiction Argument • Suppose r-approximation exists. Then we have a polynomial-time algorithm to solve Hamiltonian Cycle as follow: r-approximation solution <r |V| if and only if G has a Hamiltonian cycle