Advances in Parallel Branch and Bound

Similar documents
Anytime AND/OR Depth-first Search for Combinatorial Optimization

From Exact to Anytime Solutions for Marginal MAP

Towards Parallel Search for Optimization in Graphical Models

Efficient AND/OR Search Algorithms for Exact MAP Inference Task over Graphical Models

Anytime AND/OR Best-First Search for Optimization in Graphical Models

Evaluating Weighted DFS Branch and Bound over Graphical Models

Selecting DaoOpt solver configuration for MPE problems

Look-ahead with Mini-Bucket Heuristics for MPE

From Exact to Anytime Solutions for Marginal MAP

Pushing Forward Marginal MAP with Best-First Search

UNIVERSITY OF CALIFORNIA, IRVINE. Advancing Heuristics for Search over Graphical Models DISSERTATION

Search Algorithms for Solving Queries on Graphical Models & the Importance of Pseudo-trees in their Complexity.

FINDING MOST LIKELY HAPLOTYPES IN GENERAL PEDIGREES THROUGH PARALLEL SEARCH WITH DYNAMIC LOAD BALANCING

Weighted heuristic anytime search: new schemes for optimization over graphical models

Performance Prediction and Automated Tuning of Randomized and Parametric Algorithms

Semi-Independent Partitioning: A Method for Bounding the Solution to COP s

On the Space-Time Trade-off in Solving Constraint Satisfaction Problems*

AND/OR Cutset Conditioning

Best-First AND/OR Search for Most Probable Explanations

Evaluating the Impact of AND/OR Search on 0-1 Integer Linear Programming

Towards Parallel Non Serial Dynamic Programming for Solving Hard Weighted CSP

Stochastic Anytime Search for Bounding Marginal MAP

Winning the PASCAL 2011 MAP Challenge with Enhanced AND/OR Branch-and-Bound

Best-First AND/OR Search for Graphical Models

Patterns for! Parallel Programming II!

On the Space-Time Trade-off in Solving Constraint Satisfaction Problems*

Background: disk access vs. main memory access (1/2)

Evaluating the impact of AND/OR search on 0-1 integer linear programming

Anytime Best+Depth-First Search for Bounding Marginal MAP

Machine Learning: An Applied Econometric Approach Online Appendix

Caching Schemes for DCOP Search Algorithms

Problem 1: Complexity of Update Rules for Logistic Regression

Anytime AND/OR Depth-first Search for Combinatorial Optimization

Parallel Programming. Parallel algorithms Combinatorial Search

Example: Bioinformatics. Soft Constraint Processing. From Optimal CSP to Soft CSP. Overview. From Optimal CSP to Soft CSP.

Learning techniques for Automatic Algorithm Portfolio Selection

Monte Carlo Methods; Combinatorial Search

Search and Optimization

On the Time Complexity of Bucket. Javier Larrosa. January 23, Abstract. In this short note, we prove the time complexity of full-bucket and

Midterm Examination CS540-2: Introduction to Artificial Intelligence

Patterns for! Parallel Programming!

Blocking Optimization Strategies for Sparse Tensor Computation

Data Mining Practical Machine Learning Tools and Techniques

Task Description: Finding Similar Documents. Document Retrieval. Case Study 2: Document Retrieval

Geometric data structures:

Abstraction Sampling in Graphical Models

Nearest Neighbor with KD Trees

Boosting as a Metaphor for Algorithm Design

AND/OR Search Spaces for Graphical Models

FMA901F: Machine Learning Lecture 3: Linear Models for Regression. Cristian Sminchisescu

Parallel Branch & Bound

M-ary Search Tree. B-Trees. B-Trees. Solution: B-Trees. B-Tree: Example. B-Tree Properties. Maximum branching factor of M Complete tree has height =

Multi-Way Number Partitioning

Applying Search Based Probabilistic Inference Algorithms to Probabilistic Conformant Planning: Preliminary Results

Framework for Design of Dynamic Programming Algorithms

MB-DPOP: A New Memory-Bounded Algorithm for Distributed Optimization

Solutions. Suppose we insert all elements of U into the table, and let n(b) be the number of elements of U that hash to bucket b. Then.

Combinatorial Search; Monte Carlo Methods

CSE 326: Data Structures B-Trees and B+ Trees

Sequential Model-based Optimization for General Algorithm Configuration

Chapter 11 Search Algorithms for Discrete Optimization Problems

Parallel Computing in Combinatorial Optimization

M-ary Search Tree. B-Trees. Solution: B-Trees. B-Tree: Example. B-Tree Properties. B-Trees (4.7 in Weiss)

Improving the Efficiency of Depth-First Search by Cycle Elimination

Clustering Billions of Images with Large Scale Nearest Neighbor Search

arallel Sear-c aximizing the Benefits of iane J. Cook and Et. Craig Varnell Parallel Search Approaches Introduction

Knowledge Discovery and Data Mining

Locality- Sensitive Hashing Random Projections for NN Search

Lecture 20: Bagging, Random Forests, Boosting

Module 3: Hashing Lecture 9: Static and Dynamic Hashing. The Lecture Contains: Static hashing. Hashing. Dynamic hashing. Extendible hashing.

Query Solvers on Database Covers

would be included in is small: to be exact. Thus with probability1, the same partition n+1 n+1 would be produced regardless of whether p is in the inp

Search Algorithms for Discrete Optimization Problems

Empirical Hardness Models for

Material You Need to Know

A Structure-Based Variable Ordering Heuristic for SAT. By Jinbo Huang and Adnan Darwiche Presented by Jack Pinette

Artificial Intelligence. Programming Styles

CSCI-401 Examlet #5. Name: Class: Date: True/False Indicate whether the sentence or statement is true or false.

Conflict Graphs for Combinatorial Optimization Problems

Computing Pure Nash Equilibria in Symmetric Action Graph Games

Cross-validation. Cross-validation is a resampling method.

Parallel Query Optimisation

SEMANTIC LOCALITY & CONTEXT BASED PREFETCHING. Leeor Peled 1, Shie Mannor 1, Uri Weiser 1, Yoav Etsion 1,2

AND/OR Search for Marginal MAP

Unsupervised: no target value to predict

Dimensionality Reduction, including by Feature Selection.

CS Fall 2010 B-trees Carola Wenk

Cost Optimal Parallel Algorithm for 0-1 Knapsack Problem

Learning Objectives. c D. Poole and A. Mackworth 2010 Artificial Intelligence, Lecture 3.5, Page 1

Leveling Up as a Data Scientist. ds/2014/10/level-up-ds.jpg

Nearest Neighbor with KD Trees

Decision Trees Dr. G. Bharadwaja Kumar VIT Chennai

Nonparametric Methods Recap

kd-trees Idea: Each level of the tree compares against 1 dimension. Let s us have only two children at each node (instead of 2 d )

Minimal Dominating Sets in Graphs: Enumeration, Combinatorial Bounds and Graph Classes

Systematic vs. Non-systematic Algorithms for Solving the MPE Task

Linking Layout to Logic Synthesis: A Unification-Based Approach

Multi-way Search Trees. (Multi-way Search Trees) Data Structures and Programming Spring / 25

Balanced Box-Decomposition trees for Approximate nearest-neighbor. Manos Thanos (MPLA) Ioannis Emiris (Dept Informatics) Computational Geometry

CSE373: Data Structures & Algorithms Lecture 28: Final review and class wrap-up. Nicki Dell Spring 2014

Transcription:

ECAI 2012 Advances in Parallel Branch and Bound Lars Otten and Rina Dechter Dept. of Computer Science University of California, Irvine

Summary Parallelizing AND/OR Branch and Bound: - Advanced optimization scheme: problem decomposition, subproblem caching, mini-bucket heuristic. Load Balancing is hard due to pruning. - Learn regression model for runtime prediction: 34 subproblem features, static and dynamic. Different levels of learning, up to 11K samples. Results: good estimation performance leads to improved load balancing. - High correlation coefficient of predictions. - Close to linear speedup for hard problems.

AND/OR Branch and Bound Search for combinatorial optimization over graphical models. Guided by pseudo tree: - Subproblem decomposition. - Merge unifiable subproblems. Mini-bucket heuristic: [ ] [A] - Solve relaxed problem exactly. [AB] [AB] - i-bound control parameter. Asymptotic search complexity: [BC] [BE] - Exp. in treewidth, O(n k w ). [Marinescu & Dechter 2009] [Kask & Dechter 2001]

AND/OR Branch and Bound Example AND/OR search space: Decomposition v=0.8 v=0.7 v=0.56 v=0.9 prune h=0.5 Caching

Parallelizing AOBB Partially explore central search space. - Remaining subtrees yield parallel subproblems. - Implies parallelization frontier. [Grama & Kumar 1999] 8 independent subproblems with varying pruning

Parallel Performance Bottleneck Crucial: balance parallel workload. - Avoid few subproblems dominating everything. - Approach: Iteratively split hardest subproblem. Central question: Which is hardest? - Need to predict subproblem complexity in advance.

Subproblem Complexity Regression Model number of nodes N(n) as exponential function of subproblem features φ j (n) : N( n) = b Then consider log number of nodes: Thus, finding parameter values λ j can be seen as a linear regression problem. - Given sample subproblems n k, minimize MSE: 1 j j λ ϕ ( n) log N ( n) = λ jϕ j ( n) j j ( ) λ ϕ ( n ) log N( n ) m = k 1 j j j k k m related: [Leyton-Brown, Nudelman, Shoham 2009]

Subproblem Features φ j (n) Use both static and dynamic characteristics: - Structural, - Subproblem bounds, - Limited AOBB probe.

Feature Informativeness Lasso regularization selects nine features: - λ i : Weight in learned model. - coo : normalized cost of commission relative error of model trained without φ i Feature φ i λ i coo Average branching degree in probe 0.57 100 Average leaf node depth in probe 0.39 87 Subproblem upper bound minus lower bound 0.22 17 Ratio of nodes pruned by heuristic in probe 0.20 27 Max. context size minus mini bucket i-bound 0.19 16 Ratio of leaf nodes in probe 0.18 10 Subproblem upper bound 0.11 7 Std. dev. of subproblem pseudo tree leaf depth 0.06 2 Depth of subproblem root node in overall space 0.05 2

Feature Illustration Example parallelization frontier (right): 0 - Possible feature values below. C E 0 B A 1 B Feature φ i φ i (B) φ i (C) φ i (E) Average branching degree in probe 1.2 1.3 1.2 Average leaf node depth in probe 2.2 1.7 1.8 Subproblem upper bound minus lower bound 15.6 11.2 12.7 Ratio of nodes pruned by heuristic in probe 0.7 0.6 0.5 Max. context size minus mini bucket i-bound 1 1 1 Ratio of leaf nodes in probe 0.2 0.3 0.1 Subproblem upper bound 26.2 28.3 22.5 Std. dev. of subproblem pseudo tree leaf depth 0 0 0 Depth of subproblem root node in overall space 1 2 2

Training the Models Experiments on 31 problems from 4 classes: - n : number of variables, k : max. domain size, w : induced width, h : pseudo tree height. About 11,500 subproblem training samples: - Run each instance with fixed-depth cutoff, use max. 500 subproblems. domain # n k w h pedigree 13 137-1212 3-7 17-39 47-102 pdb 5 103-172 8 10-15 24-43 largefam 8 2569-3730 3-4 28-37 73-108 grid 5 624-675 2 37-39 111-124

Evaluating Prediction Performance Incrementally more general levels of learning: - Sample subproblems from one instance only: Need to learn new model for each instance. - Sample subproblem from problems from one class: One model sufficient for one entire problem class. - Sample subproblems across all classes: One model applies to all problems. - (Future work: Prediction for unseen classes?) Record prediction error (MSE), training error (TER), and correlation coefficient (PCC).

Metrics / Terminology MSE: Prediction Error - Model error on the training sample set. - Relates to generalization error. TER: Training Error / Sample Error - Model error on the test sample set. PCC: Pearson Correlation Coefficient - Covariance between actual and predicted complexities, normalized by product of respective standard deviation.

Learning per Instance (5-fold CV)

Learning per Problem Class

Learning across Problem Classes

Prediction Performance Summary No indication of overfitting: - Prediction error is fairly close to training error. Different levels of learning: - Per instance: Limited practical relevance, requires extensive sampling. - Per problem class / across classes: Allows reuse of learned models, useful in practice. Promising generalization performance: - Little increase in error across learning levels. - Very good correlation coefficients.

Improved Load Balancing Compare against naive, fixed-depth cutoff (left):

Parallel Runtime Summary Example: pedigree benchmarks - Sequential AOBB vs. parallel scheme w/ regression. - Harder instances profit the most.

Parallel Speedups Speedup vs. sequential algorithm (1 CPU)

Summary Parallelizing AND/OR Branch and Bound: - Advanced optimization scheme: problem decomposition, subproblem caching, mini-bucket heuristic. Load Balancing is hard due to pruning. - Learn regression model for runtime prediction: 34 subproblem features, static and dynamic. Different levels of learning, up to 11K samples. Results: good estimation performance leads to improved load balancing. - High correlation coefficient of predictions. - Close to linear speedup for hard problems.