Hard optimization problems have soft edges

Finding a Maximum Clique is a classic property test from graph theory; find any one of the largest complete subgraphs in an Erdös-Rényi G(N, p) random graph. We use Maximum Clique to explore the structure of the problem as a function of N, the graph size, and K, the clique size sought. It displays a complex phase boundary, a staircase of steps at each of which \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$2 \log _2N$$\end{document}2log2N and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$K_{\text {max}}$$\end{document}Kmax, the maximum size of a clique that can be found, increases by 1. Each of its boundaries has a finite width, and these widths allow local algorithms to find cliques beyond the limits defined by the study of infinite systems. We explore the performance of a number of extensions of traditional fast local algorithms, and find that much of the “hard” space remains accessible at finite N. The “hidden clique” problem embeds a clique somewhat larger than those which occur naturally in a G(N, p) random graph. Since such a clique is unique, we find that local searches which stop early, once evidence for the hidden clique is found, may outperform the best message passing or spectral algorithms.


I. INTRODUCTION
Phase transitions in the asymptotic behavior of combinatoric problems on random ensembles once were but are no longer surprising.Large scale data structures, such as graphs, arise in practical examples.Effective tools for managing them have commercial value.Unlike phase transitions in the physics of materials, the model system and the interactions which couple its elements are known or can be defined.While exact methods can solve only very small examples, simulation of medium scale problems is accessible and may reach very large scale.Methods such as finite-size scaling analysis expose regularities [1].Classic examples include the Satisfiability problem in its many variants [2,3].In this paper, we consider finding maximum cliques in random graphs, specifically Erdös-Rényi [4,5] graphs of the G(N, p) class, with N nodes (or sites) and each edge (or bond) present with probability p.We further specialize to the case p = 1/2, which has the advantage that since the maximum clique is also the maximum independent set (IS) on the complement of the graph, finding the maximum clique at p = 1/2 also solves a second famous problem, finding a maximal independent set, since that is the maximal clique on the complement of a graph and the set G(N, p)is its own complement.
We will see below that MaxClique is an unusually difficult problem.Naive solution methods can construct cliques of size log 2 N , yet probabilistic arguments show that solutions asymptotically of size 2 log 2 N must exist.No polynomial algorithms that will construct true maximum cliques for arbitrarily large values of N are known.The picture shows the probability that we can find no other site to grow the clique to size K + 1 as function of K/ log 2 N .The inset shows the universal form that all of these curves take when rescaled.
The failure is general, not merely a problem for the rare worst case.This difficulty has been formalized as several challenges, which are difficult to resist.We shall test several algorithms at large finite values of N , to see if the impossible can be achieved or approached over a useful range of N .
Greedy methods are fast, but naive and a good starting point for our discussion.Start with a site anywhere in the graph, and discard the roughly half of the sites that are not neighbors.Pick a neighbor from the frontier of the first site that remains.Then discard the half of the remaining sites that are not a neighbor of the new site.Continue in this way until the frontier vanishes -no candidates to extend the clique remain.Since we have halved the size of the frontier at each step, it is unlikely that this process can proceed beyond log 2 N steps.
Let's look at this more precisely and as a function of the scale, N , the order of the graph.Assuming we have a clique of size K, the probability that we can find no other site to grow the clique to size K +1 is (1−2 −K ) (N −K) , as shown in Fig. 1, where use of a common scale K/ log 2 N , brings the various curves all together at a probability of e −1 when K is equal to log 2 N .All cliques are extendable when this ratio goes to zero, and we shall see shortly that none are when it exceeds 2. The slopes of these curves are each proportional to log 2 N .The simple expedient of plotting the curve for each value of N against K − log 2 N collapses all of them to a universal limiting form, which is shown in the inset to Fig. 1.This is finite-size scaling just as described in [1].This sort of limit to an algorithm's effectiveness has been called a dynamic phase boundary in the literature [6].It also shows that cliques constructed by this naive greedy algorithm start to be non-extendable at a size two sites below the dynamic phase boundary and are almost never extendable four sites above, with a functional form that is almost independent of N .Because this threshold occurs at each N for which K = log 2 N is an integer, and has a width independent of N , it is less "sharp" than the phase transitions seen in models of magnetic ordering.

A. History
Matula first called attention to several interesting aspects of the MaxClique problem on G(N, p).From the expected number of cliques.E(K), of size K at p = 1/2 [7]: using Stirling's approximation, one can see that this is large at K = log 2 N but becomes vanishingly small for K > 2 log 2 N , providing an upper bound to K. Matula identified K max as the largest integer such that ( and [7,8] expanded the finite N corrections to the continuous function R(N ) which solves E(R) = 1 : This formula is also discussed in Bollobás and Erdös [9] and by Grimmett and McDiarmid [10].Very tight limits are known showing that R(N ) differs by less than 1 from K max (N ) as N → ∞.We will focus on K max , the predicted actual maximum clique size.In effect, its value follows a staircase with prediction (3) passing through the risers between steps, as shown in Fig. 2. In his first pa.pdfper,Matula drew attention to what is now termed a concentration result for the clique problem.As N → ∞ the sizes of the largest cliques that will occur are concentrated on just two values of K, the integers immediately below and above R(N ).To do this, he used the second moment of the distribution of the numbers of cliques of size K to bound the fraction of graphs with no such cliques, and sharpened the result [11] by computing a weighted second moment.In effect, Markov's inequality provides upper bounds, and Chebyscheff's inequality provides lower bounds on the existence of such cliques.In principle, more detailed evaluations of higher moments could characterize the frequency with which cliques of size K max are found, but we shall use only Matula's results for the two values of K on which the maximum cliques concentrate.The probability that the maximum clique size is K max was given by Matula [7,8,11].The fraction of graphs G(N, p) with maximum clique size K max , is bounded as follows: This leads to the following picture, evaluated for large N , e.g.N ≈ 10 6 in Fig. 3, we see that at the step between two integer values of K max , half of the graphs will have a few cliques of the new larger value from the upper step, and half will have only cliques with the smaller value from the lower step, but many of them.

B. Challenges
The traditional approach to surveying and challenging the developers of algorithms for solving hard problems is to assemble a portfolio of such problems, some with a known solution, and some as yet unsolved.The DI-MACS program at Rutgers carried out such a challenge FIG. 3. The picture shows regions defined by upper and lower bounds (obtained by equation ( 4)), on the fractions of graphs of size N with maximum cliques of size Kmax and Kmax + 1.In the large N limit, at a step, the probability for finding each of the two possible sizes becomes 1/2.
in the mid 1990's [12].Roughly a dozen groups participated over a period of a year or more, and the sample graphs continue to be studied.The largest graphs in the portfolio were random graphs of size 1000 to 4000, and the methods available gave results for the largest of these which fell at least one or two short of R(N ).(A few did much worse.)As a result, the actual values of K max for many test graphs are still unknown.We argue that a better test for these algorithms on random graphs is to determine to what extent they can reproduce the predicted distribution of results that we see in Fig. 3, both the steps in K max and the fraction of graphs with each of the dominant values of K max as it evolves with increasing N .
Several authors have proposed that the search for powerful, effective clique-finding algorithms could be expressed as a challenge, perhaps to attract the widest set of challengers to the problem.Mark Jerrum, in his 1992 paper "Large Cliques Elude the Metropolis Process", [13] sets out several of these.His paper shows that a restricted version of stochastic search is unlikely to reach a maximum clique, and also introduces the additional problem of finding an artificially hidden clique, which we discuss in a later section.A hidden clique or planted solution, is just what it sounds like, a single subgraph of K HC sites, with K HC > K max , so that it can be distinguished, for which all the missing bonds among those sites have been restored.A series of papers [14,15] show that if K HC is of order N α with α > 0.5, a small improvement over our naive greedy algorithm (SM 0 introduced in the next section) will find such a hidden clique.
Jerrum's first challenge is to find a hidden subgraph of size ∼ N 0.5− with probability > 1/2, using an algorithm whose cost is polynomial in the number of bonds in the graph (i.e.N 2 is considered to be a linear cost).Jerrum's paper and several others have also turned the identification of any naturally occurring clique larger than the dynamic threshold size into such a challenge: find any clique of size exceeding log 2 N with probability exceeding 1/2.We saw in the discussion of Fig. 1 that finding cliques which exceed log 2 N by a small constant number of sites should be straightforward at any value of N .We shall see that both challenges are in fact easy for large, finite and thus interesting values of N , and will attempt to characterize for what range of N they remain feasible.

II. GREEDY ALGORITHMS
In this section we describe the performance of a family of increasingly powerful greedy algorithms for constructing a maximal clique on an undirected graph.Those algorithms are polynomial in time and use some randomness, but they are myopic in generating optimal solutions.However, because they are relatively fast, significant research efforts has been devoted to improving their performance while adding minimal complexity.We will show ways of combining several of these simple greedy algorithms, to obtain better solutions at somewhat lower cost.
We start by considering a simple family of greedy algorithms, designated by Brockington and Culberson [16], as SM i , i = 0, 1, 2... SM 0 improves over the naive approach we described at the outset [17], by selecting at each stage the site with the largest number of neighbors to add to the growing clique.If there are many such sites to choose from, each connected to all of the sites in the part of the clique identified to that point, one is chosen at random, so multiple applications of SM 0 will provide a distribution of answers for a given graph G.At each stage this choice of the site to add retains somewhat more than half of the remainder of the graph, Z, so the resulting clique will be larger than log 2 N , for all finite N .SM 0 can be implemented to run in O(N 2 ) time.
SM i for i = 1, 2, ... are algorithms in which we start our greedy construction with each combination of i vertices which form a complete subgraph, then extend them one site at a time using SM 0 .In other words, SM 0 is run starting with each of N i p ( i 2 ) complete subgraphs of order i.SM 1 , starting with every site, can be implemented to run in O(N 3 ).The complexity of SM 2 , which uses all connected pairs, is O(N 4 ).The computational complexity for the class of algorithms SM i is O(N i+2 ).
In Fig. 4 we show the sizes of the maximal cliques on E-R graphs G(N, p = 0.5), found using the algorithms SM i , with i = 0, 1, 2. For comparison we plot the green staircase, K max , and the analytic formula R(N ) (dashed green line).This figure shows the improvements that result from the (considerable) extra computational cost of the latter two algorithms.Both the blue points of SM 1 and the orange points of SM 2 reflect the staircase of K max .Even their error bars reflect the rapid increase R n s k K w e V v P J n 5 a / q 3 9 V / q v 9 W 3 z j o l Z W C 5 x s q X d V 3 H w A N g + 0 T < / l a t e x i t > of the number of the larger maximum cliques after each jump in the staircase.The red points of SM 0 , although significantly greater than log 2 N , do not show any staircase pattern.Each red point is the average over 2000 random E-R graphs, each blue point the average over 500 random E-R graphs, and each coral point is the average over 100 random E-R graphs.We have used a uniform random number generator with extremely long period (WELL1024) [18].The SM 2 results track the staircase closely up to N = 4000, the largest size seen in the DIMACS study, while the SM 1 results fall about 1 site below the staircase at the end of this range.Figs.5(a) and 5(b) give a more detailed comparison of the two algorithms.Fig. 5(a) compares the predicted fraction of random E-R graphs having a maximal clique size with the experimental results obtained with the two algorithms around the step from K max = 15 to 16.This corresponds to the region most often explored in the DI-MACS studies.The SM 2 algorithm remains within the bounds described by Matula.The red, purple, and blue filled square points in the three predicted probability regions (red, purple, and blue, respectively) find acceptable fractions of 15, 16 and even 17 sites cliques as N is increased.The SM 1 algorithm, shown by orange, pink, and blue empty squares, falls short in all three probability regions, finding too many 15's, too few 16's and no 17's.
If we expand the scale, covering steps from K max = 10 to K max = 16, we can see how the SM 1 results, which track closely with the SM 2 for K max = 10 and 11, fall behind as N increases to give K max values of 12 − 14.For N > 1000, SM 1 no longer reaches cliques with the true value of K max .SM 2 , however, not only produces cliques with the step value of K max , it correctly predicts a 50% admixture of the two values of K max on which the problem is concentrated at each step where K max changes.These two algorithms are very expensive.We could only analyze rather small random graphs.Next we consider less costly algorithms, which allow us to explore much larger graphs.These give results lying between SM 0 and SM 2 and still reflect the staircase character of the underlying problem.
We reverse the order of operations made by the class of algorithm SM i , with i = 1, 2, ... Instead of running SM 0 for each pair, or triangle, or tetrahedron (etc.) in the original graph, we run SM i , with i = 1, 2, .. fixed, but only on the sites found within one solution given by SM 0 .SM 0 will return a clique C of size |C|.On this solution we run SM i , i.e. we select all the possible |C| i complete subgraphs in the clique C, and, on each of them, denoted C , we run a restricted SM 0 .In other words, we run SM 0 on the graph G induced by all sites v ∈ C ∪ N (C ).This simple algorithm, that we call SM 0 → SM i , will run in a time bounded by O(N 2 ln N ).
As an example, we show in Fig. 6 the results of the algorithm SM 0 → SM i , with i fixed to 4, compared to SM 0 in the range of N [2800 : 50000].We analyze |C| 4 graphs of order approximatively N/16.The combined algorithm SM 0 → SM 4 always finds a maximal clique bigger than those given by SM 0 alone.Moreover the combined algorithm reproduces the wiggling behaviour due to the discrete steps in K max in a time bounded by O(N 2 ln N ), while SM 0 , used alone, does not.
The improved results of the combined algorithm   SM 0 → SM i , with fixed i, suggests to iterate the procedure.First we run SM i , with fixed i, on the clique returned by SM 0 .If the clique returned by the algorithm is bigger than the one that is used for running SM i , then we use the new clique as a starting point where SM i will be run again.The algorithm stops when Algorithm 2: SM I algorithm for finding a maximal clique Algorithm 3: SM 0 !SM i algorithm for finding a maximal clique Input : G(V, E) and i Output: < l a t e x i t s h a 1 _ b a s e 6 4 = " ( n u l l ) " > ( n u l l ) < / l a t e x i t > < l a t e x i t s h a 1 _ b a s e 6 4 = " ( n u l l ) " > ( n u l l ) < / l a t e x i t > < l a t e x i t s h a 1 _ b a s e 6 4 = " ( n u l l ) " > ( n u l l ) < / l a t e x i t > < l a t e x i t s h a 1 _ b a s e 6 4 = " ( n u l l ) " > ( n u l l ) < / l a t e x i t > the size of the clique no longer increases.The complexity of the algorithm therefore is O(tN 2 ln N ), where t is the number of times we find a clique which is bigger than the previous one.We call, thus, this new algorithm We present in Fig. 7 the results of SM 0 → iter[SM i ], over the range of N from 2000 to 50000, comparing them with the results of SM 0 → SM 4 .We use different i in different ranges of N , determining their values by experiment.As N increases we have to increase the number of sites kept for the iteration in order to get a bigger complete subgraph at the end of the process.
< l a t e x i t s h a 1 _ b a s e 6 4 = " ( n u l l ) " > ( n u l l ) < / l a t e x i t > < l a t e x i t s h a 1 _ b a s e 6 4 = " ( n u l l ) " > ( n u l l ) < / l a t e x i t > < l a t e x i t s h a 1 _ b a s e 6 4 = " ( n u l l ) " > ( n u l l ) < / l a t e x i t > < l a t e x i t s h a 1 _ b a s e 6 4 = " ( n u l l ) " > ( n u l l ) < / l a t e x i t > The black and the blue straight lines describe the values of 2 log 2 N and log 2 N , respectively.Black circles are the mean maximal clique size obtained by SM 0 → SM 4 , averaging over 500 random E-R graphs, while magenta circles are the mean maximal clique size obtained by SM 0 → iter[SM i ], using the values of i in Table (5).
The values of i selected are given in the following table : N i 100-589 2 590-1499 3 1500-7499 4 7500-12999 5 13000-64999 6 65000-100000 7 (5) Fig. 8 shows the results of experiments with SM 0 → iter[SM i ], with i fixed in the range given by Tab. 5.They fall between two staircases.The upper one is K max , as FIG. 8. Maximal clique sizes found on E-R graphs G(N, p = 0.5).The green staircase is Kmax, as in previous figures.Data points are the mean maximal clique size obtained by SM 0 → iter[SM i ], using values of i given by Table 5.The multicoloured staircase represents the expected maximum values of completed subgraphs conditioned by the fact that we are starting with an arbitrary complete subgraph of size i.before, and the lower one is the max clique size predicted by the first moment bound if we begin with a randomly selected clique of size i.The coloured staircase curve is given by [19] the smallest value of K for which : This implies that the subgraphs we have selected as a basis for our iteration are much better than average, compared with the very large number of starting subgraphs that a full SM i would have required.

A. Other concentrations of links
The same estimates of clique sizes and techniques for finding them will of course be extended to work at values of p other than 0.5, but finite size effects must be carefully considered.For general values of p, the extrapolation based on Stirling's approximation extends to [7,9,11,20]: R(N, p) = 2 log 1/p N − 2 log 1/p log 1/p N + 2 log 1/p e/2 + 1 (7) Although when p = 0.5, R(N, p) can be used for all values of N that we have considered, much larger or smaller values of p require larger values of N for its value to remain between the two values of K upon which the maximum clique sizes are concentrated.When p is much larger than 0.5, R(N, p) may fail to cross through the rising portion of each K max step.For N = 10 3 , R(N, p) falls below the steps when p > 0.65.For N = 10 6 , R(N, p) remains a useful guide only up to p ∼ 0.7.The same problem occurs at small values of p, with the value of R(N, p) exceeding the actual expected values of K max at sufficiently low p and insufficiently large N .Thus R(N, p) rises above the steps when N > 10 3 and p < 0.35, while for N = 10 6 , R(N, p) continues to cross through the rise between steps down to about p ∼ 0.15.Nonetheless, our algorithms SM i still work at smaller p, as the next two figures show.In We performed the same tests to see how well SM 1 reproduced the distribution of graphs with values of K max from just below and just above a step that were presented in Fig 5 (a) and 5 (b)(for p = 0.5) on our two cases at p = 0.2 and 0.1, using Matula's first and weighted second moment calculations to provide upper and lower bounds on the fraction of graphs with each value of K max .As was the case at p = 0.5, at each step, the fraction of graphs having at least one clique with the new, higher value of K max is asymptotically half.
At p = 0.2, we tested the steps from K max = 8 to 9 and from 9 to 10.Although at these steps, and the following one, the average value of K max reported by SM 1 follows the lower part of each step, at the step from 8 to 9, SM 1 found K max = 9 in only 20% of the graphs considered, reaching 80% in the middle of the step above.At the step from 9 to 10, SM 1 found K max = 10 in only 5% of the graphs, reaching only 10% at the middle of the step.The case p = 0.1 was easier for these values of N and SM 1 .As is apparent in Fig. 9 (b), where the variation in the results spans the step height from K max = 6 to 7, we found the larger value of K max in roughly 40% of the graphs, reaching 80% at the middle of the following step.But at the step from K max = 7 to 8, occurring at roughly N = 12000, SM 1 observed the larger value of K max in only about 6% of the graphs, increasing to less than 20% at the middle of the following step.As N increased further, SM 1 reached cliques of size 8, but increased only slowly thereafter.Fig. 10 shows, finally, the cost of algorithms for 500 random E-R graphs.From the slopes we see that red points, i.e.SM 0 , are proportional to O(N 2 ), blue points, i.e.SM 1 , to O(N 3 ) and the coral points to O(N 4 ), as expected.Black and magenta points, which identify the cost of SM 0 → SM 4 and SM 0 → iter[SM i ] are bounded by polynomial functions of order O(N 2 ln N ) and O(tN 2 ln N ), respectively.
The last picture that we present here, i.e.Fig. 11, displays the inferred limit of the algorithms.In this picture we plot the normalised maximal clique, i.e.K/2 log 2 N , as function of N , with the aim of determining the range of values of N where the results of our polynomial cost algorithms exceed log 2 N , thus meeting the challenges.
We observe that all the linear and quasi-linear algorithms presented in this work succeed in finding a maximal clique of size at least log 2 (N ) until N , the order of the graph becomes bigger than or equal to 5 × 10 9 if we use SM 0 , N ≈ 10 14 if we use SM 0 → SM 4 and N ≈ 2 × 10 16 if we use SM 0 → iter[SM i ].The more elaborate cubic and quartic algorithms are not extrapolated, as we could not carry them out on large enough samples.
The feature that makes this problem so hard is that at each step on our staircase, there are multiple cliques of size K max , their number increasing from a few near the step edge, to a fairly large number as we approach the next step.There are still larger numbers of size less than K max .We can make a rough estimate of the number of  cliques of size K max that a randomly selected site lies in by multiplying the expected number of such cliques by their size, and dividing by N .This is justified since calculating the expected number of pairs of such large cliques overlapping by a fixed number of sites, we find that these are dominated by overlaps of zero or one site.This estimate, an upper bound on the probability that a site is part of a maximum clique is zero at the start of each step (when such cliques are rare) and increases to between 5 or 6 by the end of the step, and is greater than 1 for only about the last 20% of each step.This is why SM 1 or SM 2 , by selecting the best starting points, can give results better than the naive random start of SM 0 .
Cliques of size log 2 N exist in large numbers and overlap strongly.The fraction of them that will be entirely contained in a single clique of the largest size is vanishingly small.Thus most cliques that we find by a simple greedy construction consist of members or seeds of several to many of the larger cliques.Greedy search to grow a small clique which contains the seeds of several maximal cliques will eliminate from the frontier half of the remaining parts of each of its targets, and find it impossible to reach more than a fraction of K max .Our iterative procedure to search for the best small subsets from the largest cliques reached in a single greedy SM 0 search is an attempt to overcome this.But since the cliques that can be formed before the dynamical threshold are strongly overlapping at all degrees, mistakes will still be made.We see this in Fig 8, where the lower set of steps show how much smaller are the cliques that one can expect to construct if they are forced to start with a random completely connected subgraph.Although we choose the best such subset that we can find within a restricted space, and obtain a significant improvement, we still fall well short of the true limit K max .
Much discussion of the difficulty of searching large complex systems with many parameters over which to optimize uses language such as "gradient descent in a random potential", and "avoiding local minima at higher energies" than the goal.The search for a maximal clique is perhaps even more difficult, but the difficulty seems to be a total lack of information with which to choose between the possible paths to different solutions.Early incorporation of the seeds of multiple, incompatible solutions produces interference as the seeds of each partial solution rule out the remainder of the others.
This has caused several workers to shift attention to a problem in which there is only one "planted" clique to be sought, which can be identified by having a size larger than is expected to result from random graph processes.The hope is that having a single target will make the the search to recover this objective more effective.Many authors [13][14][15]21] have introduced such "planted" or hidden solutions in order to test more powerful methods of discovering them.In the next section, we consider some of these methods, present some novel extensions, and compare them to our greedy search techniques.

III. HIDDEN CLIQUE
To perform computer experiments, it is conventional to use the first K HC sites as the hidden subset, which makes it easy to observe the success or failure of oblivious algorithms as well as those to which we will give hints.Hints are a quite reasonable part of the hidden clique problem, as many practical problems in information retrieval take the form "find a community that closely resembles or is linked strongly to one or more exemplars".Having a labelled hidden clique permits experiments in which we can easily see how many of the hidden clique's sites would have been discovered by a particular search strategy.
We construct the hidden clique in one of two ways.The first is simply to restore all the missing links among the first K HC sites.This has the drawback that those sites will have more neighbors than average, and might be discovered by exploiting this fact.In fact, the upper limit to interesting hidden clique sizes was pointed out by Kučera [22], who showed that a clique of size C √ N ln N for a sufficiently large C will consist of the sites with largest number of neighbors, and thus can be found by SM 0 .
The second method is to move links around within the random graph in such a way that after the hidden clique is constructed, each site will have the same number of links that it had before.To do this, before we add a link between sites i and j in the hidden clique, we select at random two sites, k and l, which lie outside the clique.k must be a neighbor of i and l must be a neighbor of j.If k and l are distinct and not neighbors, we create a new link between them, and remove the links between i and k and between j and l.If this fails we try the replacement again, still selecting sites k and l at random.The result is a new graph with the same distribution of connectivities, as measured from the individual sites.This sort of smoothing of the planting of a hidden clique had been explored by [23].Several graphs prepared in this way are in the DIMACS portfolio, and appear to be more difficult to solve.
A stronger result, by Alon et al. [14] uses spectral methods, which we shall discuss in detail below, to show that a hidden clique, C, of cardinality |C| ≥ 10 √ N can be found with high probability, in polynomial time.Dekel et al. [15] showed that with a linear (O(N 2 ), the number of links) algorithm the constant can be reduced to 1.261.Finally, recent work of Deshpande and Montanari [21] has shown that Approximate Message Passing (AMP), a novel form of belief propagation, can also identify sites in the hidden clique.This converges down to N/e, where e is Euler's constant.No algorithm currently offers to find a clique of size less than N/e and bigger than K max , in polynomial time, for arbitrary N .Each of these procedures identifies some, but perhaps not all of the planted clique sites, and requires some "cleanup" steps to complete the identification of the whole clique.The cleanup procedures all require starting with either a subset of the hidden clique sites and finding sites elsewhere in the graph that link to all of them, or eliminating the sites in a possible mixed subset of valid and incorrect choices which do not extend as well, or doing both in some alternating process.These can be proven to work if the starting point is nearly complete (hence Alon et al.'s C = 10 starting point).We find experimentally, and discuss below, that a cleanup process can be effective given a much poorer starting point as well.A. Spectral Methods [14] requires the eigenvalues and eigenvectors of an N × N dimensional adjacency matrix for the graph.While this is conventionally described as taking O(N 3 ) operations, modern linear algebra libraries, such as Armadillo [24], based on LAPACK [25], exploit the many cores available in a modern laptop, and achieve compute costs scaling as O(N 2.5 ) over the range of N we study experimentally.This permits some interesting experiments, but first we need some definitions and derivations.

Alon et al.'s approach
The adjacency matrix, A, of our graph is actually a hybrid of two components, one for the random graph, and one for the hidden clique, each of which has known properties in isolation.
The adjacency matrix of a random graph is symmetric, has elements a ij which are 1 on the links which are present in a given instance, and 0 on the links which are absent, and 0 on the diagonals.One exceptional eigenstate of this matrix is the (nearly) uniform state, which for p = 0.5 has the eigenvalue 0.5 √ N .The remaining eigenvalues, which are non-degenerate, fill a band from slightly less than +1 to slightly less than −1, and the spectral density in the limit of N large is a semi-circle.The width of this band is set by the standard deviation of the off-diagonal elements of A. Such matrices occur throughout physics.For example in the tight-binding model of electron motion in solids, the links are present between adjacent atoms in a solid, and represent the probability that an electron from one atom can hop to a similar orbital state on the next one.In effect, G(N, p) represents a sort of spherical (geometry-free) model of the energy band structure in a random system, with randomness coming from the missing links rather than from the random diagonal elements, or site energies, that could appear in a model of a 3D material.We shall use this analogy later.
A completely connected graph of n sites, G(n, 1.0), has an adjacency matrix of the same structure, with all a ij = 1, and 0 on the diagonal.The eigenvalue for a uniform state lies at √ n, but all the other eigenstates are degenerate in energy, with a negative eigenvalue close to zero.To a first approximation, one can think of these eigenvectors as each consisting of +1 on a single site, and −1/n on all the other sites of the subgraph, so that they will be orthogonal to the uniform eigenstate lying at a higher energy.In the tight-binding language, the states of a hidden clique will hybridize with the random graph's energy band when the hidden clique subgraph is embedded in the larger random G(N, 0.5).In the case Alon et al. [14] used for a simple analysis, K HC = 10 √ N , most of the hidden clique states merge into the random graph band with no visible change in its density of states, but the two quasi-uniform states survive outside the band.An overall uniform state is still seen at 0.5 √ N , and the state which was uniform over just the hidden clique is found a small distance outside the energy band, with a gap between it and the uppermost state in the energy band.If we define α = K HC / √ N , the gap disappears when α lies between 1.1 and 1.2, as shown in Fig. 12.The eigenstate just outside the gap has its largest contributions on the planted clique, with all these components of the same sign, and can thus be used to identify the clique sites.Once it joins the energy band, its dominant components come from both hidden clique and regular sites of the graph.
In Fig. 13, we show the distribution of the eigenvector components on the hidden clique sites for a case with 90% of the hidden clique sites are still found in the largest components of the highest eigenstate of the energy band, but at α = 1.0, this has dropped to 25%, and at α = 0.95, only 8% survive.
Exploiting the tight binding interpretation of the energy levels of the planted clique/random graph mixture gives us a better way to study this regime.As a hint, we pick one site, site 0, known to be in the planted clique, and raise its energy to move it towards or even beyond the upper edge of the band of states, by adding a constant term, E 0 , to a 00 .This delays the disappearance of the gap between the isolated state and the upper edge of the band as we consider planted cliques of decreasing size.The hope is that the impurity level that remains outside the band for our inspection will combine a dominant component located on site 0 with a cloud of sites from the hidden clique surrounding it.
Fig. 14 (b), with E 0 = 0.6 and α = 1.0, shows this effect.Compare the degree of separation when the energy of site 0 is boosted with the loss of separation shown in Fig. 14 (a).An online GIF, which shows the evolution of the wave function coefficients as alpha decreases from 1.5 down to 0.5, and shows the two cases E 0 = 0 and E 0 = 0.5 side by side, makes this clear but could not be included in the published manuscript.We make this available as supplementary material.
Values of a 00 ranging from 0.5 to 0.7 accomplish this, as Figs 16 (a) and (b) show.Fig. 16 (a) repeats the analysis of Fig. 13 for five sizes of HC, using E 0 = 0.53, and makes 1.1 to 1.0 easy to extract.Fig. 16 (b) uses E 0 = 0.63, and loses some of the sites that were seen before at α = 1.0 and above, but extracts more of the sites from 0.95 and 0.75.For α = 1.0, setting E 0 = 0.53 yields 63% of the clique sites and at α = 0.95 we obtain 39% of the planted sites.Increasing E 0 slightly to 0.65 decreases the number of sites that can be identified for α of 0.95 and above, but allows us to extract 13% of the sites in the planted clique with α = 0.75.This seems to be the lower limit that we can uncover with this trick.Introducing a hint as we have done will reduce the number of sites which any local search must consider by roughly one half, since sites that are not linked to site 0 can be ignored.Perhaps the greater sensitivity that this trick gives to the spectral methods is simply the effective reduction of the limiting value of α for which they work by a factor of 1/ √ 2. But the improvement in the ability of the method to identify planted clique sites for α above the higher limit is also a significant benefit.Increasing E 0 to still larger values creates an impurity level well outside the energy band, but without a cloud of sites surrounding it from the planted clique.In that limit any site directly linked to site 0 is equally likely to be seen with a large component in this eigenstate.

B. Iterative methods
Next we consider methods of searching for the hidden clique that involve iteration.We shall employ two approaches, the SM 1 greedy algorithm with a simple modification, and the belief propagation scheme introduced by Deshpande and Montanari [21].First, we must make a further modification of the adjacency matrix.We will use Ã, whose elements are defined by: where ãij = 1 if the link is present, ãij = −1 if the link is absent, and ãii = 0.
The reason for the extra nonzero entries is simple.It generates the same energy band, with double the width, and moves the special uniform state at 0.5 √ N into the center of the band, where it no longer interferes with constructing eigenstates at the top of the energy band by iterative techniques such as the power method.The power method [26][27][28] is an iterative algorithm that returns the greatest eigenvalue of a diagonalizable matrix Ã and the corresponding eigenvector s.The power method applies the adjacency matrix Ã to a unit vector repeatedly until the result converges.The result s is the eigenvector corresponding to the largest eigenvalue of Ã, and this now becomes the special eigenvector which is dominated by the largest (planted) clique.Although the power method allows analysis of larger graphs than we could study with Armadillo [24], we did not find that it was any faster for our purposes.The matrix Ã, however, is the basis for the beliefs introduced in [21], and this proves capable of finding planted cliques still smaller than those exposed in Figs 15 and 16.
To complete this analysis, we have also considered the approximate message-passing (AMP) algorithm given by Deshpande et al. in [21].They developed a rigorous analysis that is asymptotically exact as N → ∞ and they prove that their algorithm is able to find hidden cliques of size K HC ≥ N/e with high probability.AMP is derived as a form of belief propagation (BP), a heuristic machine learning method for approximating posterior probabilities in graphical models.BP is an algorithm [29][30][31][32], which extracts marginal probabilities for each variable node on a factor graph.It is exact on trees, but was found to be effective on loopy graphs as well [21,[33][34][35].It is an iterative message passing algorithm that exchanges messages from the links to the nodes, and from them it computes marginal probabilities for each variable node.When the marginal probability has been found, as BP has converged, one can obtain a solution of the problem, sorting the nodes by their predicted marginal probabilities.However it is possible, if the graph is not locally a tree, that BP does not find a solution or converges to a random and uninformative fixed point.In these cases the algorithm fails.BP for graphical models runs on factor graphs where each variable node is a site of the original graph G(N, p), while each function node is on a link of the original graph G(N, p).
Here we describe briefly the main steps that we have followed in implementing AMP algorithm.For details we refer the reader to [21].AMP runs on a complete graph described by an adjacency matrix Ã. AMP iteratively exchanges messages from links to nodes, and from them it computes quantities for each node.These quantities represent the property that a variable node is, or not, in the planted set.It is intermediate in complexity and compute cost between local algorithms, such as our greedy search schemes, and global algorithms such as the spectral methods of Alon et al. [14] For our purpose, we implemented a simple version of the algorithm in [21], using Deshpande et al [21] equations.Here, we recall them: Equations ( 8) and ( 9) describe the state evolution of messages and vertex quantities Γ t i .They run on a fully connected graph, since both the presence or absence of a link between sites is described in the adjacency matrix Ã.For numerical stability, they are written using logarithms.Initial conditions for messages in (8) are randomly distributed and less than 0. The constant part is obtained by observing that relevant scaling for hidden clique problems is √ N .Equation (8) describes the numerical updating of the outgoing message from site i to site j.It is computed from all ingoing messages to i, obtained at previous iteration, excluding the outgoing message from j to i.These messages, i.e. equation (8), are all in R and they correspond to so-called odds ratios that vertex i will be in the hidden set C. In other words, the message from i to j informs site j if site i belongs to the hidden set or not, computing the odds ratios of all remaining N − 2 l sites of the graph, with l = i, j.When a site l is connected to site i, the difference between logarithms, in the sum, will be positive and will correspond to the event that the site l is more likely to be a site of C than a site outside it.However, when l is not connected to i the corresponding odds ratios will be less than one, i.e. the difference of logarithms, in the sum of equation (8), will be less than zero, and will correspond to the event that the site l is more likely to be outside the hidden set.The sum of all the odds ratios will update equation ( 8), telling us if site i will be more likely to be in C or not.
Equation ( 9), instead, describes the numerical updating of the vertex quantity Γ t i .It is computed from all ingoing messages in i, and is an estimation of the likelihood that i ∈ C.These quantities are larger for vertices that are more likely to belong to the hidden clique [21].Elements of the hidden set, therefore, will have Γ tc i∈C > 0, while elements that are not in the hidden set will have Γ tc i ∈C < 0. As iterative BP equations, ( 8) and ( 9) are useful only if they converge.The computational complexity of each iteration is O(N 2 ), indeed, equation ( 8) can be computed efficiently using the following observation: The number of iterations needed for convergence for all messages/vertex quantities is of order O(log N ), which means that the total computational complexity of the algorithm is O(N 2 log N ).Once all messages in (8) converge, the vertex quantities given by ( 9) are sorted into descending order.Then, the first K HC components are chosen and checked to see if they are a solution.If a solution is found we stop with a successful assignment, else the algorithm returns a failure.For completeness, our version of AMP algorithm returns a failure also when it does not converge after t max = 100 iterations.
As a first experiment we run simulations which reproduce the analysis in [21], but apply their methods to a larger sample, N = 10 4 .In Fig. 17 we show the results of fraction of successful recovery by AMP after one convergence, as a function of α.As the analysis in [21] predicts, the AMP messages converge down to about α = N/e, but with a decreasing probability of convergence, or with success in a decreasing fraction of the graphs that we have created.At and below the algorithmic threshold of AMP for this problem, we obtained very few solutions.

C. Greedy search with early stopping
We also explored using our greedy search methods to uncover a planted clique in this difficult regime.Our Input : G(V, E, K HC ) and i Output: Hidden Clique K HC or FAILURE 1 C=;; Compute the induced subgraph G 0 with vertex set V 0 =C 0 +N (C 0 );    C K f T c s V U j w p F i z q Z G 7 S g j F g z 2 N g v e Z 5 M S G C J 0 i x V I 3 g p 0 o E e a e 6 9 E U l g 6 + B y 8 9 J j t 8 p q u + 5 P a 9 m P s 1 x 5 l 1 1 H G 9 a W H J P r 9 E S d 5 9 d 7 i 9 l 2 4 R 5 2 0 X e e e T P e P d r / v J M Z n x + L T / 9 K U s q s 7 S 6 I m X + 1 V h y / / l s / n 2 + H X G N 7 n B f / D n N O N q d F X X q V P r 1 p l h K r 9 f P 9 g v M 9 f 9 c 6 0 V P 1 S r I f 1 E / A Y z B C R w V S A d t e T q X M / D n f s g n / r i I / h i V u 7 N 0 I g M + I X 3 w + X k 8 O q n j v P g 3 r f a D 9 s b d r 4 q y 1 u g j + h i v 5 R Z 9 R n f R + P t 4 N a r a t P Z L 7 d f a b / X f 6 3 / W X 9 R f 5 t B z a 8 W e D 2 n h q r / 6 C 3 j o B a w = < / l a t e x i t > hypothesis was that using SM 0 was unlikely to succeed since almost all sites selected at random do not lie within the planted clique.But SM 1 seems more promising, even with its O(N 3 ) cost.And if the search gave rise to any clique of size R(N ) or larger, perhaps by a fixed amount d ≥ 2, that is strong evidence of the existence of the planted clique.A clique of this size is a reliable starting point for a cleanup operation to find the remaining sites, using Algorithm 6.To our surprise, as shown in Fig. 17, this succeeds in a greater fraction of the graphs than does AMP for planted cliques, when α < 1.This strategy of stopping SM 1 as soon as the hidden clique is sufficiently exposed to finish the job with the clean up Algorithm 6 produces the hidden clique almost without exception in our graphs of order 10 4 through the entire regime from α = 1 down to α = 1/ √ e.In this regime, AMP, converges to a solution in a rapidly decreasing fraction of the graphs.We studied the same 100 graphs with AMP as were solved with SM 1 at each value of α.Using SM 1 with early stopping, we could extract planted cliques as small as α = 0.4.Naturally, the success of early stopping in making SM 1 useful led us to try the same with SM 2 .We tried this with only 5 graphs at each value of α, and were able to identify the planted clique in all graphs down to α = 0.35, and in two out of five graphs at α = 0.3.The method was not successful at all at α = 0.25.The third curve of results in Fig. 17 shows the results of the three methods.It appears that the local, greedy methods, when used repeatedly in this fashion, are actually stronger than the more globally extended survey data collected by AMP.But to compare their effectiveness, it is also necessary to compare their computational costs.This is explored in Figs.18 and 19.
In Figs 18 and 19, we compare the effectiveness of SM 1 and SM 2 with early stopping and AMP.First, we find that the number of trials required for SM 1 to expose the hidden clique was close to N at the lowest successful searches, but dropped rapidly (the scale is logarithmic) for α > 1/e.As α approaches 1, there are more starting points than there are points in the hidden clique, while for α < 1/e, not every point in the hidden clique is an effective starting point.The plot in Fig. 18 expresses the number of sites which needed to be searched as δ, the fraction of the search space traversed.Similarly, we plot as δ for SM 2 the number of links searched divided by the number of links in the graph.
We briefly explored the importance of where to stop the search by running SM 1 to completion for a small number of graphs at α = 0.6 and considering the sizes of the cliques found.This distribution varies quite widely from one graph to another.The full hidden clique is frequently found, and the most common sized results were about half of the hidden clique size.Only a very few cliques returned by SM 1 were within 1 − 4 sites of R(N ), so we recommend the stopping criterion R(N ) + 2 as a robust value.The average running time to solve one graph for each of the three is plotted in Fig. 19.The average cost of solving AMP, (red points) is greatest just above α = 1/ √ e where it sometimes fails to converge, and decreases at higher α, largely because convergence is achieved, with fewer iterations as α increases.The cost decreases at lower values of α because AMP converges more quickly, but this time to an uninformative fixed point.SM 1 with early stopping (blue points) requires less time than AMP to expose the planted clique at all values of α where one or both of the methods are able to succeed, and is several hundred times faster at α = 1.SM 2 with early stopping (black points) is more expensive than SM 1 with early stopping at all values of α, but is also less costly than AMP in the range 1/ √ e < α < 1.It is the most costly algorithm at still lower values of α, but the only method that can provide any solutions down to the present lower limit of α = 0.3.This efficiency, as well as the ability of local greedy algorithms with early stopping to identify cliques with α < 1/e, is a surprising and novel result.

IV. CONCLUSIONS
More than 20 years have elapsed since the DIMACS community reviewed algorithms for finding maximum cliques (and independent sets) in Erdös-Rényi graphs G(N, p) with N sites and bonds present with fixed probability, p. Computer power and computer memory roughly 100× what was available to the researchers of that period are now found in common laptops.But unfortunately, the size of the problems that this can solve (in this area) only increases as the log of the CPU speed.We can now explore the limits of polynomial algorithms up to N = 10 5 , while the DIMACS studies reached only a few thousand sites.In contrast to problems like random 3-SAT, for which almost all instances have solutions by directed search [2] or belief propagation-like [36][37][38] methods which approach the limits of satisfiability to within a percent or less, finding a maximum clique remains hard over a large region of parameters for almost all random graphs, if we seek solutions more than a few steps beyond the dynamical threshold, log 2 N set by the naive greedy algorithm.Using tests more detailed than the bakeoff with which algorithms have been compared, we show that expensive O(N 3 ) and O(N 4 ) searches can accurately reproduce the distribution of maximum clique sizes known to exist in fairly large random graphs.(Up to at least N = 500 for the O(N 3 ) algorithm and about N = 1500 for the O(N 4 ) algorithm.)This is a more demanding and informative test of the algorithms' performance than seeing what size clique they each can extract from graphs whose actual maximum clique size is unknown.
A more promising approach is to use the simplest search algorithm to define a subgraph much smaller than N as a starting subset in which to apply the higher order search strategies.This cannot produce the exact maximum clique, or even get within a percent or less of the answer as with SAT, because the naive initial search combines sites which belong in different maximum cliques into the starting set and the higher order follow-up search that we employ does not fully separate them.Nonetheless, extrapolating our several algorithms towards the scales that future data and future computing power will afford suggests that the challenge of exceeding the dynamical threshold can be met for N at least 10 10 and perhaps up to values such as 10 20 .These are in the range presented by the information retrieval challenges of modern commercial data.
The second challenge we considered is locating and reconstructing a hidden clique, perhaps with the use of a hint.The hint (a site known to be in the hidden clique) has the effect of eliminating parts of the graph that will not be in the full clique to the point that the eigenvector of the adjacency matrix corresponding to its largest eigenvalue can be used to identify the remaining clique members, or that greedy search in the remaining graph can extract a large fraction the hidden clique, with a cleanup step used to identify the rest.Using spectral methods (augmented with a hint), Deshpande and Montanari's [21] AMP, or our slightly more than linear cost polynomial SM 1 with early stopping, we can reconstruct the hidden clique well within the textchallenge regime that Jerrum pointed out.What is surprising is that a version of the the simplest greedy algorithm performs even better on problems of the largest currently achievable sizes.
The challenges posed at the start of this paper apply only as N → ∞, in a problem with significant and interesting finite-size corrections.Although computing power, data storage, and the data from which information retrieval tools are sought to find tightly connected communities all increase at a dramatic pace, all of these presently lie in the finite-sized range of interest, not at the asymptotic limit.Yet they are well beyond the scale of previous efforts to assess algorithms for this problem.Since asymptotic behavior is only approached logarithmically in the clique problem, we think that additional challenges of value should be posed in the finite size regime.We have shown that effective searches for cliques can be conducted on graphs of up to 10 5 sites, using serial programs.With better, perhaps parallel algorithms, and the use of less-local search strategies such as AMP, can this sort of search deal with information structures of up to 10 9 nodes using today's computers?With computational resources of the next decade, and perhaps a better understanding of the nature of search in problems with such low signal-to-noise ratios as MaxClique, can we hope to see graphs of order 10 12 being handled?
The criterion that we used to evaluate the SM i family of algorithms and their derivatives can be applied at the steps for any larger N , where K max increases by one.For a graph in G(N, 0.5), constructed at the step rise, find the half of the graphs which contain a clique of the size characteristic of the upper step.Or show that the probability of seeing any graph with a clique of this size is greater than .
In finding hidden cliques in commercial data, use of some hints is reasonable, since communities in social data are defined by known exemplars.For cliques of size O( √ N ), can the hidden clique be restored with only one hint when it's size is √ N for arbitrarily small > 0 at some affordable cost c( ).Can a constant number of hints or perhaps a fraction of log 2 N hints be used to reveal a planted clique whose size is only a small multiple of K max , without reducing the cardinality of the sites in the graph to be searched to the square of the number of clique sites still to be found?i.e., without making the reconstruction search trivial by making its "α" << 1?A promising parallel approach to such needle in haystack searches could be constructed by conducting many local searches, pruning their cost by early stopping, and then expanding on the most successful, as we have done in both searching for naturally occurring cliques and for planted solutions.
FIG.1.The picture shows the probability that we can find no other site to grow the clique to size K + 1 as function of K/ log 2 N .The inset shows the universal form that all of these curves take when rescaled.

FIG. 2 .
FIG.2.Maximum size of a clique in G(N,0.5) as function of the order of the graph.In green are presented Kmax, result of solving (2) and R(N ) given by (3), respectively.In black is plotted the value of 2 log 2 N and in blue, log 2 N .

FIG. 5 .
FIG. 5. (a) Across a single step in Kmax, this figure compares the fraction of graphs predicted to have each value of Kmax from equation (4) with the experimental probability obtained using SM 1 and SM 2 .The left y-axis shows the clique number, i.e. the largest clique size Kmax as a function of N .The right y-axis indicates the fraction of Kmax−1, Kmax, Kmax+1, obtained from the experiments with SM 1 and SM 2 .Each fraction has been computed on a population of 500 random E-R graphs G(N, p = 0.5).The regions coloured in red, purple and blue identify the theoretical probability obtained by equation (4).The filled square points describe the fraction of Kmax − 1, Kmax, Kmax + 1 (red, purple and blue respectively) obtained from experiments with SM 2 , the empty squares the same for SM 1 .(b) Here we follow the fraction of graphs found by SM 1 (open-circles) and SM 2 (solid-squares) from Kmax = 10 to Kmax = 16.The fraction seen for each value of Kmax receives a different color.

FIG. 6 .
FIG.6.The size of the maximal cliques found on E-R graphs G(N, p = 0.5), using the algorithm SM 0 → SM 4 .The green staircase indicates Kmax, while the dashed green straight line represents R(N ).The black and the blue straight lines describe the values of 2 log 2 N and log 2 N , respectively.Red circles describe the maximal clique size mean obtained by SM 0 , averaging over 2000 random E-R graphs, as a function of the order of the graph.Black circles are the mean maximal clique size obtained by SM 0 → SM4 , averaging over 500 random E-R graphs.

FIG. 7 .
FIG.7.Maximal clique on E-R graphs G(N, p = 0.5), using the algorithm SM 0 → iter[SM i ].Kmax is represented by the green staircase.The dashed green straight line is R(N ).The black and the blue straight lines describe the values of 2 log 2 N and log 2 N , respectively.Black circles are the mean maximal clique size obtained by SM 0 → SM4 , averaging over 500 random E-R graphs, while magenta circles are the mean maximal clique size obtained by SM 0 → iter[SM i ], using the values of i in Table(5).
Fig 9 (a) we show the results of running SM 0 and SM 1 at p = 0.2 and in Fig 9(b) we show the same algorithms applied to p = 0.1.The solid lines in this figure indicate the simple estimates log 1/p N and 2 log 1/p N , respectively.In both cases, SM 0 provides cliques at about 1.5 log 1/p N , or 1.5× the naive greedy result, while SM 1 captures the oscillation of the steps up to well above N = 10 4 and runs fast enough to have given us data averaged over 100 graphs at sizes up to N = 95000 at p = 0.2 and p = 0.1.

FIG. 9 .
FIG.9.Algorithms SM 0 and SM 1 applied to G(N, p) graphs with p = 0.2 (a) and 0.1 (b).Results for SM 0 and SM 1 were obtained for values of N up to 95000 in both cases.The error bars indicate standard deviations over samples of 100 graphs at each data point.

FIG. 10 .
FIG.10.The picture shows the cost of the algorithms in seconds [s] for solving 500 random E-R graphs of order N and with edge density equal to p = 0.5.

4 FIG. 12 .
FIG. 12.The picture shows the energy gap value as function of α = KHC / √ N , for different values of N .The gap appears when KHC lies between 1.1 and 1.2 √ N .

FIG. 13 .
FIG.13.The picture shows the distribution of the eigenvector components on the hidden clique sites for a case with α = 1.5, blue histogram, and the distribution of the components of that eigenvector on the other sites of the graph, red histogram.

FIG. 14 .FIG. 15 .
FIG.14.The picture (a) shows the distribution of the eigenvector components on the hidden clique sites for a case with α = 1.0, blue histogram, and the distribution of the components of that eigenvector on the other sites of the graph, red histogram, when E0 = 0, while the picture (b) shows the distribution of the eigenvector components on the hidden clique sites for a case with α = 1.0, blue histogram, and the distribution of the components of that eigenvector on the other sites of the graph, red histogram, when E0 = 0.6.

Algorithm 4 :
SM I algorithm for finding a maximal clique Algorithm 5: SM i ES algorithm for finding a hidden clique

7 run
Cleaning Algorithm (C, G(V, E, K HC )); t e x i t s h a 1 _ b a s e 6 4 = " / P d S 1 q z S c 3 p I r 0 D d g 0 4 V O t O 2 g n p 2 z y v 7 7 9 p n 3 + o K y D 1 6 D 0 5 g L Q U i + N i 9 o Q z 5 / I / 6 L 6 K 2 s L L N 7 / p e + Y P p 2 K A V a l s E Y k 8 U L d A K W R h 4 6 k 2 g 0 n S Z b o O u w s f f I x t g 1 8 W P 8 9 + r m u N s n o N j 6 D 6 9 Q w 1 D e g w N Y + s Z I k e m R 7 t 2 + 9 v m 6 4 5 1 c T 9 H c b X y 6 W C 9 q u W M 5 2 Y I m 9 T 1 X S I y 5 + e 7 K M J F 7 d t 8 Y s w F o + 0 5 z F y f x M 5 X s a Z D t z a d t 8 z 5 4 s n j N Z + 3 D N G U 7 c h 0D P T T 5 f n O T a y g t z Z a n r V w d W D N N a u 5 v I 3 t E u 5 H m A b e L R S q w X 1 Y L i D P T z C / p Y e Q L U 5 U W y K n G N T 4 H V G D 1 r z N a s H K R w X P O / V F J 3 A z p 2 + x P o P V I 9 h c o o Y 7 i + P q J I g Q F j q R n + C m r T 5 P 6 / h E 3 t z j 9 M 6 7 q c r 7 v 9 / 0 L 1 i M 1 7 c j c + 0 y r O H 2 d I 6 l n G G + V u Br H b h e T M 3 2 f m 8 2 9 l D Z P D 1 X W 6 r Z S 0 w T d U f M k b u e b M 7 O n G t 1 I 5 k F K j T S 9 9 J 0 o 1 6 L T

2 8 3 Define 4 Define C 0 = C [ S ; 5 Count connections in C 0 ; 6 Define 7 if
u l j 6 V P p c / l L + W v 5 e / l H r n p g x t m c p c J V / v k L g I b R 0 w = = < / l a t e x i t > Algorithm 5: SM I algorithm for finding a maximal clique Algorithm 6: Cleaning Algorithm Input : C clique of cardinality |C| R(N ) + 2 and G(V, E, K HC ) Output: Hidden Clique K HC 1 while TRUE do site i 2 V /C, count how many connections i has with each site j 2 C ; S as the set of those sites that, in step 2, have the maximum number of connections with sites in C; C 00 as the set of those sites in C 0 with a number of connection bigger to |C|; |C 00 | == K HC then t e x i t s h a 1 _ b a s e 6 4 = " A k E v Z b p w b L u J z 9 L J p J g s l H 5 i 3 b I = " > A A A K R H i c 7 V b d b h t F F D 4 p / b F d K A 1 c V d y M y K I W N U p t 9 w I k V K l g E E E V 0 D Z N U i l 2 o / F 4 b A / Z n X V 3 Z 1 s s x 8 / C L b w I 7 8 A 7 c F f 1 t u K b s 9 v s 2 n E J c F m x l n f P n P P N d 3 5 n t f 1 J a F L X b P 6 x d u 6 d 8 x c u X q r V G 5 f f f e / K + 1 f X P 9 h L 4 y x R e l f F Y Z w 8 7 s t U h 8 b q X W d c q B 9 P E i 2 j f q j 3 + 0 c d b 9 9 / p p P U x P a R m 0 5 0 L 5 I j a 4 Z G S Q d V v H 6 + T l 3 q k 6 Y R G b I 0 I 0 k h 5 J g S r B 2 N K a I 5 N U g A p W C b Q G d g 9 c i A d u h 7 e g L p O 2 A C Y E 7 v F T T k t X 9 6 / g H f R 4 w V s E v 6 G Z q I d w p 4 C L F 6 S h n i + d / r 2 + u 1 i 6 f f 8 6 Z p a / y D m T y g b e p x B m J l F l 3 I G l E 4 M A 2 x 7 o B D A 2 N P I v 1 y B e v 8 h N F z 7 m C H o 3 v 0 H J W w 9 C P i d 1 w V C 0 9 e n i + t z t 6 b P 8 v d i + v q / p L X d 6 T D f a j W U S D y I e s k M s j r L 9 n u a A p 9 Q M f Y d c x c I + C f Q n p I N + g H + p R u U r v o q + + C x 3 4 L y x 5 t Q v 6 G 7 / f o E H 6 3 w T A H P l i K r R r 1 D J p t e B 3 g 5 7 s q u N J l l M E C V 1 D 0 t + T a R + U N 9 2 Z G j x D h L i L w l S k x A V D 5 t P n 8 Q o 4 8 5 T x z f s M 8 h n 3 v 0 S 3 4 8 d p N r k 2 M K C y Q A l 5 i 9 Blue points describe the maximal clique size found with SM 1 , while orange points are the results of SM 2 .The average is obtained over 500 and 100 graphs for SM 1 and SM 2 , respectively.
17G.17.The picture shows the probability of success for recovering the hidden clique as function of α for AMP (red points), SM 1 with early stopping (blue points) and SM 2 with early stopping (black points).Points are averages over 100 graphs G(N = 10 4 , p = 0.5, KHC = α √ N ) for AMP algorithm and SM 1 with early stopping, while they are an average over 5 graphs for SM 2 with early stopping.
18G.18.The picture shows the fraction of iteration (δ) that SM 1 with early stopping (blue points) and SM 2 with early stopping (black points) need to make before stopping, in log scale, as function of α.Points are averaged over 100 and 5 graphs G(N = 10 4 , p = 0.5, KHC = α √ N ), for SM 1 and SM 2 , respectively, both with early stopping.
19IG.19.The picture shows as function of α the average time, in seconds, needed by AMP (red points), and SM 1 (blue points) and SM 2 (black points) with early stopping, to give an answer on a single graph G(N = 10 4 , p = 0.5, KHC = α √ N ).