Please use this identifier to cite or link to this item: http://hdl.handle.net/1893/30000
Appears in Collections:Computing Science and Mathematics Journal Articles
Peer Review Status: Refereed
Title: Replicable parallel branch and bound search
Author(s): Archibald, Blair
Maier, Patrick
McCreesh, Ciaran
Stewart, Robert
Trinder, Phil
Contact Email: patrick.maier@stir.ac.uk
Keywords: algorithmic skeletons
branch-and-bound
parallel algorithms
combinatorial optimisation
distributed computing
repeatability
Issue Date: Mar-2018
Date Deposited: 19-Aug-2019
Citation: Archibald B, Maier P, McCreesh C, Stewart R & Trinder P (2018) Replicable parallel branch and bound search. Journal of Parallel and Distributed Computing, 113, pp. 92-114. https://doi.org/10.1016/j.jpdc.2017.10.010
Abstract: Combinatorial branch and bound searches are a common technique for solving global optimisation and decision problems. Their performance often depends on good search order heuristics, refined over decades of algorithms research. Parallel search necessarily deviates from the sequential search order, sometimes dramatically and unpredictably, e.g. by distributing work at random. This can disrupt effective search order heuristics and lead to unexpected and highly variable parallel performance. The variability makes it hard to reason about the parallel performance of combinatorial searches. This paper presents a generic parallel branch and bound skeleton, implemented in Haskell, with replicable parallel performance. The skeleton aims to preserve the search order heuristic by distributing work in an ordered fashion, closely following the sequential search order. We demonstrate the generality of the approach by applying the skeleton to 40 instances of three combinatorial problems: Maximum Clique, 0/1 Knapsack and Travelling Salesperson. The overheads of our Haskell skeleton are reasonable: giving slowdown factors of between 1.9 and 6.2 compared with a class-leading, dedicated, and highly optimised C++ Maximum Clique solver. We demonstrate scaling up to 200 cores of a Beowulf cluster, achieving speedups of 100x for several Maximum Clique instances. We demonstrate low variance of parallel performance across all instances of the three combinatorial problems and at all scales up to 200 cores, with median Relative Standard Deviation (RSD) below 2%. Parallel solvers that do not follow the sequential search order exhibit far higher variance, with median RSD exceeding 85% for Knapsack.
DOI Link: 10.1016/j.jpdc.2017.10.010
Rights: This article is available under the terms of the Creative Commons Attribution License (CC BY - http://creativecommons.org/licenses/by/4.0/). You may copy and distribute the article, create extracts, abstracts and new works from the article, alter and revise the article, text or data mine the article and otherwise reuse the article commercially (including reuse and/or resale of the article) without permission from Elsevier. You must give appropriate credit to the original work, together with a link to the formal publication through the relevant DOI and a link to the Creative Commons user license above. You must indicate if any changes are made but not in any way that suggests the licensor endorses you or your use of the work.
Licence URL(s): http://creativecommons.org/licenses/by/4.0/

Files in This Item:
File Description SizeFormat 
Archibald et al-JPDC-2018.pdfFulltext - Published Version1.16 MBAdobe PDFView/Open



This item is protected by original copyright



A file in this item is licensed under a Creative Commons License Creative Commons

Items in the Repository are protected by copyright, with all rights reserved, unless otherwise indicated.

The metadata of the records in the Repository are available under the CC0 public domain dedication: No Rights Reserved https://creativecommons.org/publicdomain/zero/1.0/

If you believe that any material held in STORRE infringes copyright, please contact library@stir.ac.uk providing details and we will remove the Work from public display in STORRE and investigate your claim.