Approximation Algorithm: The Vertex-cover Problem Sudipta Saha Shubha 1205014 Repon Kumar Roy 1205002 Motivational Problem Approximation Algorithm: The Vertex-cover Problem Sudipta Saha Shubha 1205014 Repon Kumar Roy 1205002 Department of Computer Science and Engineering Bangladesh University of Engineering and Technology December 24, 2015
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
MotivationalProblem
Approximation Algorithm: The Vertex-coverProblem
Sudipta Saha Shubha 1205014Repon Kumar Roy 1205002
Department of Computer Science and EngineeringBangladesh University of Engineering and Technology
December 24, 2015
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
MotivationalProblem
Table of Contents
1 Motivational Problem
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
MotivationalProblem
Motivational Problem : Modeling in Graph
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
MotivationalProblem
Formal Definition of Vertex Cover Problem
A vertex cover of an undirected graph
G = (V ,E ) is a subset V ′ ∈ V such that
if (u, v) is an edge of G , then either
u ∈ V ′ or v ∈ V ′(or both).
The vertex-cover problem is to find a
vertex cover of minimum size in a given
undirected graph. We call such a vertex
cover an optimal vertex cover.
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
MotivationalProblem
Formal Definition of Vertex Cover Problem
A vertex cover of an undirected graph
G = (V ,E ) is a subset V ′ ∈ V such that
if (u, v) is an edge of G , then either
u ∈ V ′ or v ∈ V ′(or both).
The vertex-cover problem is to find a
vertex cover of minimum size in a given
undirected graph. We call such a vertex
cover an optimal vertex cover.
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
MotivationalProblem
Formal Definition of Vertex Cover Problem
A vertex cover of an undirected graph
G = (V ,E ) is a subset V ′ ∈ V such that
if (u, v) is an edge of G , then either
u ∈ V ′ or v ∈ V ′(or both).
The vertex-cover problem is to find a
vertex cover of minimum size in a given
undirected graph. We call such a vertex
cover an optimal vertex cover.
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
MotivationalProblem
A Solution may be . . .
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
Way to Solution . . .
Time Complexity is O(2n × n)Time Complexity is exponential oninputNP-complete problem
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
Way to Solution . . .
Time Complexity is O(2n × n)
Time Complexity is exponential oninputNP-complete problem
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
Way to Solution . . .
Time Complexity is O(2n × n)Time Complexity is exponential oninput
NP-complete problem
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Way to Solution . . .
Time Complexity is O(2n × n)Time Complexity is exponential oninputNP-complete problem
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Way to Solution . . .
A language L ⊆ {0, 1}∗ isNP-complete if1. L ∈ NP , and2. L′ ≤p L for every L′ ∈ NP .
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Way to Solution . . .
Can be solved using dynamicprogramming in polynomial timewhen input graph is a tree.
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Way to Solution . . .
Needs approximation algorithm forgeneral graphWe call an algorithm that returnsnear-optimal solutions anapproximation algorithm
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Way to Solution . . .
Needs approximation algorithm forgeneral graph
We call an algorithm that returnsnear-optimal solutions anapproximation algorithm
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Way to Solution . . .
Needs approximation algorithm forgeneral graphWe call an algorithm that returnsnear-optimal solutions anapproximation algorithm
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Table of Contents
2 The Approximate Algorithm
3 Applications
4 Some Questions
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Simulation
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Simulation
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Simulation
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Simulation
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Simulation
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Time Complexity
O(V + E )
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Proof of 2-Approximation
We say that an algorithm for a problem has anapproximation ratio of ρ(n) if, for any input ofsize n, the cost X of the solution produced bythe algorithm is within a factor of ρ(n) of thecost X ∗ of an optimal solution:
max( XX ∗ ,
X ∗
X )≤ ρ(n).
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Proof of 2-Approximation(Is it a Vertex-Cover?)
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Proof of 2-Approximation
We need to prove that |X | ≤ 2|X ∗|We will first prove that |X ∗| ≥ |Y |
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Proof of 2-Approximation
We need to prove that |X | ≤ 2|X ∗|
We will first prove that |X ∗| ≥ |Y |
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Proof of 2-Approximation
We need to prove that |X | ≤ 2|X ∗|We will first prove that |X ∗| ≥ |Y |
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Proof of 2-Approximation(|X ∗| ≥ |Y |)
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Proof of 2-Approximation(|X ∗| ≥ |Y |) : AnotherSubset of Arbitrary Edges
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Proof of 2-Approximation(|X ∗| ≥ |Y |) : AnotherSubset of Arbitrary Edges
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Proof of 2-Approximation(|X ∗| ≥ |Y |) : AnotherSubset of Arbitrary Edges
ApproximationAlgorithm:
TheVertex-coverProblem
Sudipta SahaShubha1205014
Repon KumarRoy 1205002
TheApproximateAlgorithm
Applications
SomeQuestions
Proof of 2-Approximation(|X ∗| ≥ |Y |) : AnotherSubset of Arbitrary Edges