Randomised algorithms for counting and generating combinatorial structures

The thesis studies the computational complexity of two natural classes of combinatorial problems: counting the elements of a finite set of structures and generating them uniformly at random. For each problem class, a notion of efficient randomised approximation algorithm is defined. The central theme is the classification of counting and generation problems for natural combinatorial structures with respect to these notions of tractability. For many structures, the two problems are of essentially equivalent complexity at this level of approximation. The emphasis is on positive results. In particular, the thesis makes a detailed study of a general technique for random generation based on simulating a finite Markov chain whose states are the structures of interest and which converges to some desired distribution over them. The efficiency of this method depends crucially on the rate of convergence of the chain. A major portion of the thesis is devoted to deriving a characterisation of rapid convergence for a broad class of Markov chains in terms of a structural property of the underlying graph. This enables useful bounds on the rate of convergence of non-trivial chains to be established for the first time. As a result, the following classes of structures may be generated almost uniformly in polynomial time: perfect matchings in dense graphs, and matchings of all sizes in arbitrary graphs. This approach also yields the first polynomial time approximation algorithms for counting these structures, and hence for computing the permanent of dense 0-1 matrices and the partition function of monomer-dimer systems in statistical physics. It is also shown that, for self-reducible structures, almost uniform generation is polynomial time reducible to a very weak form of approximate counting. This fact yields the following robustness result for approximate counting: for selfreducible structures, polynomial time randomised algorithms for counting to within factors of the form 1 + no are available either for all real /3 or for no real P. It also provides a mechanism for generating structures given fairly crude analytic counting estimates for them. This technique is used to derive an almost uniform generation procedure for labelled graphs with given degree sequence and a given excluded subgraph which is valid over a much wider range of degrees than previous methods. This in turn leads to approximate counting algorithms for these graphs with very good asymptotic behaviour.

[1]  J. Cheeger A lower bound for the smallest eigenvalue of the Laplacian , 1969 .

[2]  O. J. Heilmann,et al.  Theory of monomer-dimer systems , 1972 .

[3]  Frank Harary,et al.  Graphical enumeration , 1973 .

[4]  E. Bender Asymptotic Methods in Enumeration , 1974 .

[5]  Larry J. Stockmeyer,et al.  The Polynomial-Time Hierarchy , 1976, Theor. Comput. Sci..

[6]  Jeffrey D. Ullman,et al.  Introduction to Automata Theory, Languages and Computation , 1979 .

[7]  L. Lovász Combinatorial problems and exercises , 1979 .

[8]  Leslie G. Valiant,et al.  The Complexity of Computing the Permanent , 1979, Theor. Comput. Sci..

[9]  J. Keilson Markov Chain Models--Rarity And Exponentiality , 1979 .

[10]  Leslie G. Valiant,et al.  Fast probabilistic algorithms for hamiltonian circuits and matchings , 1977, STOC '77.

[11]  Leslie G. Valiant,et al.  The Complexity of Enumeration and Reliability Problems , 1979, SIAM J. Comput..

[12]  P. Erdos,et al.  Old and new problems and results in combinatorial number theory , 1980 .

[13]  P. Diaconis,et al.  Generating a random permutation with random transpositions , 1981 .

[14]  Herbert S. Wilf The Uniform Selection of Free Trees , 1981, J. Algorithms.

[15]  Valerie Isham,et al.  Non‐Negative Matrices and Markov Chains , 1983 .

[16]  Jacques Cohen,et al.  Uniform Random Generation of Strings in a Context-Free Language , 1983, SIAM J. Comput..

[17]  Alain Guénoche Random Spanning Tree , 1983, J. Algorithms.

[18]  Richard M. Karp,et al.  Monte-Carlo algorithms for enumeration and reliability problems , 1983, 24th Annual Symposium on Foundations of Computer Science (sfcs 1983).

[19]  Larry J. Stockmeyer,et al.  The complexity of approximate counting , 1983, STOC.

[20]  Nicholas C. Wormald,et al.  Generating Random Regular Graphs , 1984, J. Algorithms.

[21]  Jin-Yi Cai,et al.  Exact Counting is as Easy as Approximate Counting , 1986 .

[22]  N. Alon Eigenvalues and expanders , 1986, Comb..

[23]  Andrei Z. Broder,et al.  How hard is it to marry at random? (On the approximation of the permanent) , 1986, STOC '86.

[24]  P. Diaconis,et al.  SHUFFLING CARDS AND STOPPING-TIMES , 1986 .

[25]  Eli Upfal,et al.  The token distribution problem , 1989, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[26]  Keith Edwards,et al.  The Complexity of Colouring Problems on Dense Graphs , 1986, Theor. Comput. Sci..

[27]  Leslie G. Valiant,et al.  Random Generation of Combinatorial Structures from a Uniform Distribution , 1986, Theor. Comput. Sci..

[28]  Nicholas C. Wormald,et al.  Generating Random Unlabelled Graphs , 1987, SIAM J. Comput..

[29]  M. Jerrum Two-dimensional monomer-dimer systems are computationally intractable , 1987 .

[30]  Mark Jerrum,et al.  Conductance and the Rapid Mixing Property for Markov Chains: the Approximation of the Permanent Resolved (Preliminary Version) , 1988, STOC 1988.