Log In Sign Up

Algorithm for Finding the Maximum Clique Based on Continuous Time Quantum Walk

by   Xi Li, et al.

In this work, we consider the application of continuous time quantum walking(CTQW) to the Maximum Clique(MC) Problem. Performing CTQW on graphs will generate distinct periodic probability amplitude for different vertices. We will show that the intensity of the probability amplitude at frequency indeed implies the clique structure of some special kinds of graph. And recursive algorithms with time complexity O(N^5) in classical computers for finding the maximum clique are proposed. We have experimented on random graphs where each edge exists with probabilities 0.3, 0.5 and 0.7. Although counter examples are not found for random graphs, whether these algorithms are universal is not known to us.


page 1

page 2

page 3

page 4


Expanded-clique graphs and the domination problem

Given a graph G and a function f : V(G) →ℕ such that f(v_i) ≥ d(v_i) for...

Spatial Search on Johnson Graphs by Continuous-Time Quantum Walk

Spatial search on graphs is one of the most important algorithmic applic...

Application of graph theory in quantum computer science

In this dissertation we demonstrate that the continuous-time quantum wal...

Circuit Synthesis of Maximum Clique Problem using Combinatorial Approach of Classical-Quantum Hybrid Model

In the Maximum Clique Problem, the objective is to find a clique whose s...

Walking on Vertices and Edges by Continuous-Time Quantum Walk

The quantum walk dynamics obey the laws of quantum mechanics with an ext...

Cakewalk Sampling

Combinatorial optimization is a common theme in computer science which u...

Quantum hub and authority centrality measures for directed networks based on continuous-time quantum walks

In this work we introduce, test and discuss three quantum methods for co...

I Introduction

The problem of finding the maximum clique(complete subgraph) is one of the NP-complete problemsKarp (1972). The optimal complexity of exact algorithms is Robson (2001). Designing a polynomial algorithm for NP-complete problems on classical computer is notoriously difficult. As the performance of quantum algorithm has been proved better than the classical algorithm in a lot of situationsNielsen and Chuang (2002); Shor (1994); Grover (1997), many scientists turned to consider quantum algorithm for NP-complete problemRoland and Cerf (2003); Cerf et al. (2000); Farhi et al. (2014); Kaminsky and Lloyd (2004); Childs et al. (2000). With the advantage of quantum states, all possible solutions(combinations of vertices of a given graph) are encoded in an initial superposition state, and the optimal solution is searched by a process of quantum evolution in the previous quantum algorithms. The quantum algorithm asymptotically requires the square root of the number of operations that the classical algorithm requiresNielsen and Chuang (2002); Roland and Cerf (2003). Apparently the structure of graphs is not adequately considered in these algorithms. Noga Alon, Michael Krivelevich and Benny Sudakov

s work shows that the second eigenvector is related to the MC of random graphs

Alon et al. (1998). Generally, how to connect the structure of graphs with the NP-complete problem is unclear. In this work, the structure of the MC in a graph refers specifically to whether a vertex belongs to the MC. We mainly focus on the stucture of center graphs because all kinds of graphs can be transformed to center graphs. A graph is called center graph if there exists one so-called center vertex adjacent to all other vertices. We will reveal how the structure of clique impact the continuous time quantum walks(CTQW) of several special kinds of center graph, and algorithms for the maximum clique problem will be proposed. In Farhi and Goldstones work, CTQW is defined as an evolution of a quantum system which is driven by the Laplacian matrix of a given graphFarhi and Gutmann (1998). With some other physical modelsChristandl et al. (2004); Gamble et al. (2010), the Hamiltonian of CTQW is defined as the adjacency matrix of the corresponding graph in this work. Then the state of CTQW is determined by , where is adjacency matrix of the given graph and is evolution unitary operator. This operation has a series form . As

is characterised by the number of walks in graphs, the CTQW does reflect the clique structure of several kinds of center graphs. The evolution can be estimated when eigenvectors and eigenvalues of a given adjacency matrix are obtained by numerical computation in

time on classical computers. The probability amplitude of CTQW is chosen as the critical feature to infer whether a vertex is a member of the maximum clique.

This paper is organized as follows: the second section presents CTQW on center graphs. In the third section, an algorithm, named algorithm A, with time complexity based on CTQW for finding the maximum clique is introduced. In the fourth section, we study the probable error of algorithm A and present the approach for constructing a graph which is not valid for algorithm A. In the fifth section, we give another two algorithms, named algorithm B and algorithm C, to fix algorithm A. The last section is the conclusion.

Ii The clique structure and the CTQW on center graph

Generally, a graph is denoted as , consisting of a vertex set and an edge set . The set is a subset of , which implies the connection relationship between any pair of vertices in . Let the number of equals to , the adjacency matrix of is an real symmetric matrix , where if vertex and are connected otherwise .

Consider the CTQW on a given graph, one can associate every vertex

of the graph with a basis vector

in a N-dimensional vector space. The Hamiltonian of the system is


If is the initial state of system, and the transition probability amplitude from to is or short format , then:


The probability or short format can be written as


The eigenvalues of the A are denoted as (), the eigenvalues are arranged in descending order, namely . The eigenvector belongs to is denoted as , producing:




The real part of the amplitude can be represented as


where . This implies that the real part of amplitude of CTQW is a periodic function with frequency components, the values of frequency are the eigenvalues of adjacency matrix and the intensity of the frequenc is .

The amplitude can also be represented as a form of sums, i,e.,


Where denotes the number of walks of length Cvetković et al. (1980). Therefore, the CTQW is determined by the number of walks in graphs.

Consider a graph and one of its vertices , the neighbors of denoted by . The induced subgraph of vertex is denoted as . We call the center subgraph of vertex and the vertex the center vertex of . Note that the concept of center graph is not completely same with the concept of reference Bonchev et al. (1980). Two natural approachs can be used to transform a graph to a center graph or set of center graphs. the first way is to add a new vertex then connect it to every vertex of the original graph. The second approach is to induce a set of center graphs of the original graph .

A center graph is called the first kind of ideal center graph, if there are two cliques in and there has no edge connecting any pair of vertices when and are members of distinct cliques. One of this kind of center graph is shown in Fig.(1).

Figure 1: The center graph of vertex , . There exists two cliques, one is the subgraph induced by , another is the subgraph induced by

It is hard to obtain the analytical solutions of eigenvalues and eigenvectors even for the first kind of ideal center graph. The method of counting the number of walks is used for solving the CTQW. Let also denote the number of closed walks of center vertex, denote the number of walks starting from the center vertex ending with one of vertices in the MC, and denote number of walks starting from the ceter vertex ending with one of vertices not in the C. It provides that


Where is the clique number and is the size of the remaining clique. Finding the solutions of Eq.(8) is equivalent to do eigen decomposition of adjacency matrix . But the exact numerical solutions are complex and helpless for inferring whether a vertex belongs to the maximum clique. We only need the relations between the probability amplitudes of different vertices. By using the result of literatureCvetković et al. (1980); Van Mieghem (2010), we have


Where . Taking Eq.(9) into the second and third terms of Eq.(8), we have




Solving Eq.(10) and Eq.(11), we have




Hence the probability amplitude of which is a vertex of MC is


and for which isn’t a member of the maximum clique, the probability amplitude is


As is not a eigenvalue for , compare 4 with 19 and 15 to obtained that


Let denote the coefficient of at eigenvalue . Then we have the follow theorem

Theorem 1.

For the first kind of ideal center graph , , is the center vertex, is a member of the maximum clique of , is not a member of the maximum clique. Then



Theorem.1 is obvious since . Therefore, it is easy to pick up the vertex that belongs to the maximum clique from the first kind of ideal center graph by using CTQW.

The second kind of ideal center graph is graphs derived from the first kind of ideal center graph via replacing the second large clique with a complete multi-partite graph, and keeping the maximum clique unchanged. An example graph of this type is shown in Fig.2.

Figure 2: The second kind of ideal center graph. There has no edge that connect the vertices in the MC and the vertices not in the MC. The induced subgraph of blue vertices is a complete multi-partite graph

The maximum clique of graph shown in Fig.2 is 5. Since the blue vertices constitute a complete multi-partite graph, adding edges between blue vertices will generate cliques with size not less than .

For the second kind of ideal center graph, the number of walks can be determined by the follow recursion equations:


Where is the number of vertex in each independent set. Compare Eqs.(17) to Eqs.(8), one can find that the solutions format of Eqs.(17) are similar with the solutions of Eqs.(8), just replacing by in 15. Therefore, for a vertex which belongs to the maximum clique in the graph shown in Fig.2, it provides that


and for a vertex which doesn’t belong to the maximum clique, it provides


Similar to Theorem.1, the following theorem is provided:

Theorem 2.

For the second kind of ideal center graph , , is the center vertex, is a member of the maximum clique of , is not a member of the maximum clique. Then



In the previous instances, there has no edge connecting vertices in different cliques. For general cases, there exist multiple edges between vertices from distinct cliques. One of such instances is exhibited in Fig.3.

Figure 3: An exaple graph. In this configuration, the maximun clique and the non-maximum clique connect by edge (1,10),(2,8),(3,21)

For general graphs, the method of counting the number of walks to detemine the CTQW is as hard as the eigen-decomposition of the adjacency matrix. For general graphs, even such the eigen-decomposition is obtained, to directly deduce that whether a vertex is a member of the maximum clique is still not known to us. An intuitive idea is to generate center subgraph of the original graph and find the maximum clique in that center subgraphs. For instance, the maximum clique attached to vertex 3 of the graph shown in Fig.3 can be easily found. The center graph of vertex 3 is exhibited in Fig.4. Note that the original center vertex 5 is not include in .

Figure 4: The center subgraph of vertex 3. The graph is induced by , namely {1,2,3,4,21}

The result graph in Fig.4 is the first kind of ideal center graph, and its maximum clique can be determined by Theorem.1. This inspires us that performing CTQW on center graphs in an orderly way can help us to reveal the maximum clique. In this procedure, we need repeatedly choose vertices and construct associated center subgraphs. In the following section, is used to denote the center graph of or the procedure of constructing the center graph of . The procedure of deleting vertex in graph is frequently used and is denoted as . The method about how to successively select a vertex to construct a center graph is presented in the next section.

Iii A recursive algoruthm for finding the maximum clique by CTQW

An algorithm, named algorithm A, based on eigenvectors of adjacency matrix of graph for finding the maximum clique is proposed in this section. The intensities of the real part(or imaginary part) of the probability amplitude are used as the critical feature for selecting probable vertices. The procedure of algorithm A is illustrated by a tree-like diagram in Fig.5.

The algorithm A is based on the Theorem.1, i.e., the frequency component of the largest eigenvalue is used as the feature for picking probable vertices belonging to the maximum clique. If the intensity of vertex is the biggest among all other vertices, then it would be picked as a probable member of the maximum clique. The root of the tree-like diagram denotes the algorithm, and the leaf node denotes the sub-modules of the algorithm.

Figure 5: The recursive algorithm for finding the maximum clique. There are four sub-modules in algorithm A, and the fourth sub-module recursively calls the algorithm A on a smaller subgraph.

As showed in Fig.5, there are four cases(sub-modules) in algorithm A and the last is the recursive process. The first one is the sub-algorithm named in which the strategy of picking the vertex with the largest intensity at frequency in amplitude of CTQW was employed. The second one is the sub-algorithm named in which the strategy of deleting the vertex with the weakest intensity at frequency in amplitude of CTQW was employed. Then, we want to delete a vertex with the weakest intensity at frequency , this vertex is denoted as . Since that vertex maybe a member of the maximum clique, the third sub-module is applied to find the maximum clique of . The last sub-module is to recursively call the algorithm A. Note that the size of the graph decreases by one since a vertex is deleted in the fourth module. The maximum clique of is the largest clique found in these four cases. The sub-modules and are presented in the following charts.

1:Central graph , central vertex
2:Clique C;
3:Delete vertex in and for every other vertex , let , find the central graph of , and denote as , ;
4:Do eigen-decomposition on adjacent matrix of , The largest eigenvalue is , corresponding eigenvector is and denotes the component of ;
5:Calculate the intensity of amplitude of every vertex at the maximum frequency , denoted as , ;
6:Add vertex which has the largest intensity at frequency to ; Delete and construct center graph , if size of is not 1, then and turn to step.4, else turn to step.7
7:Select the clique of max size in as .
Algorithm 1 The step of Pick_max
1:Central graph , central vertex
2:Clique C;
3:If is a complete graph, then return all vertexes of as clique .
4:Do eigen-decomposition on adjacent matrix of , The largest eigenvalue is , corresponding eigenvector is and denotes the component of ; turn to step.5
5:Delete vertex which has the smallest intensity at frequency , turn to step.3. return ;
Algorithm 2 The step of Delete_min

Algorithm A has polynomial complexity. To observe this, we need solve the recursion of algorithm A. Let denote the complexity of algorithm A, and , , denote the complexity of the corresponding submodules. Then the following recursion is satisfied.


As the complexity of , , are all , the Eq.20 can be reduced to


Then from Eq.21, it provide that


We have experimented on random graphs with different edge connecting probability varying from 0.3 to 1 on classical computers. And in our experiments, counter example(the algorithm finds a clique which is not the maximum one) is not found yet. But counter examples can be elaborately constructed. We will illustrate an approach for designing such a graph in the next section.

Iv Probable counter examples of algorithm A

We will present an approach for constructing probable counter examples of algorithm A in this section. Let denote the number of walks of length from the center vertex to the vertex . From the previous section,


Where, . Therefore, the amplitude of CTQW is

In algorithm A, of different vertex at the largest eigenvalue are compared. For a large enough , and , if and only if . This implies that if algorithm A is invalid for some graph , then every member of the maximum clique has some neighbor that has the largest number of walks . In this case, no matter which vertex belonging to the maximum clique is chosen, will be chosen in some layer of the recursion, and spontaneously the algorithm A is failed. For simplicity, assume all such subgraphs which are adjacent to every member of the maximum clique are the same, and it is a complete multi-partite graph with degree far larger than the size of MC. For clarity, we propose a kind of graph which is named as base graph. A schematic diagram of base graph is exhibited in Fig.6.

Figure 6: Base graph. The graph contains a complete subgraph and a complete multi-partite subgraph. The number of independence set is not larger than the clique number, the number of vertices in the complete multi-partite subgraph is as great as possible.

The base graph consists of two elementary sub-graph, one is the maximum clique at the upper of Fig.6, the other is a complete multi-partite graph containing all the light blue vertices in Fig.6. The vertex set in the same dashed box are not adjacent pairwise, i.e., it is an independent set. And vertices from different dashed box are fully adjacent. Edges can be added between the vertices of the maximum clique and the complete multi-partite graph. Firstly, a vertex, the red vertex in this instance, is chosen as the center vertex. Secondly, every combination of three vertices except the center vertex in the maximum clique are connected to common vertices from at least two partite of the complete multi-partite graph, is the number of partite and is the vertices in each independent set. After the two procedures of adding edges, every three vertices of the maximum clique have a common complete multipartite graph as neighbor. The condition makes sure that a non-maximum clique vertex will be chosen in the procedure of the algorithm A, namely algorithm A failed in this situation.

Although algorithm A isnt universal, it divides all graphs into two classes. The maximum clique of the first class of graphs can be found accurately by algorithm A but the second class of graphs couldnt. Therefore, if there exists an algorithm can crack the second class of graphs, then the problem can be overcome. The algorithm B is designed to improve the performance of algorithm A for the second class of graphs. And algorithm C is derived from algorithm B by removing recursions. We will further describe them in the next section.

V Variational frequency selection algorithm for finding clique

In the algorithm B, we give greater attention to the contextual information. Supposing that is a vertex with the smallest intensity at the largest frequency, and we will find a maximum clique attached to . In the center graph of the original center vertex, has the smallest intensity at the largest frequency, however, has a considerable intensity at some frequency , then the other members of the maximum clique are more likely to occur at frequency . Then a vertex which has largest intensity at frequency except is chosen, is called the reference vertex. The CTQW on the center graph of and the location of vertex is used to determine the next reference vertex. The will become the new center graph and new reference vertex is used to find the next reference vertex. Such a way can apply to the second class of graph at some to some extent. To prove the algorithm B is totally valid for the second class of graphs is beyond this work. The procedure of algorithm B is illustrated in Fig.8.

Figure 7: The procedure of algorithm B. The algorithm has four sub-modules and only the third sub-module is different with the algorithm A.

The third module is named VFSA which is short for variational frequency selection algorithm for finding clique. The input of VFSA is and . is the center graph of vertex which denotes the vertex with the weakest intensity at the frequency . is the frequency where takes the largest intensity in . And the vertex is the auxiliary adjacent vertex of and has the largest intensity except in frequency . Vertex acts as the central vertex in the subsequent procedure. The following is the step of VFSA.

1:Central graph , central vertex , next central vertex
2:Clique ;
3:If is a complete graph, then return all vertexes of as clique , if not, add to clique , turn to step.4
4:Do eigen-decomposition on adjacent matrix of , The largest eigenvalue is , corresponding eigenvector is and denotes the component of . Find a frequency such that vertex can take the largest intensity among all frequencies. turn to step.5
5:Find vertex which has the largest intensity at frequency in the neighbors of vertex
6:Delete and let , , , turn to step.3
Algorithm 3 The step of VFSA

In both algorithm A and algorithm B, the recursion is utilized to eliminate probable interference from low connectivity vertices. However, because a vertex will be removed in the recursion, this may lead not all of the maximum cliques are found when there are multiple maximum clique attached to one same vertex. For this case, we will transform algorithm B to an algorithm without recursion. The recursion-less algorithm, is called algorithm C, just calls VFSA for every vertex of the given graph, namely calls VFSA times. The time complexity of algorithm C is , as the complexity of NFSA is time.

Figure 8: Algorithm C. .

Vi Conclusion

In this theme, we show that the clique structure of a graph is related with the CTQW. On some ideal graphs, the intensity of frequency of probability amplitude of CTQW is a good feature for direct speculating whether a vertex is a member of the maximum clique or not. As the frequencies of CTQW are the eigenvalues of the adjacency matrix, that is to say, the clique structure is related to the eigenvalues and the corresponding eigenvectors. But for general graphs, this feature is not so obvious, and one can not find the maximum clique directly. To reveal the hidden maximum clique, we propose two recursive algorithms, the Algorithm A and algorithm B, with time complexity to find the maximum clique on graphs by using CTQW. We further simplify algorithm B to algorithm C which has time complexity. It seems that the algorithm A is valid for random graphs via numerical experiments. But counter examples can be elaborately constructed, we have shown how to construct such graphs. For such graphs whose maximum clique can not be found by algorithm A, we propose algorithm B to fix. To conform that whether the algorithm B can be used for all graphs or not is beyond this article. And it will be the future work to undertake.


  • Karp (1972) Richard M Karp. Reducibility among combinatorial problems. In Complexity of computer computations, pages 85–103. Springer, 1972.
  • Robson (2001) John M Robson. Finding a maximum independent set in time o (2n/4). Technical report, Technical Report 1251-01, LaBRI, Université Bordeaux I, 2001.
  • Nielsen and Chuang (2002) Michael A Nielsen and Isaac Chuang. Quantum computation and quantum information, 2002.
  • Shor (1994) Peter W Shor. Algorithms for quantum computation: Discrete logarithms and factoring. In Proceedings 35th annual symposium on foundations of computer science, pages 124–134. Ieee, 1994.
  • Grover (1997) Lov K Grover. Quantum mechanics helps in searching for a needle in a haystack. Physical review letters, 79(2):325, 1997.
  • Roland and Cerf (2003) Jérémie Roland and Nicolas J Cerf. Adiabatic quantum search algorithm for structured problems. Physical Review A, 68(6):062312, 2003.
  • Cerf et al. (2000) Nicolas J Cerf, Lov K Grover, and Colin P Williams. Nested quantum search and structured problems. Physical Review A, 61(3):032303, 2000.
  • Farhi et al. (2014) Edward Farhi, Jeffrey Goldstone, and Sam Gutmann. A quantum approximate optimization algorithm. arXiv preprint arXiv:1411.4028, 2014.
  • Kaminsky and Lloyd (2004) William M Kaminsky and Seth Lloyd. Scalable architecture for adiabatic quantum computing of np-hard problems. In Quantum computing and quantum bits in mesoscopic systems, pages 229–236. Springer, 2004.
  • Childs et al. (2000) Andrew M Childs, Edward Farhi, Jeffrey Goldstone, and Sam Gutmann. Finding cliques by quantum adiabatic evolution. arXiv preprint quant-ph/0012104, 2000.
  • Alon et al. (1998) Noga Alon, Michael Krivelevich, and Benny Sudakov. Finding a large hidden clique in a random graph. Random Structures & Algorithms, 13(3-4):457–466, 1998.
  • Farhi and Gutmann (1998) Edward Farhi and Sam Gutmann.

    Quantum computation and decision trees.

    Physical Review A, 58(2):915, 1998.
  • Christandl et al. (2004) Matthias Christandl, Nilanjana Datta, Artur Ekert, and Andrew J Landahl. Perfect state transfer in quantum spin networks. Physical review letters, 92(18):187902, 2004.
  • Gamble et al. (2010) John King Gamble, Mark Friesen, Dong Zhou, Robert Joynt, and SN Coppersmith. Two-particle quantum walks applied to the graph isomorphism problem. Physical Review A, 81(5):052313, 2010.
  • Cvetković et al. (1980) Dragoš M Cvetković, Michael Doob, and Horst Sachs. Spectra of graphs: theory and application, volume 87. Academic Pr, 1980.
  • Bonchev et al. (1980) Danail Bonchev, Alexandru T Balaban, and Ov Mekenyan. Generalization of the graph center concept, and derived topological centric indexes. Journal of Chemical Information and Computer Sciences, 20(2):106–113, 1980.
  • Van Mieghem (2010) Piet Van Mieghem. Graph spectra for complex networks. Cambridge University Press, 2010.