SlideShare una empresa de Scribd logo
1 de 67
Descargar para leer sin conexión
Approximation Algorithms 
Jhoirene B Clemente 
Algorithms and Complexity Lab 
Department of Computer Science 
University of the Philippines Diliman 
October 14, 2014
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Overview 
1. Combinatorial Optimization Problems 
2. NP-Hard Problems 
2.1 Clique 
2.2 Independent Set Problem 
2.3 Vertex Cover 
2.4 Traveling Salesman Problem 
3. Approaches in Solving Hard Problems 
4. Approximation Algorithms 
5. Approximable Problems 
6. Inapproximable Problems
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
3 Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Optimization Problems 
[Papadimitriou and Steiglitz, 1998] 
Definition (Instance of an Optimization Problem) 
An instance of an optimization problem is a pair (F, c), where F 
is any set, the domain of feasible points; c is the cost function, a 
mapping 
c : F ! R 
The problem is to find an f 2 F for which 
c(f )  c(y) 8 y 2 F 
Such a point f is called a globally optimal solution to the given 
instance, or, when no confusion can arise, simply an optimal 
solution.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
3 Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Optimization Problems 
[Papadimitriou and Steiglitz, 1998] 
Definition (Instance of an Optimization Problem) 
An instance of an optimization problem is a pair (F, c), where F 
is any set, the domain of feasible points; c is the cost function, a 
mapping 
c : F ! R 
The problem is to find an f 2 F for which 
c(f )  c(y) 8 y 2 F 
Such a point f is called a globally optimal solution to the given 
instance, or, when no confusion can arise, simply an optimal 
solution. 
Definition (Optimization Problem) 
An optimization problem is a set of instances of an optimization 
problem.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
4 Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Optimization Problems 
[Papadimitriou and Steiglitz, 1998] 
Two categories 
1. with continuous variables, where we look for a set of real 
numbers or a function 
2. with discrete variables, which we call combinatorial, where 
we look for an object from a finite, or possibly countably 
infinite set, typically an integer, set, permutation, or graph.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
5 Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Combinatorial Optimization Problem 
Definition (Combinatorial Optimization Problem 
[Papadimitriou and Steiglitz, 1998]) 
An optimization problem  = (D,R, cost, goal) consists of 
1. A set of valid instances D. Let I 2 D, denote an input 
instance. 
2. Each I 2 D has a set of feasible solutions, R(I ). 
3. Objective function, cost, that assigns a nonnegative 
rational number to each pair (I , SOL), where I is an instance 
and SOL is a feasible solution to I. 
4. Either minimization or maximization problem: 
goal 2 {min, max}.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
6 Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
NP-Hard Problems 
1. Clique Problem 
2. Independent Set Problem 
3. Vertex Cover Problem 
4. Traveling Salesman Problem
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
7 Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Max Clique Problem 
Definition (Max Clique Problem) 
Given a complete weighted graph, find the largest clique
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
7 Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Max Clique Problem 
Definition (Max Clique Problem) 
Given a complete weighted graph, find the largest clique 
Theorem 
Max Clique is NP-hard [Garey and Johnson, 1979].
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
7 Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Max Clique Problem 
Definition (Max Clique Problem) 
Given a complete weighted graph, find the largest clique 
Theorem 
Max Clique is NP-hard [Garey and Johnson, 1979]. 
Proposition 
The decision variant of MAX-SAT is NP-Complete 
[Garey and Johnson, 1979].
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
8 Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Max Clique Reduction from SAT 
Example 
(a _ b _ c) ^ (b _ ¯c _ ¯d) ^ (¯a _ c _ d) ^ (a _¯b 
_ ¯d)
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
9 Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Max Clique Reduction from SAT
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
10 Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Independent Set 
Definition (Max Independent Set Problem) 
Given a complete weighted graph, find the largest independent set
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
10 Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Independent Set 
Definition (Max Independent Set Problem) 
Given a complete weighted graph, find the largest independent set 
Theorem 
Independent Set Problem is NP-hard [Garey and Johnson, 1979].
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
11 Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Vertex Cover Problem 
Definition (Min Vertex Cover Problem) 
Given a complete weighted graph, find the minimum vertex cover.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
11 Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Vertex Cover Problem 
Definition (Min Vertex Cover Problem) 
Given a complete weighted graph, find the minimum vertex cover. 
Theorem 
Vertex Cover Problem is NP-hard [Garey and Johnson, 1979].
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
12 Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Traveling Salesman Problem (TSP) 
Definition 
INPUT: Edge weighted Graph G = (V,E) 
OUTPUT: Minimum cost Hamiltonian Cycle.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
13 Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Approaches in Solving NP-hard Problems 
I Exact algorithm always obtain the optimal solution 
I Approximation algorithm settle for good enough solutions. 
Goodness of solution is guaranteed and measured using 
approximation ratio. 
I Heuristic algorithms produce solutions, which are not 
guaranteed to be close to the optimum. The performance of 
heuristics is often evaluated empirically.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
14 Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Approaches in Solving NP-hard Problems 
Design technique have a well specified structure that even 
provides a framework for possible implementations 
Concepts formulate ideas and rough frameworks about how to 
attack hard algorithmic problems .
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
14 Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Approaches in Solving NP-hard Problems 
Design technique have a well specified structure that even 
provides a framework for possible implementations 
I Dynamic Programming 
I Greedy Schema 
I Divide and conquer 
I Branch and Bound 
I Local search 
I . . . 
Concepts formulate ideas and rough frameworks about how to 
attack hard algorithmic problems . 
I Approximation Algorithms 
I Parameterized Algorithms 
I Randomized Algorithms 
I . . .
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
15 Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Approximation Algorithms 
Definition (Approximation Algorithm 
[Williamson and Shmoy, 2010] ) 
An -approximation algorithm for an optimization problem is a 
polynomial-time algorithm that for all instances of the problem 
produces a solution whose value is within a factor of  of the 
value of an optimal solution. 
Given an problem instance I with an optimal solution Opt(I ), i.e. 
the cost function cost(Opt(I )) is minimum/maximum.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
15 Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Approximation Algorithms 
Definition (Approximation Algorithm 
[Williamson and Shmoy, 2010] ) 
An -approximation algorithm for an optimization problem is a 
polynomial-time algorithm that for all instances of the problem 
produces a solution whose value is within a factor of  of the 
value of an optimal solution. 
Given an problem instance I with an optimal solution Opt(I ), i.e. 
the cost function cost(Opt(I )) is minimum/maximum. 
I An algorithm for a minimization problem is called 
-approximative algorithm for some   1, if the algorithm 
obtains a maximum cost of  · cost(Opt(I )), for any input 
instance I .
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
15 Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Approximation Algorithms 
Definition (Approximation Algorithm 
[Williamson and Shmoy, 2010] ) 
An -approximation algorithm for an optimization problem is a 
polynomial-time algorithm that for all instances of the problem 
produces a solution whose value is within a factor of  of the 
value of an optimal solution. 
Given an problem instance I with an optimal solution Opt(I ), i.e. 
the cost function cost(Opt(I )) is minimum/maximum. 
I An algorithm for a minimization problem is called 
-approximative algorithm for some   1, if the algorithm 
obtains a maximum cost of  · cost(Opt(I )), for any input 
instance I . 
I An algorithm for a maximization problem is called 
-approximative algorithm, for some   1, if the algorithm 
obtains a minimum cost of  · cost(Opt(I )), for any input 
instance I .
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
16 Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Approximation Ratio 
I Minimization,   1 
cost(Opt(I ))  cost(SOL)   cost(Opt(I )) 
I Maximization,   1 
 cost(Opt(I ))  cost(SOL)  cost(Opt(I ))
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
17 Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Approximation Ratio 
I Additive Approximation Algorithms: 
SOL  OPT + c 
I Constant Approximation Algorithms: 
SOL  c · OPT 
I Logarithmic Approximation Algorithms: 
SOL = O(log n) · OPT 
I Polynomial Approximation Algorithms: 
SOL = O(nc) · OPT, 
where c  1
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
18 Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Example: Vertex Cover Problem 
Definition (Vertex Cover [Vazirani, 2001] ) 
Given a graph G = (V,E), a vertex cover is a subset C  V 
such that every edge has at least one end point incident at C.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
18 Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Example: Vertex Cover Problem 
Definition (Vertex Cover [Vazirani, 2001] ) 
Given a graph G = (V,E), a vertex cover is a subset C  V 
such that every edge has at least one end point incident at C.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
18 Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Example: Vertex Cover Problem 
Definition (Vertex Cover [Vazirani, 2001] ) 
Given a graph G = (V,E), a vertex cover is a subset C  V 
such that every edge has at least one end point incident at C. 
Definition (Minimum Vertex Cover Problem) 
Given a complete weighted graph G = (V,E), find a minimum 
cardinality vertex cover C.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
19 Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Maximal Matching 
Definition (Matchings) 
Given a graph G = (V,E), a subset M  E is called a matching 
if no two edges in M are adjacent in G. 
Figure : (a) Maximal matching (b) Perfect matching
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
20 Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
2-Approximation Algorithm 
1. Find a maximal matching in G, and output the set of 
matched vertices. 
Algorithm 1: 2-Approximation Algorithm for minimum vector 
cover problem
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
21 Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
2-Approximation Algorithm 
Theorem 
Algorithm 1 is a 2-approximation algorithm.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
21 Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
2-Approximation Algorithm 
Theorem 
Algorithm 1 is a 2-approximation algorithm. 
Proof. 
Let M be a maximal matching in G = (V,E) and OPT be the 
minimum vertex cover in G, then 
|M|  |OPT| 
The cover picked by the algorithm has cardinality |SOL|  2 · |M|. 
|SOL|  2 · |OPT|
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
22 Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
2-Approximation Algorithm 
Example:
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
22 Vertex Cover 
Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
2-Approximation Algorithm 
Example:
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
23 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Solving Traveling Salesman Problem 
INPUT: Edge weighted graph 
1. Compute a Minimum Spanning Tree for G 
2. Select a vertex r 2 V(G) to be the root vertex 
3. Let L be the list of vertices visited in a preorder walk 
OUTPUT: Hamiltonian Cycle that visits 
A preorder tree walk recursively visits every vertex in the 
tree, listing a vertex when it is first encountered , before 
any of its children are visited.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
24 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Computing the Minimum Spanning Tree
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
25 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Computing the Minimum Spanning Tree
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
26 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Computing the Minimum Spanning Tree
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
27 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Computing the Minimum Spanning Tree
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
28 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Computing the Minimum Spanning Tree
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
29 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Computing the Minimum Spanning Tree
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
30 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Computing the Minimum Spanning Tree
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
31 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Computing the Minimum Spanning Tree
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
32 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Computing the Minimum Spanning Tree
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
33 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Computing the Minimum Spanning Tree
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
34 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Computing the Minimum Spanning Tree
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
35 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Preorder
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
36 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Preorder
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
37 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Preorder
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
38 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Preorder
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
39 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Preorder
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
40 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Preorder
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
41 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Preorder
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
42 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Hamiltonian Cycle from the Preorder Walk
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
43 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Hamiltonian Cycle from the Preorder Walk 
4 + 4 + 10 + 15 + 10 + 16 = 59
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
44 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Total tour cost vs. the optimal cost 
Let H denote an optimal Hamiltonian tour in G. Let T be the 
minimum spanning tree of G. 
c(T)  c(H) 
Let W be the full length cost of the preorder walk. 
c(W) = 2c(T) 
Let H be the output Hamiltonian Cycle from the algorithm 
c(W)  c(H) 
Then 
c(H)  2c(H)
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
44 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Total tour cost vs. the optimal cost 
Let H denote an optimal Hamiltonian tour in G. Let T be the 
minimum spanning tree of G. 
c(T)  c(H) 
Let W be the full length cost of the preorder walk. 
c(W) = 2c(T) 
Let H be the output Hamiltonian Cycle from the algorithm 
c(W)  c(H) 
Then 
c(H)  2c(H) 
Approximation ratio () is 2
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
45 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Approximable Problems [Vazirani, 2001] 
Definition (APX) 
I An abbreviation for “Approximable, is the set of NP 
optimization problems that allow polynomial-time 
approximation algorithms with approximation ratio bounded 
by a constant.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
45 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Approximable Problems [Vazirani, 2001] 
Definition (APX) 
I An abbreviation for “Approximable, is the set of NP 
optimization problems that allow polynomial-time 
approximation algorithms with approximation ratio bounded 
by a constant. 
I Problems in this class have efficient algorithms that can find 
an answer within some fixed percentage of the optimal 
answer.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
46 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Polynomial-time Approximation Schemes 
Definition (PTAS [Aaronson et al., 2008]) 
The subclass of NPO problems that admit an approximation 
scheme in the following sense. 
For any   0, there is a polynomial-time algorithm that is 
guaranteed to find a solution whose cost is within a 1 +  factor 
of the optimum cost. Contains FPTAS, and is contained in APX.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
46 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Polynomial-time Approximation Schemes 
Definition (PTAS [Aaronson et al., 2008]) 
The subclass of NPO problems that admit an approximation 
scheme in the following sense. 
For any   0, there is a polynomial-time algorithm that is 
guaranteed to find a solution whose cost is within a 1 +  factor 
of the optimum cost. Contains FPTAS, and is contained in APX. 
Definition (FPTAS [Aaronson et al., 2008] ) 
The subclass of NPO problems that admit an approximation 
scheme in the following sense. 
For any   0, there is an algorithm that is guaranteed to find a 
solution whose cost is within a 1 +  factor of the optimum cost. 
Furthermore, the running time of the algorithm is polynomial in n 
(the size of the problem) and in 1/.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
47 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Approximation Ratio of well known Hard 
Problems 
1. FPTAS: Bin Packing Problem 
2. PTAS: Makespan Scheduling Problem 
3. APX: 
3.1 Min Steiner Tree Problem (1.55 Approximable) [Robins,2005] 
3.2 Min Metric TSP (3/2 Approximable) [Christofides,1977] 
3.3 Max SAT (0.77 Approximable) [Asano,1997] 
3.4 Vertex Cover (2 Approximable) [Vazirani,2001] 
4. MAX SNP 
4.1 Independent Set Problem 
4.2 Clique Problem 
4.3 Travelling Salesman Problem
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
48 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Complexity Classes [Ausiello et al., 2011] 
FPTAS ( PTAS ( APX ( NPO
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
49 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Inapproximable Problems 
Many problems have polynomial-time approximation schemes. 
However, there exists a class of problems that is not so easy 
[Williamson and Shmoy, 2010]. This class is called MAX SNP. 
Theorem 
For any MAXSNP-hard problem, there does not exist a 
polynomial-time approximation scheme, unless P = NP 
[Williamson and Shmoy, 2010].
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
49 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Inapproximable Problems 
Many problems have polynomial-time approximation schemes. 
However, there exists a class of problems that is not so easy 
[Williamson and Shmoy, 2010]. This class is called MAX SNP. 
Theorem 
For any MAXSNP-hard problem, there does not exist a 
polynomial-time approximation scheme, unless P = NP 
[Williamson and Shmoy, 2010].
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
49 Traveling Salesman Problem 
References 
CS 397 
October 14, 2014 
Inapproximable Problems 
Many problems have polynomial-time approximation schemes. 
However, there exists a class of problems that is not so easy 
[Williamson and Shmoy, 2010]. This class is called MAX SNP. 
Theorem 
For any MAXSNP-hard problem, there does not exist a 
polynomial-time approximation scheme, unless P = NP 
[Williamson and Shmoy, 2010]. 
Theorem 
If P6= NP, then for any constant   1, there is no 
polynomial-time approximation algorithm with approximation 
ratio  for the general travelling salesman problem.
50 
Approximation 
Algorithms 
Jhoirene B Clemente 
Optimization Problems 
Hard Combinatorial 
Optimization Problems 
Clique 
Independent Set Problem 
Vertex Cover 
Approaches in Solving 
Hard Problems 
Approximation 
Algorithms 
Vertex Cover 
Traveling Salesman Problem 
50 References 
CS 397 
October 14, 2014 
References I 
Aaronson, S., Kuperberg, G., and Granade, C. (2008). 
The complexity zoo.

Más contenido relacionado

La actualidad más candente

Dinive conquer algorithm
Dinive conquer algorithmDinive conquer algorithm
Dinive conquer algorithmMohd Arif
 
Divide and conquer - Quick sort
Divide and conquer - Quick sortDivide and conquer - Quick sort
Divide and conquer - Quick sortMadhu Bala
 
Backtracking & branch and bound
Backtracking & branch and boundBacktracking & branch and bound
Backtracking & branch and boundVipul Chauhan
 
Introduction to Optimization.ppt
Introduction to Optimization.pptIntroduction to Optimization.ppt
Introduction to Optimization.pptMonarjayMalbog1
 
Algorithms Lecture 2: Analysis of Algorithms I
Algorithms Lecture 2: Analysis of Algorithms IAlgorithms Lecture 2: Analysis of Algorithms I
Algorithms Lecture 2: Analysis of Algorithms IMohamed Loey
 
Greedy algorithms
Greedy algorithmsGreedy algorithms
Greedy algorithmsRajendran
 
Greedy Algorithm - Knapsack Problem
Greedy Algorithm - Knapsack ProblemGreedy Algorithm - Knapsack Problem
Greedy Algorithm - Knapsack ProblemMadhu Bala
 
P, NP, NP-Complete, and NP-Hard
P, NP, NP-Complete, and NP-HardP, NP, NP-Complete, and NP-Hard
P, NP, NP-Complete, and NP-HardAnimesh Chaturvedi
 
Daa:Dynamic Programing
Daa:Dynamic ProgramingDaa:Dynamic Programing
Daa:Dynamic Programingrupali_2bonde
 
08 decrease and conquer spring 15
08 decrease and conquer spring 1508 decrease and conquer spring 15
08 decrease and conquer spring 15Hira Gul
 
Introduction to Dynamic Programming, Principle of Optimality
Introduction to Dynamic Programming, Principle of OptimalityIntroduction to Dynamic Programming, Principle of Optimality
Introduction to Dynamic Programming, Principle of OptimalityBhavin Darji
 
Traveling salesman problem
Traveling salesman problemTraveling salesman problem
Traveling salesman problemJayesh Chauhan
 

La actualidad más candente (20)

Np complete
Np completeNp complete
Np complete
 
Dinive conquer algorithm
Dinive conquer algorithmDinive conquer algorithm
Dinive conquer algorithm
 
Divide and conquer - Quick sort
Divide and conquer - Quick sortDivide and conquer - Quick sort
Divide and conquer - Quick sort
 
NP completeness
NP completenessNP completeness
NP completeness
 
Backtracking & branch and bound
Backtracking & branch and boundBacktracking & branch and bound
Backtracking & branch and bound
 
Introduction to Optimization.ppt
Introduction to Optimization.pptIntroduction to Optimization.ppt
Introduction to Optimization.ppt
 
Dynamic pgmming
Dynamic pgmmingDynamic pgmming
Dynamic pgmming
 
Algorithms Lecture 2: Analysis of Algorithms I
Algorithms Lecture 2: Analysis of Algorithms IAlgorithms Lecture 2: Analysis of Algorithms I
Algorithms Lecture 2: Analysis of Algorithms I
 
Greedy algorithms
Greedy algorithmsGreedy algorithms
Greedy algorithms
 
Greedy Algorithm - Knapsack Problem
Greedy Algorithm - Knapsack ProblemGreedy Algorithm - Knapsack Problem
Greedy Algorithm - Knapsack Problem
 
Strassen.ppt
Strassen.pptStrassen.ppt
Strassen.ppt
 
Greedy algorithms
Greedy algorithmsGreedy algorithms
Greedy algorithms
 
P, NP, NP-Complete, and NP-Hard
P, NP, NP-Complete, and NP-HardP, NP, NP-Complete, and NP-Hard
P, NP, NP-Complete, and NP-Hard
 
Branch and bound
Branch and boundBranch and bound
Branch and bound
 
Daa:Dynamic Programing
Daa:Dynamic ProgramingDaa:Dynamic Programing
Daa:Dynamic Programing
 
08 decrease and conquer spring 15
08 decrease and conquer spring 1508 decrease and conquer spring 15
08 decrease and conquer spring 15
 
Nature-inspired algorithms
Nature-inspired algorithmsNature-inspired algorithms
Nature-inspired algorithms
 
Introduction to Dynamic Programming, Principle of Optimality
Introduction to Dynamic Programming, Principle of OptimalityIntroduction to Dynamic Programming, Principle of Optimality
Introduction to Dynamic Programming, Principle of Optimality
 
Chap8 new
Chap8 newChap8 new
Chap8 new
 
Traveling salesman problem
Traveling salesman problemTraveling salesman problem
Traveling salesman problem
 

Similar a Introduction to Approximation Algorithms

Reoptimization techniques for solving hard problems
Reoptimization techniques for solving hard problemsReoptimization techniques for solving hard problems
Reoptimization techniques for solving hard problemsJhoirene Clemente
 
DeepLearn2022 1. Goals & AlgorithmDesign.pdf
DeepLearn2022 1. Goals & AlgorithmDesign.pdfDeepLearn2022 1. Goals & AlgorithmDesign.pdf
DeepLearn2022 1. Goals & AlgorithmDesign.pdfSean Meyn
 
A Regularized Simplex Method
A Regularized Simplex MethodA Regularized Simplex Method
A Regularized Simplex MethodGina Brown
 
Reoptimization Algorithms and Persistent Turing Machines
Reoptimization Algorithms and Persistent Turing MachinesReoptimization Algorithms and Persistent Turing Machines
Reoptimization Algorithms and Persistent Turing MachinesJhoirene Clemente
 
Introduction to Optimization revised.ppt
Introduction to Optimization revised.pptIntroduction to Optimization revised.ppt
Introduction to Optimization revised.pptJahnaviGautam
 
LP linear programming (summary) (5s)
LP linear programming (summary) (5s)LP linear programming (summary) (5s)
LP linear programming (summary) (5s)Dionísio Carmo-Neto
 
Primal Dual
Primal DualPrimal Dual
Primal Dualcarlol
 
Mb0048 operations research
Mb0048 operations researchMb0048 operations research
Mb0048 operations researchsmumbahelp
 
Support Vector Machines
Support Vector MachinesSupport Vector Machines
Support Vector Machinesnextlib
 
Primal Dual
Primal DualPrimal Dual
Primal Dualcarlol
 
Molodtsov's Soft Set Theory and its Applications in Decision Making
Molodtsov's Soft Set Theory and its Applications in Decision MakingMolodtsov's Soft Set Theory and its Applications in Decision Making
Molodtsov's Soft Set Theory and its Applications in Decision Makinginventionjournals
 
Molodtsov's Soft Set Theory and its Applications in Decision Making
Molodtsov's Soft Set Theory and its Applications in Decision MakingMolodtsov's Soft Set Theory and its Applications in Decision Making
Molodtsov's Soft Set Theory and its Applications in Decision Makinginventionjournals
 
Limit & Derivative Problems by ANURAG TYAGI CLASSES (ATC)
Limit & Derivative Problems by ANURAG TYAGI CLASSES (ATC)Limit & Derivative Problems by ANURAG TYAGI CLASSES (ATC)
Limit & Derivative Problems by ANURAG TYAGI CLASSES (ATC)ANURAG TYAGI CLASSES (ATC)
 
Skiena algorithm 2007 lecture19 introduction to np complete
Skiena algorithm 2007 lecture19 introduction to np completeSkiena algorithm 2007 lecture19 introduction to np complete
Skiena algorithm 2007 lecture19 introduction to np completezukun
 

Similar a Introduction to Approximation Algorithms (20)

Reoptimization techniques for solving hard problems
Reoptimization techniques for solving hard problemsReoptimization techniques for solving hard problems
Reoptimization techniques for solving hard problems
 
DeepLearn2022 1. Goals & AlgorithmDesign.pdf
DeepLearn2022 1. Goals & AlgorithmDesign.pdfDeepLearn2022 1. Goals & AlgorithmDesign.pdf
DeepLearn2022 1. Goals & AlgorithmDesign.pdf
 
A Regularized Simplex Method
A Regularized Simplex MethodA Regularized Simplex Method
A Regularized Simplex Method
 
Reoptimization Algorithms and Persistent Turing Machines
Reoptimization Algorithms and Persistent Turing MachinesReoptimization Algorithms and Persistent Turing Machines
Reoptimization Algorithms and Persistent Turing Machines
 
Analysis of Algorithm
Analysis of AlgorithmAnalysis of Algorithm
Analysis of Algorithm
 
Introduction to optimization Problems
Introduction to optimization ProblemsIntroduction to optimization Problems
Introduction to optimization Problems
 
Introduction to Optimization revised.ppt
Introduction to Optimization revised.pptIntroduction to Optimization revised.ppt
Introduction to Optimization revised.ppt
 
LP linear programming (summary) (5s)
LP linear programming (summary) (5s)LP linear programming (summary) (5s)
LP linear programming (summary) (5s)
 
Primal Dual
Primal DualPrimal Dual
Primal Dual
 
Mb0048 operations research
Mb0048 operations researchMb0048 operations research
Mb0048 operations research
 
Approximation
ApproximationApproximation
Approximation
 
Fine Grained Complexity
Fine Grained ComplexityFine Grained Complexity
Fine Grained Complexity
 
Support Vector Machines
Support Vector MachinesSupport Vector Machines
Support Vector Machines
 
Primal Dual
Primal DualPrimal Dual
Primal Dual
 
Approx
ApproxApprox
Approx
 
Molodtsov's Soft Set Theory and its Applications in Decision Making
Molodtsov's Soft Set Theory and its Applications in Decision MakingMolodtsov's Soft Set Theory and its Applications in Decision Making
Molodtsov's Soft Set Theory and its Applications in Decision Making
 
Molodtsov's Soft Set Theory and its Applications in Decision Making
Molodtsov's Soft Set Theory and its Applications in Decision MakingMolodtsov's Soft Set Theory and its Applications in Decision Making
Molodtsov's Soft Set Theory and its Applications in Decision Making
 
Boyd 4.6, 4.7
Boyd 4.6, 4.7Boyd 4.6, 4.7
Boyd 4.6, 4.7
 
Limit & Derivative Problems by ANURAG TYAGI CLASSES (ATC)
Limit & Derivative Problems by ANURAG TYAGI CLASSES (ATC)Limit & Derivative Problems by ANURAG TYAGI CLASSES (ATC)
Limit & Derivative Problems by ANURAG TYAGI CLASSES (ATC)
 
Skiena algorithm 2007 lecture19 introduction to np complete
Skiena algorithm 2007 lecture19 introduction to np completeSkiena algorithm 2007 lecture19 introduction to np complete
Skiena algorithm 2007 lecture19 introduction to np complete
 

Último

Botany 4th semester series (krishna).pdf
Botany 4th semester series (krishna).pdfBotany 4th semester series (krishna).pdf
Botany 4th semester series (krishna).pdfSumit Kumar yadav
 
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Sérgio Sacani
 
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 60009654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000Sapana Sha
 
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdfPests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdfPirithiRaju
 
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptxSCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptxRizalinePalanog2
 
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...Lokesh Kothari
 
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsHubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsSérgio Sacani
 
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.Nitya salvi
 
Bacterial Identification and Classifications
Bacterial Identification and ClassificationsBacterial Identification and Classifications
Bacterial Identification and ClassificationsAreesha Ahmad
 
Seismic Method Estimate velocity from seismic data.pptx
Seismic Method Estimate velocity from seismic  data.pptxSeismic Method Estimate velocity from seismic  data.pptx
Seismic Method Estimate velocity from seismic data.pptxAlMamun560346
 
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls Agency
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls AgencyHire 💕 9907093804 Hooghly Call Girls Service Call Girls Agency
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls AgencySheetal Arora
 
Chemistry 4th semester series (krishna).pdf
Chemistry 4th semester series (krishna).pdfChemistry 4th semester series (krishna).pdf
Chemistry 4th semester series (krishna).pdfSumit Kumar yadav
 
Presentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxPresentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxgindu3009
 
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICESAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICEayushi9330
 
Zoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdfZoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdfSumit Kumar yadav
 
Forensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdfForensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdfrohankumarsinghrore1
 
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRStunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRDelhi Call girls
 
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bAsymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bSérgio Sacani
 
Green chemistry and Sustainable development.pptx
Green chemistry  and Sustainable development.pptxGreen chemistry  and Sustainable development.pptx
Green chemistry and Sustainable development.pptxRajatChauhan518211
 
Botany 4th semester file By Sumit Kumar yadav.pdf
Botany 4th semester file By Sumit Kumar yadav.pdfBotany 4th semester file By Sumit Kumar yadav.pdf
Botany 4th semester file By Sumit Kumar yadav.pdfSumit Kumar yadav
 

Último (20)

Botany 4th semester series (krishna).pdf
Botany 4th semester series (krishna).pdfBotany 4th semester series (krishna).pdf
Botany 4th semester series (krishna).pdf
 
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
 
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 60009654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
 
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdfPests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
 
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptxSCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
 
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
 
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsHubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
 
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
 
Bacterial Identification and Classifications
Bacterial Identification and ClassificationsBacterial Identification and Classifications
Bacterial Identification and Classifications
 
Seismic Method Estimate velocity from seismic data.pptx
Seismic Method Estimate velocity from seismic  data.pptxSeismic Method Estimate velocity from seismic  data.pptx
Seismic Method Estimate velocity from seismic data.pptx
 
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls Agency
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls AgencyHire 💕 9907093804 Hooghly Call Girls Service Call Girls Agency
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls Agency
 
Chemistry 4th semester series (krishna).pdf
Chemistry 4th semester series (krishna).pdfChemistry 4th semester series (krishna).pdf
Chemistry 4th semester series (krishna).pdf
 
Presentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxPresentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptx
 
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICESAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICE
 
Zoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdfZoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdf
 
Forensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdfForensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdf
 
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRStunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
 
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bAsymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
 
Green chemistry and Sustainable development.pptx
Green chemistry  and Sustainable development.pptxGreen chemistry  and Sustainable development.pptx
Green chemistry and Sustainable development.pptx
 
Botany 4th semester file By Sumit Kumar yadav.pdf
Botany 4th semester file By Sumit Kumar yadav.pdfBotany 4th semester file By Sumit Kumar yadav.pdf
Botany 4th semester file By Sumit Kumar yadav.pdf
 

Introduction to Approximation Algorithms

  • 1. Approximation Algorithms Jhoirene B Clemente Algorithms and Complexity Lab Department of Computer Science University of the Philippines Diliman October 14, 2014
  • 2. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Overview 1. Combinatorial Optimization Problems 2. NP-Hard Problems 2.1 Clique 2.2 Independent Set Problem 2.3 Vertex Cover 2.4 Traveling Salesman Problem 3. Approaches in Solving Hard Problems 4. Approximation Algorithms 5. Approximable Problems 6. Inapproximable Problems
  • 3. 50 Approximation Algorithms Jhoirene B Clemente 3 Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Optimization Problems [Papadimitriou and Steiglitz, 1998] Definition (Instance of an Optimization Problem) An instance of an optimization problem is a pair (F, c), where F is any set, the domain of feasible points; c is the cost function, a mapping c : F ! R The problem is to find an f 2 F for which c(f ) c(y) 8 y 2 F Such a point f is called a globally optimal solution to the given instance, or, when no confusion can arise, simply an optimal solution.
  • 4. 50 Approximation Algorithms Jhoirene B Clemente 3 Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Optimization Problems [Papadimitriou and Steiglitz, 1998] Definition (Instance of an Optimization Problem) An instance of an optimization problem is a pair (F, c), where F is any set, the domain of feasible points; c is the cost function, a mapping c : F ! R The problem is to find an f 2 F for which c(f ) c(y) 8 y 2 F Such a point f is called a globally optimal solution to the given instance, or, when no confusion can arise, simply an optimal solution. Definition (Optimization Problem) An optimization problem is a set of instances of an optimization problem.
  • 5. 50 Approximation Algorithms Jhoirene B Clemente 4 Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Optimization Problems [Papadimitriou and Steiglitz, 1998] Two categories 1. with continuous variables, where we look for a set of real numbers or a function 2. with discrete variables, which we call combinatorial, where we look for an object from a finite, or possibly countably infinite set, typically an integer, set, permutation, or graph.
  • 6. 50 Approximation Algorithms Jhoirene B Clemente 5 Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Combinatorial Optimization Problem Definition (Combinatorial Optimization Problem [Papadimitriou and Steiglitz, 1998]) An optimization problem = (D,R, cost, goal) consists of 1. A set of valid instances D. Let I 2 D, denote an input instance. 2. Each I 2 D has a set of feasible solutions, R(I ). 3. Objective function, cost, that assigns a nonnegative rational number to each pair (I , SOL), where I is an instance and SOL is a feasible solution to I. 4. Either minimization or maximization problem: goal 2 {min, max}.
  • 7. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems 6 Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 NP-Hard Problems 1. Clique Problem 2. Independent Set Problem 3. Vertex Cover Problem 4. Traveling Salesman Problem
  • 8. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems 7 Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Max Clique Problem Definition (Max Clique Problem) Given a complete weighted graph, find the largest clique
  • 9. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems 7 Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Max Clique Problem Definition (Max Clique Problem) Given a complete weighted graph, find the largest clique Theorem Max Clique is NP-hard [Garey and Johnson, 1979].
  • 10. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems 7 Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Max Clique Problem Definition (Max Clique Problem) Given a complete weighted graph, find the largest clique Theorem Max Clique is NP-hard [Garey and Johnson, 1979]. Proposition The decision variant of MAX-SAT is NP-Complete [Garey and Johnson, 1979].
  • 11. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems 8 Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Max Clique Reduction from SAT Example (a _ b _ c) ^ (b _ ¯c _ ¯d) ^ (¯a _ c _ d) ^ (a _¯b _ ¯d)
  • 12. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems 9 Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Max Clique Reduction from SAT
  • 13. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique 10 Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Independent Set Definition (Max Independent Set Problem) Given a complete weighted graph, find the largest independent set
  • 14. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique 10 Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Independent Set Definition (Max Independent Set Problem) Given a complete weighted graph, find the largest independent set Theorem Independent Set Problem is NP-hard [Garey and Johnson, 1979].
  • 15. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem 11 Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Vertex Cover Problem Definition (Min Vertex Cover Problem) Given a complete weighted graph, find the minimum vertex cover.
  • 16. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem 11 Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Vertex Cover Problem Definition (Min Vertex Cover Problem) Given a complete weighted graph, find the minimum vertex cover. Theorem Vertex Cover Problem is NP-hard [Garey and Johnson, 1979].
  • 17. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem 12 Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Traveling Salesman Problem (TSP) Definition INPUT: Edge weighted Graph G = (V,E) OUTPUT: Minimum cost Hamiltonian Cycle.
  • 18. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover 13 Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Approaches in Solving NP-hard Problems I Exact algorithm always obtain the optimal solution I Approximation algorithm settle for good enough solutions. Goodness of solution is guaranteed and measured using approximation ratio. I Heuristic algorithms produce solutions, which are not guaranteed to be close to the optimum. The performance of heuristics is often evaluated empirically.
  • 19. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover 14 Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Approaches in Solving NP-hard Problems Design technique have a well specified structure that even provides a framework for possible implementations Concepts formulate ideas and rough frameworks about how to attack hard algorithmic problems .
  • 20. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover 14 Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Approaches in Solving NP-hard Problems Design technique have a well specified structure that even provides a framework for possible implementations I Dynamic Programming I Greedy Schema I Divide and conquer I Branch and Bound I Local search I . . . Concepts formulate ideas and rough frameworks about how to attack hard algorithmic problems . I Approximation Algorithms I Parameterized Algorithms I Randomized Algorithms I . . .
  • 21. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems 15 Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Approximation Algorithms Definition (Approximation Algorithm [Williamson and Shmoy, 2010] ) An -approximation algorithm for an optimization problem is a polynomial-time algorithm that for all instances of the problem produces a solution whose value is within a factor of of the value of an optimal solution. Given an problem instance I with an optimal solution Opt(I ), i.e. the cost function cost(Opt(I )) is minimum/maximum.
  • 22. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems 15 Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Approximation Algorithms Definition (Approximation Algorithm [Williamson and Shmoy, 2010] ) An -approximation algorithm for an optimization problem is a polynomial-time algorithm that for all instances of the problem produces a solution whose value is within a factor of of the value of an optimal solution. Given an problem instance I with an optimal solution Opt(I ), i.e. the cost function cost(Opt(I )) is minimum/maximum. I An algorithm for a minimization problem is called -approximative algorithm for some 1, if the algorithm obtains a maximum cost of · cost(Opt(I )), for any input instance I .
  • 23. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems 15 Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Approximation Algorithms Definition (Approximation Algorithm [Williamson and Shmoy, 2010] ) An -approximation algorithm for an optimization problem is a polynomial-time algorithm that for all instances of the problem produces a solution whose value is within a factor of of the value of an optimal solution. Given an problem instance I with an optimal solution Opt(I ), i.e. the cost function cost(Opt(I )) is minimum/maximum. I An algorithm for a minimization problem is called -approximative algorithm for some 1, if the algorithm obtains a maximum cost of · cost(Opt(I )), for any input instance I . I An algorithm for a maximization problem is called -approximative algorithm, for some 1, if the algorithm obtains a minimum cost of · cost(Opt(I )), for any input instance I .
  • 24. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems 16 Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Approximation Ratio I Minimization, 1 cost(Opt(I )) cost(SOL) cost(Opt(I )) I Maximization, 1 cost(Opt(I )) cost(SOL) cost(Opt(I ))
  • 25. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems 17 Approximation Algorithms Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Approximation Ratio I Additive Approximation Algorithms: SOL OPT + c I Constant Approximation Algorithms: SOL c · OPT I Logarithmic Approximation Algorithms: SOL = O(log n) · OPT I Polynomial Approximation Algorithms: SOL = O(nc) · OPT, where c 1
  • 26. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms 18 Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Example: Vertex Cover Problem Definition (Vertex Cover [Vazirani, 2001] ) Given a graph G = (V,E), a vertex cover is a subset C V such that every edge has at least one end point incident at C.
  • 27. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms 18 Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Example: Vertex Cover Problem Definition (Vertex Cover [Vazirani, 2001] ) Given a graph G = (V,E), a vertex cover is a subset C V such that every edge has at least one end point incident at C.
  • 28. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms 18 Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Example: Vertex Cover Problem Definition (Vertex Cover [Vazirani, 2001] ) Given a graph G = (V,E), a vertex cover is a subset C V such that every edge has at least one end point incident at C. Definition (Minimum Vertex Cover Problem) Given a complete weighted graph G = (V,E), find a minimum cardinality vertex cover C.
  • 29. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms 19 Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 Maximal Matching Definition (Matchings) Given a graph G = (V,E), a subset M E is called a matching if no two edges in M are adjacent in G. Figure : (a) Maximal matching (b) Perfect matching
  • 30. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms 20 Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 2-Approximation Algorithm 1. Find a maximal matching in G, and output the set of matched vertices. Algorithm 1: 2-Approximation Algorithm for minimum vector cover problem
  • 31. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms 21 Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 2-Approximation Algorithm Theorem Algorithm 1 is a 2-approximation algorithm.
  • 32. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms 21 Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 2-Approximation Algorithm Theorem Algorithm 1 is a 2-approximation algorithm. Proof. Let M be a maximal matching in G = (V,E) and OPT be the minimum vertex cover in G, then |M| |OPT| The cover picked by the algorithm has cardinality |SOL| 2 · |M|. |SOL| 2 · |OPT|
  • 33. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms 22 Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 2-Approximation Algorithm Example:
  • 34. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms 22 Vertex Cover Traveling Salesman Problem References CS 397 October 14, 2014 2-Approximation Algorithm Example:
  • 35. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 23 Traveling Salesman Problem References CS 397 October 14, 2014 Solving Traveling Salesman Problem INPUT: Edge weighted graph 1. Compute a Minimum Spanning Tree for G 2. Select a vertex r 2 V(G) to be the root vertex 3. Let L be the list of vertices visited in a preorder walk OUTPUT: Hamiltonian Cycle that visits A preorder tree walk recursively visits every vertex in the tree, listing a vertex when it is first encountered , before any of its children are visited.
  • 36. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 24 Traveling Salesman Problem References CS 397 October 14, 2014 Computing the Minimum Spanning Tree
  • 37. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 25 Traveling Salesman Problem References CS 397 October 14, 2014 Computing the Minimum Spanning Tree
  • 38. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 26 Traveling Salesman Problem References CS 397 October 14, 2014 Computing the Minimum Spanning Tree
  • 39. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 27 Traveling Salesman Problem References CS 397 October 14, 2014 Computing the Minimum Spanning Tree
  • 40. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 28 Traveling Salesman Problem References CS 397 October 14, 2014 Computing the Minimum Spanning Tree
  • 41. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 29 Traveling Salesman Problem References CS 397 October 14, 2014 Computing the Minimum Spanning Tree
  • 42. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 30 Traveling Salesman Problem References CS 397 October 14, 2014 Computing the Minimum Spanning Tree
  • 43. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 31 Traveling Salesman Problem References CS 397 October 14, 2014 Computing the Minimum Spanning Tree
  • 44. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 32 Traveling Salesman Problem References CS 397 October 14, 2014 Computing the Minimum Spanning Tree
  • 45. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 33 Traveling Salesman Problem References CS 397 October 14, 2014 Computing the Minimum Spanning Tree
  • 46. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 34 Traveling Salesman Problem References CS 397 October 14, 2014 Computing the Minimum Spanning Tree
  • 47. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 35 Traveling Salesman Problem References CS 397 October 14, 2014 Preorder
  • 48. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 36 Traveling Salesman Problem References CS 397 October 14, 2014 Preorder
  • 49. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 37 Traveling Salesman Problem References CS 397 October 14, 2014 Preorder
  • 50. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 38 Traveling Salesman Problem References CS 397 October 14, 2014 Preorder
  • 51. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 39 Traveling Salesman Problem References CS 397 October 14, 2014 Preorder
  • 52. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 40 Traveling Salesman Problem References CS 397 October 14, 2014 Preorder
  • 53. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 41 Traveling Salesman Problem References CS 397 October 14, 2014 Preorder
  • 54. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 42 Traveling Salesman Problem References CS 397 October 14, 2014 Hamiltonian Cycle from the Preorder Walk
  • 55. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 43 Traveling Salesman Problem References CS 397 October 14, 2014 Hamiltonian Cycle from the Preorder Walk 4 + 4 + 10 + 15 + 10 + 16 = 59
  • 56. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 44 Traveling Salesman Problem References CS 397 October 14, 2014 Total tour cost vs. the optimal cost Let H denote an optimal Hamiltonian tour in G. Let T be the minimum spanning tree of G. c(T) c(H) Let W be the full length cost of the preorder walk. c(W) = 2c(T) Let H be the output Hamiltonian Cycle from the algorithm c(W) c(H) Then c(H) 2c(H)
  • 57. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 44 Traveling Salesman Problem References CS 397 October 14, 2014 Total tour cost vs. the optimal cost Let H denote an optimal Hamiltonian tour in G. Let T be the minimum spanning tree of G. c(T) c(H) Let W be the full length cost of the preorder walk. c(W) = 2c(T) Let H be the output Hamiltonian Cycle from the algorithm c(W) c(H) Then c(H) 2c(H) Approximation ratio () is 2
  • 58. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 45 Traveling Salesman Problem References CS 397 October 14, 2014 Approximable Problems [Vazirani, 2001] Definition (APX) I An abbreviation for “Approximable, is the set of NP optimization problems that allow polynomial-time approximation algorithms with approximation ratio bounded by a constant.
  • 59. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 45 Traveling Salesman Problem References CS 397 October 14, 2014 Approximable Problems [Vazirani, 2001] Definition (APX) I An abbreviation for “Approximable, is the set of NP optimization problems that allow polynomial-time approximation algorithms with approximation ratio bounded by a constant. I Problems in this class have efficient algorithms that can find an answer within some fixed percentage of the optimal answer.
  • 60. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 46 Traveling Salesman Problem References CS 397 October 14, 2014 Polynomial-time Approximation Schemes Definition (PTAS [Aaronson et al., 2008]) The subclass of NPO problems that admit an approximation scheme in the following sense. For any 0, there is a polynomial-time algorithm that is guaranteed to find a solution whose cost is within a 1 + factor of the optimum cost. Contains FPTAS, and is contained in APX.
  • 61. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 46 Traveling Salesman Problem References CS 397 October 14, 2014 Polynomial-time Approximation Schemes Definition (PTAS [Aaronson et al., 2008]) The subclass of NPO problems that admit an approximation scheme in the following sense. For any 0, there is a polynomial-time algorithm that is guaranteed to find a solution whose cost is within a 1 + factor of the optimum cost. Contains FPTAS, and is contained in APX. Definition (FPTAS [Aaronson et al., 2008] ) The subclass of NPO problems that admit an approximation scheme in the following sense. For any 0, there is an algorithm that is guaranteed to find a solution whose cost is within a 1 + factor of the optimum cost. Furthermore, the running time of the algorithm is polynomial in n (the size of the problem) and in 1/.
  • 62. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 47 Traveling Salesman Problem References CS 397 October 14, 2014 Approximation Ratio of well known Hard Problems 1. FPTAS: Bin Packing Problem 2. PTAS: Makespan Scheduling Problem 3. APX: 3.1 Min Steiner Tree Problem (1.55 Approximable) [Robins,2005] 3.2 Min Metric TSP (3/2 Approximable) [Christofides,1977] 3.3 Max SAT (0.77 Approximable) [Asano,1997] 3.4 Vertex Cover (2 Approximable) [Vazirani,2001] 4. MAX SNP 4.1 Independent Set Problem 4.2 Clique Problem 4.3 Travelling Salesman Problem
  • 63. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 48 Traveling Salesman Problem References CS 397 October 14, 2014 Complexity Classes [Ausiello et al., 2011] FPTAS ( PTAS ( APX ( NPO
  • 64. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 49 Traveling Salesman Problem References CS 397 October 14, 2014 Inapproximable Problems Many problems have polynomial-time approximation schemes. However, there exists a class of problems that is not so easy [Williamson and Shmoy, 2010]. This class is called MAX SNP. Theorem For any MAXSNP-hard problem, there does not exist a polynomial-time approximation scheme, unless P = NP [Williamson and Shmoy, 2010].
  • 65. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 49 Traveling Salesman Problem References CS 397 October 14, 2014 Inapproximable Problems Many problems have polynomial-time approximation schemes. However, there exists a class of problems that is not so easy [Williamson and Shmoy, 2010]. This class is called MAX SNP. Theorem For any MAXSNP-hard problem, there does not exist a polynomial-time approximation scheme, unless P = NP [Williamson and Shmoy, 2010].
  • 66. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover 49 Traveling Salesman Problem References CS 397 October 14, 2014 Inapproximable Problems Many problems have polynomial-time approximation schemes. However, there exists a class of problems that is not so easy [Williamson and Shmoy, 2010]. This class is called MAX SNP. Theorem For any MAXSNP-hard problem, there does not exist a polynomial-time approximation scheme, unless P = NP [Williamson and Shmoy, 2010]. Theorem If P6= NP, then for any constant 1, there is no polynomial-time approximation algorithm with approximation ratio for the general travelling salesman problem.
  • 67. 50 Approximation Algorithms Jhoirene B Clemente Optimization Problems Hard Combinatorial Optimization Problems Clique Independent Set Problem Vertex Cover Approaches in Solving Hard Problems Approximation Algorithms Vertex Cover Traveling Salesman Problem 50 References CS 397 October 14, 2014 References I Aaronson, S., Kuperberg, G., and Granade, C. (2008). The complexity zoo.