Abstract
We present a new generic sequential importance sampling algorithm, called stochastic enumeration (SE) for counting #P-complete problems, such as the number of satisfiability assignments and the number of perfect matchings (permanent). We show that SE presents a natural generalization of the classic one-step-look-ahead algorithm in the sense that it: Runs in parallel multiple trajectories instead of a single one; Employs a polynomial time decision making oracle, which can be viewed as an n-step-look-ahead algorithm, where n is the size of the problem. Our simulation studies indicate good performance of SE as compared with the well-known splitting and SampleSearch methods.
Similar content being viewed by others
References
Botev ZI, Kroese DP (2008) An efficient algorithm for rare-event probability estimation, combinatorial optimization, and counting. Methodol Comput Appl Probab 10(4):471–505
Botev ZI, Kroese DP (2011) Efficient Monte Carlo simulation via the generalized splitting method. Stat Comput (accepted for publication)
Cerou F, Guyader A (2007) Adaptive multilevel splitting for rare event analysis. Stoch Anal Appl 25(2):417–443
Cerou F, Del Moral P, Le Gland F, Lezaud P (2006) Genetic genealogical models in rare event analysis. Latin Am J Probab Math Stat 1
Cerou F, Del Moral P, Furon T, Guyader A (2011) Rare event simulation for static distribution. Technical Report, Inria
Clisby N (2010) Efficient implementation of the pivot algorithm for self-avoiding walks. J Stat Phys 140:349–392. arXiv:1005.1444
Cormen TH, Leiserson CE, Rivest RL, Clifford S (2001) Section 24.3: Dijkstra’s algorithm. Introduction to algorithms, 2nd edn. MIT Press and McGraw-Hill, pp 595
Davis M, Putnam H (1960) A computing procedure for quantification theory. J ACM 7:201–215
Davis M, Logemann G, Loveland D (1962) A machine program for theorem proving. Commun ACM 5:394–397
Del Moral P (2004) Feynman–Kac formulae, genealogical and interacting particle systems with applications. Probability and its applications. Springer, New York
Garvels MJJ (2000) The splitting method in rare-event simulation. PhD thesis, University of Twente
Gertsbakh IB, Spungin Y (1999) Models of reliability: analysis, combinatorics and Monte Carlo. CRC Press, Boca Raton
Glasserman P, Heidelberger P, Shahabuddin P, Zajic T (1999) Multilevel splitting for estimating rare event probabilities. Oper Res 47(4):585–600
Gogate V, Dechter R (2007) Approximate counting by sampling the backtrack-free search space. In: Proceedings 22nd conference on artificial intelligence, pp 198–203
Gogate V, Dechter R (2010) SampleSearch: importance sampling in presence of determinism. Artificial Intelligence Journal 175(2):694–729
Janse van Rensburg EJ (2009) Monte Carlo methods for the self-avoiding walk. J Phys A, Math Theor 42:1–97
Jerrum MR, Valiant LG, Vazirani VV (1986) Random generation of combinatorial structures from a uniform distribution. Theor Comp Sci (Elsevier) 32:169–188
Kahn H, Harris TE (1951) Estimation of particle transmission by random sampling. Natl Bur Stand, Appl Math Ser 12:27–30
Kuhn HW (1955) The Hungarian method for the assignment problem. Nav Res Logist Q 2:83–97
Lagnoux A (2006) Rare event simulation. Probab Eng Inf Sci 20(1):45–66
Lagnoux-Renaudie A (2009) A two-steps branching splitting model under cost constraint. J Appl Probab 46(2):429–452
L’Ecuyer P, Blanchet J, Tuffin B, Glynn PW (2008) Asymptotic robustness of estimators in rare-event simulation. ACM Trans Model Comput Simul 18(3):1269–1283
Lui JS (2001) Monte Carlo strategies in scientific computing. Springer, New York
Madras N, Sokal AD (1988) The pivot algorithm: a highly efficient Monte Carlo method for the self-avoiding walk. J Stat Phys 50(1/2):109–186
Melas VB (1997) On the efficiency of the splitting and roulette approach for sensitivity analysis. In: Winter simulation conference, Atlanta, GA, pp 269–274
Metropolis N, Rosenbluth MN, Rosenbluth AH, Teller H, Teller E (1953) Equation of state calculations by fast computing machines. J Chem Phys 21(6):1087–1092
Mitzenmacher M, Upfal E (2005) Probability and computing: randomized algorithms and probabilistic analysis. Cambridge University Press, New York
Metzner P, Schütte Ch, Vanden-Eijnden E (2006) Illustration of transition path theory on a collection of simple examples. J Chem Phys 125:084110
Motwani R, Raghavan R (1997) Randomized algorithms. Cambridge University Press, New York
Rasmussen LE (1994) Approximating the permanent: a simple approach. Random Struct Algorithms 5:349–361
Roberts B, Kroese DP (2007) Estimating the number of s-t paths in a graph. J Graph Algorithms Appl 11(1):195–214
Rosenbluth MN, Rosenbluth AW (1955) Monte Carlo calculation of the average extension of molecular chains. J Chem Phys 23(2):356–359
Rubinstein RY (2009) The Gibbs Cloner for combinatorial optimization, counting and sampling. Methodol Comput Appl Probab 11(2):491–549
Rubinstein RY, Kroese DP (2007) Simulation and the Monte Carlo method, 2nd edn. Wiley, New York
Valiant LG (1979) The complexity of computing the permanent. Theor Comp Sci (Elsevier) 8:189–201
Wei W, Selman B (2005) A new approach to model counting. In: Proceedings of SAT-05: 8th international conference on theory and applications of satisfiability testing. Lecture notes in computer science, vol 3569. St. Andrews, UK, pp 324–339
Author information
Authors and Affiliations
Corresponding author
Additional information
This research was supported by the BSF (Binational Science Foundation, grant no 2008482).
Rights and permissions
About this article
Cite this article
Rubinstein, R. Stochastic Enumeration Method for Counting NP-Hard Problems. Methodol Comput Appl Probab 15, 249–291 (2013). https://doi.org/10.1007/s11009-011-9242-y
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11009-011-9242-y