Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Approximation algorithm
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Introduction == A simple example of an approximation algorithm is one for the [[Vertex cover|minimum vertex cover]] problem, where the goal is to choose the smallest set of vertices such that every edge in the input graph contains at least one chosen vertex. One way to find a [[vertex cover]] is to repeat the following process: find an uncovered edge, add both its endpoints to the cover, and remove all edges incident to either vertex from the graph. As any vertex cover of the input graph must use a distinct vertex to cover each edge that was considered in the process (since it forms a [[Matching (graph theory)|matching]]), the vertex cover produced, therefore, is at most twice as large as the optimal one. In other words, this is a [[constant-factor approximation algorithm]] with an approximation factor of 2. Under the recent [[unique games conjecture]], this factor is even the best possible one.<ref>{{Cite journal|last1=Khot|first1=Subhash|last2=Regev|first2=Oded|date=2008-05-01|title=Vertex cover might be hard to approximate to within 2βΞ΅|journal=Journal of Computer and System Sciences|series=Computational Complexity 2003|volume=74|issue=3|pages=335β349|doi=10.1016/j.jcss.2007.06.019|doi-access=free}}</ref> NP-hard problems vary greatly in their approximability; some, such as the [[knapsack problem]], can be approximated within a multiplicative factor <math>1 + \epsilon</math>, for any fixed <math>\epsilon > 0</math>, and therefore produce solutions arbitrarily close to the optimum (such a family of approximation algorithms is called a [[polynomial-time approximation scheme]] or PTAS). Others are impossible to approximate within any constant, or even polynomial, factor unless [[P = NP]], as in the case of the [[Clique problem|maximum clique problem]]. Therefore, an important benefit of studying approximation algorithms is a fine-grained classification of the difficulty of various NP-hard problems beyond the one afforded by the [[NP-completeness|theory of NP-completeness]]. In other words, although NP-complete problems may be equivalent (under polynomial-time reductions) to each other from the perspective of exact solutions, the corresponding optimization problems behave very differently from the perspective of approximate solutions.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)