Binary decision diagrams for computing the non-dominated set

Similar documents
An Algorithm for the Construction of Decision Diagram by Eliminating, Merging and Rearranging the Input Cube Set

Propagating Separable Equalities. in an MDD Store. Peter Tiedemann INFORMS John Hooker. Tarik Hadzic. Cork Constraint Computation Centre

3 INTEGER LINEAR PROGRAMMING

Chapter 10 Part 1: Reduction

Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem

Minimum Cost Edge Disjoint Paths

Recoverable Robust Optimization for (some) combinatorial problems

Heuristics in MILP. Group 1 D. Assouline, N. Molyneaux, B. Morén. Supervisors: Michel Bierlaire, Andrea Lodi. Zinal 2017 Winter School

Discrete Optimization with Decision Diagrams

Flexible job shop scheduling using zero suppressed binary decision diagrams

The Size Robust Multiple Knapsack Problem

Foundations of Computing

Cutting Planes for Some Nonconvex Combinatorial Optimization Problems

Exact Solution of the Robust Knapsack Problem

M2 ORO: Advanced Integer Programming. Part IV. Solving MILP (1) easy IP. Outline. Sophie Demassey. October 10, 2011

Algorithms for Decision Support. Integer linear programming models

Introduction to Algorithms. Lecture 24. Prof. Patrick Jaillet

Implementing a B&C algorithm for Mixed-Integer Bilevel Linear Programming

Exact Algorithms for Mixed-Integer Bilevel Linear Programming

Exact Solution of the Robust Knapsack Problem

Introduction to Stochastic Combinatorial Optimization

Two models of the capacitated vehicle routing problem

Generating All Solutions of Minesweeper Problem Using Degree Constrained Subgraph Model

P4 Pub/Sub. Practical Publish-Subscribe in the Forwarding Plane

Theorem 2.9: nearest addition algorithm

Decision Diagrams for Solving Traveling Salesman Problems with Pickup and Delivery in Real Time

15.083J Integer Programming and Combinatorial Optimization Fall Enumerative Methods

A Bi-directional Resource-bounded Dynamic Programming Approach for the Traveling Salesman Problem with Time Windows

3 No-Wait Job Shops with Variable Processing Times

Propagating separable equalities in an MDD store

A New Bound for the Midpoint Solution in Minmax Regret Optimization with an Application to the Robust Shortest Path Problem

Cofactoring-Based Upper Bound Computation for Covering Problems

Using Symbolic Techniques to find the Maximum Clique in Very Large Sparse Graphs

A novel method for identification of critical points in flow sheet synthesis under uncertainty

A GENETIC ALGORITHM APPROACH TO OPTIMAL TOPOLOGICAL DESIGN OF ALL TERMINAL NETWORKS

Constraint Programming. Global Constraints. Amira Zaki Prof. Dr. Thom Frühwirth. University of Ulm WS 2012/2013

Graphs and Network Flows IE411. Lecture 13. Dr. Ted Ralphs

15.082J and 6.855J. Lagrangian Relaxation 2 Algorithms Application to LPs

2. Modeling AEA 2018/2019. Based on Algorithm Engineering: Bridging the Gap Between Algorithm Theory and Practice - ch. 2

Validating Plans with Durative Actions via Integrating Boolean and Numerical Constraints

Stable sets, corner polyhedra and the Chvátal closure

CLASS: II YEAR / IV SEMESTER CSE CS 6402-DESIGN AND ANALYSIS OF ALGORITHM UNIT I INTRODUCTION

lpsymphony - Integer Linear Programming in R

General Methods and Search Algorithms

Integer Programming. Xi Chen. Department of Management Science and Engineering International Business School Beijing Foreign Studies University

CSC Discrete Math I, Spring Sets

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

Algorithm Analysis. Gunnar Gotshalks. AlgAnalysis 1

Discrete Optimization with Decision Diagrams

Financial Optimization ISE 347/447. Lecture 13. Dr. Ted Ralphs

Postoptimality Analysis for Integer Programming Using Binary Decision Diagrams

UNIT 4 Branch and Bound

Learning a classification of Mixed-Integer Quadratic Programming problems

2.1 Sets 2.2 Set Operations

This is the search strategy that we are still using:

UNIT 3. Greedy Method. Design and Analysis of Algorithms GENERAL METHOD

Constraint Handling. Fernando Lobo. University of Algarve

Binary recursion. Unate functions. If a cover C(f) is unate in xj, x, then f is unate in xj. x

Chapter 9. Greedy Technique. Copyright 2007 Pearson Addison-Wesley. All rights reserved.

A Binary Integer Linear Programming-Based Approach for Solving the Allocation Problem in Multiprocessor Partitioned Scheduling

Tutorial on Integer Programming for Visual Computing

Manipulating MDD Relaxations for Combinatorial Optimization

MSEC PLANT LAYOUT OPTIMIZATION CONSIDERING THE EFFECT OF MAINTENANCE

Introduction to Algorithms: Brute-Force Algorithms

Giovanni De Micheli. Integrated Systems Centre EPF Lausanne

Cloud Branching MIP workshop, Ohio State University, 23/Jul/2014

Stochastic Network Interdiction / June 2001

Monotone Paths in Geometric Triangulations

A robust optimization based approach to the general solution of mp-milp problems

Heap-on-Top Priority Queues. March Abstract. We introduce the heap-on-top (hot) priority queue data structure that combines the

A simulated annealing algorithm for the vehicle routing problem with time windows and synchronization constraints

Optimization Methods in Management Science

6. Algorithm Design Techniques

Linear programming and duality theory

A Computational Study of Bi-directional Dynamic Programming for the Traveling Salesman Problem with Time Windows

Experiments On General Disjunctions

V Advanced Data Structures

The Geometry of Carpentry and Joinery

General properties of staircase and convex dual feasible functions

2 is not feasible if rounded. x =0,x 2

Exploiting Degeneracy in MIP

THEORY OF LINEAR AND INTEGER PROGRAMMING

BiMuSA: An implementation for biobjective multiple sequence alignment problems

What graphs can be efficiently represented by BDDs?

Constructive and destructive algorithms

Copyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch.

Improving Dual Bound for Stochastic MILP Models Using Sensitivity Analysis

Chain Reduction for Binary and Zero-Suppressed Decision Diagrams arxiv: v1 [cs.ds] 17 Oct 2017

Distinctive Frequent Itemset Mining from Time Segmented Databases Using ZDD-Based Symbolic Processing. Shin-ichi Minato and Takeaki Uno

LP-Modelling. dr.ir. C.A.J. Hurkens Technische Universiteit Eindhoven. January 30, 2008

Outline. Combinatorial Optimization 2. Finite Systems of Linear Inequalities. Finite Systems of Linear Inequalities. Theorem (Weyl s theorem :)

A Local Dominance Procedure for Mixed-Integer Linear Programming

Treatment Planning Optimization for VMAT, Tomotherapy and Cyberknife

Integer and Combinatorial Optimization

CS 440 Theory of Algorithms /

Recursive column generation for the Tactical Berth Allocation Problem

LOGIC SYNTHESIS AND VERIFICATION ALGORITHMS. Gary D. Hachtel University of Colorado. Fabio Somenzi University of Colorado.

Cyber Security Analysis of State Estimators in Electric Power Systems

Examples of P vs NP: More Problems

Transcription:

Binary decision diagrams for computing the non-dominated set July 13, 2015 Antti Toppila and Ahti Salo 27th European Conference on Operational Research, 12-15 July 2015, University of Strathclyde, Glasgow, Scotland

Portfolio selection with interval-values 1/2 Projects = 1,.., Cost of project Value of project Value uncertain: Plausible lower and upper bound Feasible values = Project value 1 2 3 Project cost

Portfolio selection with interval-values 2/2 Portfolio 0,1 =1if project in portfolio =0otherwise Cost of portfolio = Feasible portfolios = 0,1 Portfolio value = Portfolio value 1 2 1&2 3 2&3 1&2&3 1&3 Portfolio cost B

Non-dominated set Portfolio dominates portfolio ( ) iff ) for all ) for some Non-dominated (ND) portfolios = { such that } Portfolio value Infeasible = dominance = ND set Portfolio cost B

Computing the non-dominated set 1/2 Let 0,1 Contains all ND portfolios Check all pairs Discarding procedure: Do for all : If or ( and ) All infeasible or dominated portfolios removed from

Computing the non-dominated set 2/2 Checking 4 pairs of portfolios impossible for large Algorithm by Liesiö et al. 2007, 2008 Prescreens a substantially smaller to begin with Reduces the number of pairs to check using transitivity Works well when not too large If prescreen prematurely terminated, may not include any/all ND portfolios Memory for storing the matrix may exceed available capacity Discarding procedure may fail if too many pairs to check

Our contribution Binary decision diagrams (Bryant 1986) for storing Possible to store otherwise too large to be stored in computer memory as a binary matrix Discarding procedure where premature termination yields a superset of Computation can be continued later on New method for reducing the number of pairs to check Extended from mixed integer linear programming (MILP) (Fischetti et al. 2010)

Storing sets using Binary Decision Diagrams (BDDs) BDD = compressed binary decision tree (BDT) Identical nodes merged Redundant nodes eliminated Truthtable 0 0 0 0 1 1 1 0 1 1 1 1 = BDT Redundant 0 1 1 1 = BDD 0 1 0,1 Identical =1 =0

Efficient set operations using BDDs Set operations using BDDs Worst case computational time BDD 1 has nodes BDD 2 has nodes Intersection ) Member of ) Cardinality, complement ) Allows to construct BDDs of sets without a truthtable Theory & implementation: Bryant 1986, Brace 1990 1 0 = 0 1 0 1

Example: Compression of a ND set Let = 60, =0, =1, = 843 Projects costs in table (see fig.) Every maximal portfolio is ND Cost = 3361225155533820 3 10 = 84293056587037 8 10 0-1 matrix Ádding 10 rows/s takes ~1 day Storage ~5000 Tb (in theory) BDD Generated in ~8 min (regular laptop) Storage 21796 nodes ~100 Mb (actual) 100 80 60 40 20 10 20 30 40 50 60 Project 98 96 95 92 89 88 81 79 78 78 78 77 77 76 74 74 69 68 62 59 58 57 56 55 54 54 48 48 47 46 45 44 44 42 37 36 35 34 34 33 32 31 30 29 26 25 24 23 22 20 18 16 14 11 11 5 3 2 1 1

Discarding sets of projects using BDDs: Project dominance Project dominates project iff and more valuable and at most as costly as Feasible portfolio that excludes and includes is dominated Exchange for to get the dominating portfolio Thus all ND portfolios must be in = 0,1 = 1 or =0 1 0 BDD of Discard process:

Value Example 1/2 1 10-30 3 7 Project 30 projects of equal cost Total of 190 project dominances Project 1 dominates project 3, 7, and 10-30, etc. Each project dominance yields a set within which ND portfolios are Each set stored as BDD The intersection of these sets computed using BDD set operations

Example 2/2 For clarity, node 0 and arcs to it removed from BDD BDD of the intersection of the 190 sets 97 nodes Corresponds to 61456 portfolios 0.005 % of all 2 10 portfolios

Discussion: Discarding process using BDDs We implemented the discarding process using Branchand-Bound (B&B) Sytematically cuts sets of dominated portfolios Many of these methods BDD variants of those presented by Liesiö et al. 2007 Developed a method for reducing the number of pairs to check Extension of the Fischetti-Toth dominance procedure (1988) Preliminary results suggest that large ND sets can computed using this implementation

Conclusions Storage as BDD opens new possiblities Deriving stronger bounds using information from the BDD Optimizing over BDD set = solving shortest path problem Use of implied dominance checks makes it possible to pairwise compare possibly huge ND sets Possible future research directions Zero-suppressed BDDs for improved storage (Minato 2007) Additive linear value functions (Liesiö et al. 2007) Uncertainty set defined by linear inequalities (Liesiö et al. 2007) Cost efficiency (Liesiö et al. 2008)

References Brace KS, Rudell RL, Bryant RE, Efficient implementation of a BDD package. Design Automation Conference, Proceedings 27th ACM/IEEE, 40-45, Jun 24-28, 1990 Bryant RE. Graph-based algorithms for Boolean function manipulation. IEEE Transactions on Computers 100(8):677-691, 1986 Fischetti M, Salvagnin D. Pruning moves. INFORMS Journal on Computing 22(1):108-119, 2010 Fischetti M, Toth P. A new dominance procedure for combinatorial optimization problems. Operations Research Letters 7(4):181-187,1988 Liesiö J, Mild P, Salo A. Preference programming for robust portfolio modeling and project selection. European Journal of Operational Research 181(3):1488-1505, 2007 Liesiö J, Mild P, Salo A. Robust portfolio modeling with incomplete cost information and project interdependencies. European Journal of Operational Research 190(3):679-695, 2008 Minato S. Zero-suppressed BDDs for set manipulation in combinatorial problems. Proceedings of 30th Conference on Design Automation, 272-277, 14-18 June 1993 Pisinger D. Where are the hard knapsack problems? Computers & Operations Research 32(9) 2271-2284, 2005