Estimating parallel runtimes for randomized algorithms in constraint solving

This paper presents a detailed analysis of the scalability and parallelization of Local Search algorithms for constraint-based and SAT (Boolean satisfiability) solvers. We propose a framework to estimate the parallel performance of a given algorithm by analyzing the runtime behavior of its sequential version. Indeed, by approximating the runtime distribution of the sequential process with statistical methods, the runtime behavior of the parallel process can be predicted by a model based on order statistics. We apply this approach to study the parallel performance of a constraint-based Local Search solver (Adaptive Search), two SAT Local Search solvers (namely Sparrow and CCASAT), and a propagation-based constraint solver (Gecode, with a random labeling heuristic). We compare the performance predicted by our model to actual parallel implementations of those methods using up to 384 processes. We show that the model is accurate and predicts performance close to the empirical data. Moreover, as we study different types of problems, we observe that the experimented solvers exhibit different behaviors and that their runtime distributions can be approximated by two types of distributions: exponential (shifted and non-shifted) and lognormal. Our results show that the proposed framework estimates the runtime of the parallel algorithm with an average discrepancy of 21 % w.r.t. the empirical data across all the experiments with the maximum allowed number of processors for each technique.

[1]  Panos M. Pardalos,et al.  A Parallel GRASP for MAX-SAT Problems , 1996, PARA.

[2]  Kento Aida,et al.  A case study in running a parallel branch and bound application on the grid , 2005, The 2005 Symposium on Applications and the Internet.

[3]  Franck Cappello,et al.  Grid'5000: A Large Scale And Highly Reconfigurable Experimental Grid Testbed , 2006, Int. J. High Perform. Comput. Appl..

[4]  Philippe Codognet,et al.  Using sequential runtime distributions for the parallel speedup prediction of SAT local search , 2013, Theory and Practice of Logic Programming.

[5]  Jean-Charles Régin,et al.  Embarrassingly Parallel Search , 2013, CP.

[6]  Philippe Codognet,et al.  Performance analysis of parallel constraint-based local search , 2012, PPoPP '12.

[7]  Saralees Nadarajah,et al.  Explicit expressions for moments of order statistics , 2008 .

[8]  Stephen Wolfram,et al.  The Mathematica Book , 1996 .

[9]  David Zuckerman,et al.  Optimal Speedup of Las Vegas Algorithms , 1993, Inf. Process. Lett..

[10]  Evripidis Bampis,et al.  Handbook of Approximation Algorithms and Metaheuristics , 2007 .

[11]  Bernard Gendron,et al.  Parallel Branch-and-Branch Algorithms: Survey and Synthesis , 1994, Oper. Res..

[12]  L. Babai Monte-Carlo algorithms in graph isomorphism testing , 2006 .

[13]  Bart Selman,et al.  Heavy-Tailed Phenomena in Satisfiability and Constraint Satisfaction Problems , 2000, Journal of Automated Reasoning.

[15]  Philippe Codognet,et al.  Yet Another Local Search Method for Constraint Solving , 2001, SAGA.

[16]  Panos M. Pardalos,et al.  Restart strategies in optimization: parallel and serial cases , 2011, Parallel Comput..

[17]  Pascal Van Hentenryck,et al.  Constraint-based local search , 2018, Handbook of Heuristics.

[18]  Toshihide Ibaraki,et al.  Metaheuristics : progress as real problem solvers , 2005 .

[19]  Satoshi Matsuoka,et al.  Grid'BnB : A Parallel Branch and Bound Framework for Grids , 2007, HiPC.

[20]  F. James Statistical Methods in Experimental Physics , 1973 .

[21]  Lucas Bordeaux,et al.  Experiments with Massively Parallel Constraint Solving , 2009, IJCAI.

[22]  Philippe Codognet,et al.  An Efficient Library for Solving CSP with Local Search , 2003 .

[23]  Peter J. Stuckey,et al.  Confidence-Based Work Stealing in Parallel Constraint Programming , 2009, CP.

[24]  Philippe Codognet,et al.  Massively Parallel Local Search for SAT , 2012, 2012 IEEE 24th International Conference on Tools with Artificial Intelligence.

[25]  Philippe Codognet,et al.  Parallel Local Search for the Costas Array Problem , 2012, 2012 IEEE 26th International Parallel and Distributed Processing Symposium Workshops & PhD Forum.

[26]  Jacques Chassin de Kergommeaux,et al.  Parallel logic programming systems , 1994, CSUR.

[27]  Pascal Van Hentenryck,et al.  Parallel and distributed local search in COMET , 2009, Comput. Oper. Res..

[28]  Thomas Stützle,et al.  Towards a Characterisation of the Behaviour of Stochastic Local Search Algorithms for SAT , 1999, Artif. Intell..

[29]  Teodor Gabriel Crainic,et al.  Introduction to the Special Issue on Parallel Meta-Heuristics , 2002, J. Heuristics.

[30]  Philippe Codognet,et al.  From Sequential to Parallel Local Search for SAT , 2013, EvoCOP.

[31]  Celso C. Ribeiro,et al.  Exploiting run time distributions to compare sequential and parallel stochastic local search algorithms , 2012, J. Glob. Optim..

[32]  Thomas Stützle,et al.  Stochastic Local Search: Foundations & Applications , 2004 .

[33]  Andrew J. Davenport,et al.  Massively Parallel Constraint Programming for Supercomputers: Challenges and Initial Results , 2010, CPAIOR.

[34]  Wei Li,et al.  The SAT phase transition , 1999, ArXiv.

[35]  Laurent Perron Search Procedures and Parallelism in Constraint Programming , 1999, CP.

[36]  Teodor Gabriel Crainic,et al.  PARALLEL BRANCH-AND-BOUND ALGORITHMS: SURVEY AND SYNTHESIS , 1993 .

[37]  Lakhdar Sais,et al.  Boosting Systematic Search by Weighting Constraints , 2004, ECAI.

[38]  Pierre Hansen,et al.  Cooperative Parallel Variable Neighborhood Search for the p-Median , 2004, J. Heuristics.

[39]  El-Ghazali Talbi,et al.  Local Search Algorithms on Graphics Processing Units. A Case Study: The Permutation Perceptron Problem , 2010, EvoCOP.

[40]  Pascal Van Hentenryck Parallel Constraint Satisfaction in Logic Programming: Preliminary Results of CHIP within PEPSys , 1989, ICLP.

[41]  Celso C. Ribeiro,et al.  TTT plots: a perl program to create time-to-target plots , 2007, Optim. Lett..

[42]  Philippe Codognet,et al.  Parallel Local Search , 2018, Handbook of Parallel Constraint Reasoning.

[43]  Celso C. Ribeiro,et al.  Probability Distribution of Solution Time in GRASP: An Experimental Investigation , 2002, J. Heuristics.

[44]  Pascal Van Hentenryck,et al.  Distributed Constraint-Based Local Search , 2006, CP.

[45]  Teofilo F. Gonzalez,et al.  Handbook of Approximation Algorithms and Metaheuristics (Chapman & Hall/Crc Computer & Information Science Series) , 2007 .

[46]  J. Christopher Beck Principles and Practice of Constraint Programming , 2017, Lecture Notes in Computer Science.

[47]  Jakub Marecek,et al.  Handbook of Approximation Algorithms and Metaheuristics , 2010, Comput. J..

[48]  Robert M. Haralick,et al.  Increasing Tree Search Efficiency for Constraint Satisfaction Problems , 1979, Artif. Intell..

[49]  Carlos Ansótegui,et al.  A Gender-Based Genetic Algorithm for the Automatic Configuration of Algorithms , 2009, CP.

[50]  David Zuckerman,et al.  Optimal speedup of Las Vegas algorithms , 1993, [1993] The 2nd Israel Symposium on Theory and Computing Systems.

[51]  Panos M. Pardalos,et al.  Parallel Search for Combinatorial Optimization: Genetic Algorithms, Simulated Annealing, Tabu Search and GRASP , 1995, IRREGULAR.

[52]  Bart Selman,et al.  An Empirical Study of Optimal Noise and Runtime Distributions in Local Search , 2010, SAT.

[53]  Philippe Codognet,et al.  Prediction of Parallel Speed-Ups for Las Vegas Algorithms , 2012, 2013 42nd International Conference on Parallel Processing.

[54]  Pascal Van Hentenryck,et al.  Parallelizing Constraint Programs Transparently , 2007, CP.

[55]  Youssef Hamadi,et al.  Improving Parallel Local Search for SAT , 2011, LION.

[56]  Bart Selman,et al.  Algorithm portfolios , 2001, Artif. Intell..

[57]  Claude-Guy Quimper,et al.  Parallel Discrepancy-Based Search , 2013, CP.

[58]  Adrian Balint,et al.  Improving Stochastic Local Search for SAT with a New Probability Distribution , 2010, SAT.