Anytime AND/OR Depth-first Search for Combinatorial Optimization

Similar documents
Advances in Parallel Branch and Bound

From Exact to Anytime Solutions for Marginal MAP

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

Anytime AND/OR Depth-first Search for Combinatorial Optimization

From Exact to Anytime Solutions for Marginal MAP

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

Pushing Forward Marginal MAP with Best-First Search

Towards Parallel Search for Optimization in Graphical Models

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

Evaluating Weighted DFS Branch and Bound over Graphical Models

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

Look-ahead with Mini-Bucket Heuristics for MPE

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.

Selecting DaoOpt solver configuration for MPE problems

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

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

AND/OR Cutset Conditioning

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

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

Multi-Way Number Partitioning

Anytime Best+Depth-First Search for Bounding Marginal MAP

AND/OR Search Spaces for Graphical Models

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

Mini-Buckets: A General Scheme for Generating Approximations in Automated Reasoning

A Hybrid Recursive Multi-Way Number Partitioning Algorithm

Abstraction Sampling in Graphical Models

Stochastic Anytime Search for Bounding Marginal MAP

Best-First AND/OR Search for Most Probable Explanations

A General Scheme for Automatic Generation of Search Heuristics from Specification Dependencies. Kalev Kask and Rina Dechter

Optimization I : Brute force and Greedy strategy

Framework for Design of Dynamic Programming Algorithms

MVE165/MMG630, Applied Optimization Lecture 8 Integer linear programming algorithms. Ann-Brith Strömberg

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

A CSP Search Algorithm with Reduced Branching Factor

Some Applications of Graph Bandwidth to Constraint Satisfaction Problems

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

Analysis of Algorithms - Greedy algorithms -

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

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

Column Generation Based Primal Heuristics

Constraint Satisfaction Problems

Integer Programming ISE 418. Lecture 7. Dr. Ted Ralphs

7 Distributed Data Management II Caching

We approve the thesis of Gnanasekaran Sundarraj.

A Complete Anytime Algorithm for Treewidth

An Appropriate Search Algorithm for Finding Grid Resources

A Parameterized Local Consistency for Redundant Modeling in Weighted CSPs

Parallel Programming. Parallel algorithms Combinatorial Search

Advancing AND/OR Search for Optimization Using Diverse Principles

Conflict Graphs for Combinatorial Optimization Problems

The Size Robust Multiple Knapsack Problem

Improving the Efficiency of Depth-First Search by Cycle Elimination

February 19, Integer programming. Outline. Problem formulation. Branch-andbound

Finding Optimal Solutions to the Graph Partitioning Problem with Heuristic Search

Data Mining Chapter 8: Search and Optimization Methods Fall 2011 Ming Li Department of Computer Science and Technology Nanjing University

Search and Optimization

Informed Search A* Algorithm

Theorem 2.9: nearest addition algorithm

Constraint Optimization Techniques for MultiObjective Branch and Bound Search

FINAL EXAM SOLUTIONS

Cpt S 223 Course Overview. Cpt S 223, Fall 2007 Copyright: Washington State University

AND/OR Search for Marginal MAP

The Encoding Complexity of Network Coding

A and Branch-and-Bound Search

9 Distributed Data Management II Caching

Artificial Intelligence (part 4a) Problem Solving Using Search: Structures and Strategies for State Space Search

Using relaxations in Maximum Density Still Life

Fast Support Vector Machine Classification of Very Large Datasets

Best-First AND/OR Search for Graphical Models

Constraint Satisfaction Problems

Applied Algorithm Design Lecture 3

Algorithms for Integer Programming

Kalev Kask and Rina Dechter

A Primer on Scheduling Fork-Join Parallelism with Work Stealing

More NP Complete Games Richard Carini and Connor Lemp March 3, 2015

Search: Advanced Topics and Conclusion

Optimization Techniques for Design Space Exploration

Today s s lecture. Lecture 3: Search - 2. Problem Solving by Search. Agent vs. Conventional AI View. Victor R. Lesser. CMPSCI 683 Fall 2004

Patterns for! Parallel Programming II!

STRUCTURES AND STRATEGIES FOR STATE SPACE SEARCH

Dynamic heuristics for branch and bound search on tree-decomposition of Weighted CSPs

Parallel Branch & Bound

Using Analytic QP and Sparseness to Speed Training of Support Vector Machines

Solving NP-hard Problems on Special Instances

Algorithm classification

Heuristics in Commercial MIP Solvers Part I (Heuristics in IBM CPLEX)

Maximum Clique Problem. Team Bushido bit.ly/parallel-computing-fall-2014

Data Structures and Algorithms

Bicriteria approach to the optimal location of surveillance cameras *

Towards Parallel Non Serial Dynamic Programming for Solving Hard Weighted CSP

An Efficient Algorithm for Identifying the Most Contributory Substring. Ben Stephenson Department of Computer Science University of Western Ontario

Primal Heuristics in SCIP

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

Semiring-Based Mini-Bucket Partitioning Schemes

(2,4) Trees. 2/22/2006 (2,4) Trees 1

Cost Optimal Parallel Algorithm for 0-1 Knapsack Problem

Search: Advanced Topics and Conclusion

CAD Algorithms. Categorizing Algorithms

LECTURE NOTES OF ALGORITHMS: DESIGN TECHNIQUES AND ANALYSIS

Transcription:

Anytime AND/OR Depth-first Search for Combinatorial Optimization Lars Otten and Rina Dechter Dept. of Computer Science University of California, Irvine

Outline AND/OR Search Spaces. Conflict: Decomposition vs. Anytime. Empirical evidence & analysis. Breadth-Rotating AOBB. AND/OR Branch and Bound (AOBB). Example & analysis. Experimental Results. Substantial improvements.

AND/OR Branch and Bound [] Guided by pseudo tree: Subproblem decomposition. Decomposition [A] [AB] [AB] [BC] [BE]

AND/OR Branch and Bound [] Guided by pseudo tree: Subproblem decomposition. Merge unifiable subproblems. [A] [AB] [AB] [BC] [BE] Decomposition Cache table for F (independent of A) B 0 0 1 1 E cost 0 10 1 6 0... 1...

AND/OR Branch and Bound Guided by pseudo tree: [] [A] Subproblem decomposition. Merge unifiable subproblems. [AB] [AB] [BC] [BE] Mini-bucket heuristic. v=10+2=12 2 Decomposition v=10 Prune based on current best solution and heuristic estimate. h=14 Cache table for F (independent of A) B 0 0 1 1 E cost 0 10 1 6 0... 1...

AND/OR Branch and Bound Guided by pseudo tree: [] [A] Subproblem decomposition. Merge unifiable subproblems. [AB] [AB] [BC] [BE] Mini-bucket heuristic. v=10+2=12 2 Decomposition v=10 Time and Space: O( n k w ) Prune based on current best solution and heuristic estimate. h=14 Cache table for F (independent of A) B 0 0 1 1 E cost 0 10 1 6 0... 1...

Anytime Behavior of AOBB Finding/proving optimal solution hard! Often easier: Find any feasible solution quickly. Improve with time, until optimum is found. Branch and Bound is anytime. Depth-first to any solution and improve. Usage as approximation scheme: AOBB competitive in UAI'10 evaluation. But some cases: no solution within time bound.

Anytime vs. Decomposition Depth-first traversal of AND/OR space: Subproblems successively solved to optimality. Breaks anytime behavior. First overall solution: Is delayed until last subproblem starts processing. Contains optimal solutions to all but last subproblem. solved optimally processing

Remedy I: Subproblem Order One complex and several easy subproblems: Solve easy ones optimally (fast). Combine with anytime solutions from complex subproblem. Suggests ordering subproblems by increasing hardness: Heuristic: subproblem induced width w. easy to hard AOBB has time O( n k w ). However, fails for multiple complex subproblems. w=4 w=5 w=20

Remedy I: Subproblem Order 1 large and several smaller components. Increasing order yields good performance.

Remedy I: Subproblem Order 2 large and several smaller components. Even increasing order fails. 1st complex subproblem already solved optimally

Remedy II: Subproblem Dive Upon decomposition: Greedily find solution for each subproblem. Then solve each subproblem optimally, depth-first as before. Relies very much on heuristic: Use mini-bucket heuristic for guidance. Might fail due to dead end. Mixed performance in experiments.

Breadth-Rotating AOBB Construct all branches of solution tree simultaneously : Take turns in processing subproblems. Limit number of operations per visit. Solve each depth-first as before. rotate

Breadth-Rotating AOBB High-level pseudo code: 1. Move breadth-first to next open subproblem P. 2. Process P depth-first, until either: P is solved optimally, P decomposes into child subproblems, a predefined threshold of operations is reached. Rotation skips subproblems with current child subproblems. rotate

Breadth-Rotating AOBB Example problem with threshold z = 2. rotate

Breadth-Rotating AOBB Example problem with threshold z = 2.

Breadth-Rotating AOBB Example problem with threshold z = 2.

BRAOBB Analysis Theorem: BRAOBB maintains favorable asymptotic complexity of depth-first search. Time: graph search O(n kw ), tree search O( n kh ). Space: graph search O(n kw ), tree search O( n ). Comparison with AOBB: Anytime performance does not depend on subproblem order. Overall performance (optimality proof) can increase or decrease. Pruning impacted by node exploration.

Experimental Evaluation Run and record anytime profiles (24h timeout): Plain AOBB (increasing subproblem order). AOBB with greedy dive. Breadth-rotating AOBB. OR graph search (no decomposition). Enforce decomposable problems: Create network copies and connect at root. 57 pedigree, 150 grid, 24 mastermind. Combined over 60.000 CPU hours. UAI'10: Two very hard instances.

Experimental Evaluation Sanity check : 1 large subproblem AND/OR schemes similarly good, OR search slow.

Experimental Evaluation Grid network with three large subproblems. rotate outperforms dive, plain very late.

Experimental Evaluation Pedigree with two large subproblems. Dive fails due to dead end, behaves like plain.

Experimental Evaluation Pedigree with two large subproblems. rotate outperforms dive, plain very late.

Experimental Evaluation Mastermind with three complex subproblems. rotate finds solution much sooner.

Experimental Evaluation Summary table, entries give #instances: Any solution / optimal solution / optimality proven

Experimental Evaluation Summary table, entries give #instances: Any solution / optimal solution / optimality proven First solutions quickly.

Experimental Evaluation Summary table, entries give #instances: Any solution / optimal solution / optimality proven Faster to optimality, a bit slower to prove.

Experimental Evaluation UAI'10: protein sidechain prediction. Very hard due to large domains.

Experimental Evaluation UAI'10: protein folding. Very complex, induced width >1000.

Experiments Summary Plain AOBB: Fails for more than one complex subproblem. AOBB with greedy dive: Quick initial solution possible, if heuristic allows. Slow to improve afterwards. Breadth-rotating AOBB: Consistently good anytime performance. Immediate initial solution on 293/345 instances. Subsequent rapid improvements. Useful as approximation scheme.

Conclusion Anytime behavior of depth-first BaB is compromised over AND/OR search spaces. Suitable subproblem ordering and other remedies only partially viable. Introduced Breadth-rotating AOBB: Rotate over subproblems, breadth-first. Each explored depth-first. Maintains asymptotic complexity. Greatly improved anytime performance.

Thank you! Questions?

Impact of rotation threshold z BRAOBB: little change with different z. Other rotation criteria trigger first.