Independent set problem

Independent set problem

In mathematics, the independent set problem (IS) is a well-known problem in graph theory and combinatorics. The independent set problem is known to be NP-complete. It is almost identical to the clique problem.

Description

Given a graph "G", an "independent set" is a subset of its vertices that are pairwise not adjacent. In other words, the subgraph induced by these vertices has no edges, only isolated vertices. Then, the independent set problem asks: given a graph "G" and a positive integer "k", does "G" have an independent set of cardinality at least "k"?

The corresponding optimization problem is the maximum independent set problem, which attempts to find the largest independent set in a graph. Given a solution to the decision problem, binary search can be used to solve the optimization problem with O(log "|V|") invocations of the decision problem's solution. The optimization problem is known to have no constant-factor approximation algorithm if P≠NP.

Independent set problems and clique problems may be easily translated into each other: an independent set in a graph "G" is a clique in the complement graph of "G", and vice versa.

Algorithms

The simplest brute force algorithm for independent set simply examines every vertex subset of size at least "k" and checks whether it is an independent set. This requires n!/(n - k)!k! where n is the order of the graph.

A much easier problem to solve is that of finding a maximal independent set, which is an independent set not contained in any other independent set. We begin with a single vertex. We find a vertex not adjacent to it and add it, then find a vertex adjacent to neither of these and add it, and so on until we can find no more vertices to add. At this time the set is maximal independent. More complex algorithms are known for listing all maximal independent sets, but the number of such sets can be exponential in the number of vertices. This can be seen by constructing a graph containing "n" disconnected triangles. The maximum independent set is obviously of order "n", taking one vertex from each triangle. The number of maximal independent sets is therefore 3n harv|Moon|Moser|1965.

Proof of NP-completeness

It's easy to see that the problem is in NP, since if we have a subset of vertices, we can check to make sure there are no edges between any two of them in polynomial time. To show the problem is NP-hard, we will use a reduction from another NP-complete problem.

Assume we already know Cook's result that the boolean satisfiability problem is NP-complete. One can efficiently reduce any boolean formula to conjunctive normal form (CNF). In conjunctive normal form:
* The formula is a conjunction ("and") of clauses.
* Each clause is a disjunction ("or") of literals.
* Each literal is either a variable or its negation.For example, the following formula is in CNF form, where ~ denotes negation:

:("x"1 or ~"x"2 or ~"x"3) and ("x"1 or "x"2 or "x"4)

Such a formula is "satisfiable" if we can assign true/false values to each variable in such a way that at least one literal in every clause is true. For example, any assignment with "x"2 false and "x"4 true satisfies the above formula. The problem of determining whether a formula in CNF form is satisfiable is also NP-complete and is called CNF-SAT.

Now, we describe a polynomial-time many-one reduction from CNF-SAT to the independent set problem. First, create a vertex for every literal in the formula; include duplicate vertices for those occurring more than once. Put an edge between:
# Any two literals which are negations of one another.
# Any two literals which are in the same clause.For example, in our example above, "x"2 would be adjacent to ~"x"2, the first "x"1 would be adjacent to ~"x"3, and the second "x"1 would be adjacent to "x"4.

We argue now that this graph has an independent set of size at least "k", where "k" is the number of clauses, if and only if the original formula was satisfiable.

Suppose we have an assignment satisfying the original formula. Then we can choose one literal from each clause which is made true by this assignment. This set is independent, because it only includes one literal from each clause (no edges of type 2), and because no assignment makes both a literal and its negation true (no edges of type 1).

On the other hand, suppose we have an independent set of size "k" or greater. It can't contain any two literals in the same clause, since these are pairwise adjacent. But then, since there are at least "k" vertices and "k" clauses, we must have at least one in each clause (in fact exactly one). It also can't contain both a literal and its negation, because there are edges between these. That means it's easy to choose an assignment that makes these "k" clauses all true, and this assignment will satisfy the original formula.

What makes this reduction to independent set so simple is the capacity of the edges in the graph to express "constraints", such as the necessity of never choosing both a literal and its negation. The graph coloring problem also benefits from this useful property.

References

* Richard Karp. Reducibility Among Combinatorial Problems. "Proceedings of a Symposium on the Complexity of Computer Computations". 1972.

* A1.2: GT20, pg.194.

*citation
last1 = Moon | first1 = J. W. | authorlink2 = Leo Moser | last2 = Moser | first2 = L.
title = On cliques in graphs
journal = Israel J. Math.
volume = 3
year = 1965
pages = 23–28
id = MathSciNet | id = 0182577

External links

*
* [http://www.nlsde.buaa.edu.cn/~kexu/benchmarks/graph-benchmarks.htm Challenging Benchmarks for Maximum Clique, Maximum Independent Set, Minimum Vertex Cover and Vertex Coloring]


Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Look at other dictionaries:

  • Independent set (graph theory) — The nine blue vertices form a maximum independent set for the Generalized Petersen graph GP(12,4). In graph theory, an independent set or stable set is a set of vertices in a graph, no two of which are adjacent. That is, it is a set I of vertices …   Wikipedia

  • Independent set — The (unexpectedly asymmetric) set of 9 blue vertices is a maximal independent set for this graph of 24 vertices.In graph theory, an independent set or stable set is a set of vertices in a graph no two of which are adjacent. That is, it is a set V …   Wikipedia

  • Independent Set — Dieses Stichwortverzeichnis enthält kurze Definitionen und Erklärungen zu den wichtigsten graphentheoretischen Begriffen. A Abstand Siehe: Distanz. Achromatische Zahl Die achromatische Zahl ψ(G) eines Graphen G ist die größte Zahl k, für die G… …   Deutsch Wikipedia

  • Maximal independent set — This article is about the combinatorial aspects of maximal independent sets of vertices in a graph. For other aspects of independent vertex sets in graph theory, see Independent set (graph theory). For other kinds of independent sets, see… …   Wikipedia

  • Set packing — is a classical NP complete problem in computational complexity theory and combinatorics, and was one of Karp s 21 NP complete problems. Suppose we have a finite set S and a list of subsets of S. Then, the set packing problem asks if some k… …   Wikipedia

  • Clique problem — The brute force algorithm finds a 4 clique in this 7 vertex graph (the complement of the 7 vertex path graph) by systematically checking all C(7,4)=35 4 vertex subgraphs for completeness. In computer science, the clique problem refers to any of… …   Wikipedia

  • Vertex cover problem — In computer science, the vertex cover problem or node cover problem is an NP complete problem and was one of Karp s 21 NP complete problems. It is often used in complexity theory to prove NP hardness of more complicated problems. Definition A… …   Wikipedia

  • Computational problem — In theoretical computer science, a computational problem is a mathematical object representing a collection of questions that computers might want to solve. For example, the problem of factoring Given a positive integer n, find a nontrivial prime …   Wikipedia

  • Induced subgraph isomorphism problem — In complexity theory and graph theory, induced subgraph isomorphism is an NP complete decision problem that involves finding a given graph as an induced subgraph of a larger graph.Formally, the problem takes as input two graphs G 1=( V 1, E 1)… …   Wikipedia

  • Problem of Apollonius — In Euclidean plane geometry, Apollonius problem is to construct circles that are tangent to three given circles in a plane (Figure 1); two circles are tangent if they touch at a single point. Apollonius of Perga (ca. 262 BC ndash; ca. 190 BC)… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”