HOME

TheInfoList



OR:

In
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and explores the relationships between these classifications. A computational problem ...
, a planted clique or hidden clique in an
undirected graph In discrete mathematics, particularly in graph theory, a graph is a structure consisting of a set of objects where some pairs of the objects are in some sense "related". The objects are represented by abstractions called '' vertices'' (also call ...
is a
clique A clique (AusE, CanE, or ; ), in the social sciences, is a small group of individuals who interact with one another and share similar interests rather than include others. Interacting with cliques is part of normative social development regardles ...
formed from another graph by selecting a subset of vertices and adding edges between each pair of vertices in the subset. The planted clique problem is the algorithmic problem of distinguishing
random graph In mathematics, random graph is the general term to refer to probability distributions over graphs. Random graphs may be described simply by a probability distribution, or by a random process which generates them. The theory of random graphs l ...
s from graphs that have a planted clique. This is a variation of the
clique problem In computer science, the clique problem is the computational problem of finding cliques (subsets of vertices, all adjacent to each other, also called complete subgraphs) in a graph. It has several different formulations depending on which c ...
; it may be solved in
quasi-polynomial time In computational complexity theory and the analysis of algorithms, an algorithm is said to take quasi-polynomial time if its time complexity is quasi-polynomially bounded. That is, there should exist a constant c such that the worst-case running ...
but is conjectured not to be solvable in
polynomial time In theoretical computer science, the time complexity is the computational complexity that describes the amount of computer time it takes to run an algorithm. Time complexity is commonly estimated by counting the number of elementary operations p ...
for intermediate values of the clique size. The conjecture that no polynomial time solution exists is called the planted clique conjecture; it has been used as a
computational hardness assumption In computational complexity theory, a computational hardness assumption is the hypothesis that a particular problem cannot be solved efficiently (where ''efficiently'' typically means "in polynomial time"). It is not known how to prove (unconditi ...
.


Definition

A clique in a graph is a subset of vertices, all of which are adjacent to each other. A planted clique is a clique created from another graph by adding edges between all pairs of a selected subset of vertices. The planted clique problem can be formalized as a
decision problem In computability theory and computational complexity theory, a decision problem is a computational problem that can be posed as a yes–no question on a set of input values. An example of a decision problem is deciding whether a given natura ...
over a
random distribution In probability theory and statistics, a probability distribution is a function that gives the probabilities of occurrence of possible events for an experiment. It is a mathematical description of a random phenomenon in terms of its sample space ...
on graphs, parameterized by two numbers, (the number of vertices), and (the size of the clique). These parameters may be used to generate a graph, by the following random process:. #Create an Erdős–Rényi random graph on vertices by choosing independently for each pair of vertices whether to include an edge connecting that pair, with probability 1/2 for each pair. #Decide whether or not to add a clique to the graph, with probability 1/2; if not, return the graph formed in step 1. #Choose randomly a subset of of the vertices and add an edge (if one is not already present) between each pair of the selected vertices. The problem is then to determine algorithmically whether one of the graphs resulting from this process contains a clique of at least vertices.


Upper and lower bounds

There exists a function f(n) \sim 2 \log_2 n such that asymptotically almost surely, the size of the largest clique in an -vertex random graph is either f(n) or f(n)+1, and there exists some constant c such that the expected number of cliques of size \geq f(n) -c converges to infinity. Consequently, one should expect that the planting a clique of size \sim 2 \log_2 n cannot be detected with high probability. By the
central limit theorem In probability theory, the central limit theorem (CLT) states that, under appropriate conditions, the Probability distribution, distribution of a normalized version of the sample mean converges to a Normal distribution#Standard normal distributi ...
, the vertex degrees of the random graph would be distributed close to a standard normal distribution with mean \frac n2 and standard deviation \frac \sqrt 2. Consequently, when k is on the order of \sqrt n it would create a detectable change in the shape of the distribution. Namely, if you plot out the vertex degree distribution, it would look like a deformed bell curve. Therefore, the most interesting range of values for the parameter is between these two values, :2\log_2 n \ll k \ll \sqrt n.


Algorithms


Large cliques

For sufficiently large values of the parameter , the planted clique problem can be solved (with high probability) in polynomial time. observes that, when k=\Omega(\sqrt) then almost surely all vertices of the planted clique have higher degree than all vertices outside the clique, making the clique very easy to find. He describes a modification to the random process for generating planted clique instances, that makes the vertex degrees more uniform even for large values of , but shows that despite this modification the planted clique may still be found quickly. prove for k>10\sqrt n a planted clique can be found with high probability by the following method: #Compute the
eigenvector In linear algebra, an eigenvector ( ) or characteristic vector is a vector that has its direction unchanged (or reversed) by a given linear transformation. More precisely, an eigenvector \mathbf v of a linear transformation T is scaled by ...
of the
adjacency matrix In graph theory and computer science, an adjacency matrix is a square matrix used to represent a finite graph (discrete mathematics), graph. The elements of the matrix (mathematics), matrix indicate whether pairs of Vertex (graph theory), vertices ...
corresponding to its second highest
eigenvalue In linear algebra, an eigenvector ( ) or characteristic vector is a vector that has its direction unchanged (or reversed) by a given linear transformation. More precisely, an eigenvector \mathbf v of a linear transformation T is scaled by a ...
. #Select the vertices whose coordinates in this eigenvector have the largest
absolute value In mathematics, the absolute value or modulus of a real number x, is the non-negative value without regard to its sign. Namely, , x, =x if x is a positive number, and , x, =-x if x is negative (in which case negating x makes -x positive), ...
s. #Return the set of vertices that are adjacent to at least 3/4 of the selected vertices. They show how to modify this technique so that it continues to work whenever is at least proportional to some multiple of the square root of the number of vertices. Large planted cliques can also be found using
semidefinite programming Semidefinite programming (SDP) is a subfield of mathematical programming concerned with the optimization of a linear objective function (a user-specified function that the user wants to minimize or maximize) over the intersection of the cone of po ...
. A combinatorial technique based on randomly sampling vertices can achieve the same bound on and runs in
linear time In theoretical computer science, the time complexity is the computational complexity that describes the amount of computer time it takes to run an algorithm. Time complexity is commonly estimated by counting the number of elementary operations ...
.


Quasipolynomial time

It is also possible to solve the planted clique problem, regardless of the choice of , in
quasi-polynomial time In computational complexity theory and the analysis of algorithms, an algorithm is said to take quasi-polynomial time if its time complexity is quasi-polynomially bounded. That is, there should exist a constant c such that the worst-case running ...
.. Because the largest clique in a random graph typically has size near , a planted clique of size (if it exists) can be found with high probability by the following method: #Loop through all sets of \min(k,3\log_2 n) vertices. #For each choice of , test whether is a clique. If it is, and , S, = k, return . Otherwise, find the set of vertices that are adjacent to all vertices in . If , T, \ge k, return . The running time of this algorithm is quasipolynomial, because there are quasipolynomially many choices of to loop over. This method is guaranteed to try a set that is a subset of the planted clique; with high probability, the set will consist only of other members of the planted clique.


As a hardness assumption

There are two versions of the planted clique conjecture: one based on finding the clique (search) and one based on determining if a clique exists (decision). The search conjecture states that no polynomial time algorithm can find (with high probability) a clique of size k << n^ in a random graph with n nodes and a hidden clique of size k. The decision conjecture is more subtle. Suppose we are given two n node random graphs, exactly one of which has a planted clique, but we don't know which. On average, a random graph with a planted clique will have more edges than a purely random graph, since the act of planting a clique of size k is expected to add \Theta(k^2) edges. Therefore, we can correctly determine which of the two graphs contains the planted clique with probability 1/2 + \Theta(k^2/n) by simply counting the number of edges in each graph. The decision planted clique conjecture states that this is essentially optimal: it postulates that no polynomial time algorithm can distinguish between the two graphs with probability higher than 1/2 + \Theta(k^2/n) . used the assumption that finding planted cliques is hard as a
computational hardness assumption In computational complexity theory, a computational hardness assumption is the hypothesis that a particular problem cannot be solved efficiently (where ''efficiently'' typically means "in polynomial time"). It is not known how to prove (unconditi ...
to prove that, if so, it is also hard to approximate the best
Nash equilibrium In game theory, the Nash equilibrium is the most commonly used solution concept for non-cooperative games. A Nash equilibrium is a situation where no player could gain by changing their own strategy (holding all other players' strategies fixed) ...
in a two-player game. The planted clique conjecture has also been used as a hardness assumption to show the difficulty of
property testing Property testing is a field of theoretical computer science, concerned with the design of super-fast algorithms for approximate decision making, where the decision refers to properties or parameters of huge objects. A ''property testing algorithm ...
-independence of random distributions, finding clusters in social networks, and
machine learning Machine learning (ML) is a field of study in artificial intelligence concerned with the development and study of Computational statistics, statistical algorithms that can learn from data and generalise to unseen data, and thus perform Task ( ...
..


References

{{Computational hardness assumptions Computational problems in graph theory Computational hardness assumptions Random graphs Quasi-polynomial time algorithms