Reconnect 04 Solving Integer Programs with Branch and Bound (and Branch and Cut)



Similar documents
How To Get A Loan From A Bank For Free

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.

Reliability Constrained Packet-sizing for Linear Multi-hop Wireless Networks

Chapter 13: Binary and Mixed-Integer Programming

Noncommercial Software for Mixed-Integer Linear Programming

RECURSIVE DYNAMIC PROGRAMMING: HEURISTIC RULES, BOUNDING AND STATE SPACE REDUCTION. Henrik Kure

Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits

SOME APPLICATIONS OF FORECASTING Prof. Thomas B. Fomby Department of Economics Southern Methodist University May 2008

International Journal of Management & Information Systems First Quarter 2012 Volume 16, Number 1

Cooperative Caching for Adaptive Bit Rate Streaming in Content Delivery Networks

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.

Some representability and duality results for convex mixed-integer programs.

This paper studies a rental firm that offers reusable products to price- and quality-of-service sensitive

Cloud Branching. Timo Berthold. joint work with Domenico Salvagnin (Università degli Studi di Padova)

3. Linear Programming and Polyhedral Combinatorics

Chapter Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling

Algebra (Expansion and Factorisation)

Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams

. P. 4.3 Basic feasible solutions and vertices of polyhedra. x 1. x 2

Airline Yield Management with Overbooking, Cancellations, and No-Shows JANAKIRAM SUBRAMANIAN

Lecture 3. Linear Programming. 3B1B Optimization Michaelmas 2015 A. Zisserman. Extreme solutions. Simplex method. Interior point method

Linear Programming I

CLOSED-LOOP SUPPLY CHAIN NETWORK OPTIMIZATION FOR HONG KONG CARTRIDGE RECYCLING INDUSTRY

Duality in General Programs. Ryan Tibshirani Convex Optimization /36-725

Extended-Horizon Analysis of Pressure Sensitivities for Leak Detection in Water Distribution Networks: Application to the Barcelona Network

Efficient Key Management for Secure Group Communications with Bursty Behavior

Lecture L26-3D Rigid Body Dynamics: The Inertia Tensor

Dantzig-Wolfe bound and Dantzig-Wolfe cookbook

Applied Algorithm Design Lecture 5

Preference-based Search and Multi-criteria Optimization

Approximation Algorithms

ON SELF-ROUTING IN CLOS CONNECTION NETWORKS. BARRY G. DOUGLASS Electrical Engineering Department Texas A&M University College Station, TX

A Study on the Chain Restaurants Dynamic Negotiation Games of the Optimization of Joint Procurement of Food Materials

Markovian inventory policy with application to the paper industry

Optimal Resource-Constraint Project Scheduling with Overlapping Modes

Algebra Unpacked Content For the new Common Core standards that will be effective in all North Carolina schools in the school year.

Markov Models and Their Use for Calculations of Important Traffic Parameters of Contact Center

Impact of Processing Costs on Service Chain Placement in Network Functions Virtualization

Evaluating Inventory Management Performance: a Preliminary Desk-Simulation Study Based on IOC Model

OPRE 6201 : 2. Simplex Method

3.1 Solving Systems Using Tables and Graphs

INTEGER PROGRAMMING. Integer Programming. Prototype example. BIP model. BIP models

Information Processing Letters

Econ 100A: Intermediate Microeconomics Notes on Consumer Theory

3. Evaluate the objective function at each vertex. Put the vertices into a table: Vertex P=3x+2y (0, 0) 0 min (0, 5) 10 (15, 0) 45 (12, 2) 40 Max

Machine Learning Applications in Grid Computing

Modeling and Solving the Capacitated Vehicle Routing Problem on Trees

Evaluating the Effectiveness of Task Overlapping as a Risk Response Strategy in Engineering Projects

1 Introduction. Linear Programming. Questions. A general optimization problem is of the form: choose x to. max f(x) subject to x S. where.

Method of supply chain optimization in E-commerce

4.6 Linear Programming duality

Linear Programming for Optimization. Mark A. Schulze, Ph.D. Perceptive Scientific Instruments, Inc.

CMPSCI611: Approximating MAX-CUT Lecture 20

2. FINDING A SOLUTION

CHAPTER 9. Integer Programming

Lecture L9 - Linear Impulse and Momentum. Collisions

What are the place values to the left of the decimal point and their associated powers of ten?

Doppler effect, moving sources/receivers

An Innovate Dynamic Load Balancing Algorithm Based on Task

arxiv: v1 [math.pr] 9 May 2008

Factor Model. Arbitrage Pricing Theory. Systematic Versus Non-Systematic Risk. Intuitive Argument

24. The Branch and Bound Method

5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

An Optimal Task Allocation Model for System Cost Analysis in Heterogeneous Distributed Computing Systems: A Heuristic Approach

Multi-Class Deep Boosting

SAMPLING METHODS LEARNING OBJECTIVES

The Virtual Spring Mass System

Data Set Generation for Rectangular Placement Problems

March 29, S4.4 Theorems about Zeros of Polynomial Functions

Algorithm Design and Analysis

Trading Regret for Efficiency: Online Convex Optimization with Long Term Constraints

A New Method for Estimating Maximum Power Transfer and Voltage Stability Margins to Mitigate the Risk of Voltage Collapse

In this paper we present a branch-and-cut algorithm for

5.1 Bipartite Matching

Media Adaptation Framework in Biofeedback System for Stroke Patient Rehabilitation

Online Bagging and Boosting

3. INNER PRODUCT SPACES

11. APPROXIMATION ALGORITHMS

Searching strategy for multi-target discovery in wireless networks

Module1. x y 800.

CRM FACTORS ASSESSMENT USING ANALYTIC HIERARCHY PROCESS

ASIC Design Project Management Supported by Multi Agent Simulation

Fuzzy Sets in HR Management

A Fast Algorithm for Online Placement and Reorganization of Replicated Data

Proximal mapping via network optimization

Adaptive Modulation and Coding for Unmanned Aerial Vehicle (UAV) Radio Channel

Image restoration for a rectangular poor-pixels detector

An Approach to Combating Free-riding in Peer-to-Peer Networks

Partitioning Data on Features or Samples in Communication-Efficient Distributed Optimization?

Linear Programming. Widget Factory Example. Linear Programming: Standard Form. Widget Factory Example: Continued.

Exercise 4 INVESTIGATION OF THE ONE-DEGREE-OF-FREEDOM SYSTEM

Resource Allocation in Wireless Networks with Multiple Relays

Calculating the Return on Investment (ROI) for DMSMS Management. The Problem with Cost Avoidance

Chapter 3 INTEGER PROGRAMMING 3.1 INTRODUCTION. Robert Bosch. Michael Trick

Mathematics Review for MS Finance Students

Zeros of a Polynomial Function

Transcription:

Sandia is a ultiprogra laboratory operated by Sandia Corporation, a Lockheed Martin Copany, Reconnect 04 Solving Integer Progras with Branch and Bound (and Branch and Cut) Cynthia Phillips (Sandia National Laboratories) One ore general branch and bound point Node selection: when working in serial, how do you pick an active node to process next? Usual: best first Select the node with the lowest lower bound With the current incubent and solution tolerances, you will have to evaluate it anyway If you don t have a good incubent finder, you ight start with diving: Select the ost refined node Once you have an incubent, switch to best first for the United States Departent of Energy under contract DE-AC04-94AL85000. Slide 2 Mixed-Integer prograing (IP) Min c T x Subject to: Ax = b l x u x = (x I,x C ) x I Z n (integer values) x C Q n (rational values) Branch and Bound Bounding function: solve LP relaxation Branching Select an integer variable x i that s fractional in the LP solution x* * Up child: set x i x i * Down child: set x i x i x* is no longer feasible in either child Incubent ethod any incubent-finding ethods to follow in later lectures Obvious: return the LP solution if it is integer Satisfies feasibility-tester constraint Slide 3 Slide 4

Solving Integer Progras: Branch and Bound Branching Decisions: One ethod x i Root Proble = original x i Which candidate variable (of thousands or ore choices) to choose? Use structural insight (user priorities) when possible. Use gradients (pseudocosts): x j x j x k x k bound 12 x j.3 x j 15 13.4 x j fathoed infeasible Down: 15 12 13.4 12 0 Up = 0.3 1 0.3 = 2 Lower bound: LP relaxation Slide 5 Slide 6 Using gradients Use gradients to copute an expected bound oveent for each child Up = up gradient * upward round distance Down = down gradient * downward round distance Try to find a variable for which both children ight ove the bound Initialization When a variable is fractional for the first tie, intialize by pretending to branch (better than using an average) Branch Variable Selection ethod 2: Strong Branching Try out interesting subprobles for a while Could be like a gradient initialization at every node Could copute part of the subtree This can be expensive, but soeties these decisions ake a huge difference (especially very early) Slide 7 Slide 8

Branching on constraints Can have one child with new constraint: a T x b 1 and the other with new constraint: a T x b 2 Must cover the subregion Pieces can be oitted, but only if provably have nothing potentially optial Node bounds are just a special case More generally, partition into any children Special Ordered Sets (SOS) Models selection: y i i y i { 0,1} Exaple: tie-indexed scheduling x jt if job j is scheduled at tie t Ordered by tie a T x b 1, b 2 a T x b 3, K, b k 1 x b k Slide 9 Slide 10 Special Ordered Sets: Restricted Set of Values (Review) Variable x can take on only values in Frequently the v i are sorted { v 1,v 2,Kv } Capacity of an airplane assigned to a flight x = v i y i i y i i y { 0,1} Probles with Siple Branching on SOS Generally want both children to differ fro parent substantially For SOS The up child (setting a variable to 1) is very powerful All others in the set go to zero The down child will likely have an LP solution = parent s Schedule at any of these 1000 ties except this one The y i s are a special ordered set. Slide 11 Slide 12

Special Ordered Sets: Weak Down-Child Exaple Variable x can take on only values in Plane capacities, values {50,100,200} x = v i y i i y i i y { 0,1} { v 1,v 2,Kv } If v2=0 (can t use capacity 100), fake a 100-passenger plane by using 2 3 x + 1 1 3 x 3 Branching on SOS Set variables Partition about an index i: Up child has Down child has x j Exaples: { x 1,x 2,K x } x j j= i+1 i j x j j Schedule job j before/after tie t Use a plane of capacity at least/at ost s Slide 13 Slide 14 Branching on SOS Good choice for partition point i is such that as nearly as possible i Postponing Branching Branching causes exponential growth of the search tree Is there a way to ake progress without branching? x j = x j j j= i+1 2 Can copute gradients as with siple variable branching This is not general branching on a constraint: just setting ultiple variable upper bounds siultaneously Slide 15 Slide 16

Strengthen Linear Progra with Cutting Planes Exaple: Maxiu Independent Set Integer optial Slide 17 Original LP Feasible region Cutting plane (valid inequality) Make LP polytope closer to integer polytope LP optial solution Use failies of constraints too large to explicitly list Exponential, pseudopolynoial, polynoial (n 4, n 5 ) Slide 18 2 5 3 6 1 if vertex i is in the MIS v i = 0 otherwise ax 1 4 v i s.t. v i + v j 1 ( i, j) E 7 Exaple: Soe Maxiu Independent Set Cutting Planes Value of a Good Feasible Solution Found Early 1 4 Root Proble = original 2 3 7 x i x i 5 6 x j x j x k x k v i + v j + v k 1 triangles i, j, k More general clique inequalities (keep going till they re too hard to find) fathoed infeasible Siulate seeding with optial (coputation is a proof of optiality) Note: proof of optiality depends on a good LP relaxation Slide 19 Slide 20

Solving Subproble LPs Quickly Linear Prograing Geoetry The LP relaxation of a child is usually closely related to its parent s LP Exploit that siilarity by saving the parent s basis Optial point of an LP is at a corner (assuing bounded) c T x = opt feasible c T x = - Slide 21 Slide 22 Linear Prograing Algebra Linear Prograing Algebra What does a corner look like algebraically? Ax=b Partition A atrix into three parts B L U where B is nonsingular (invertible, square). Reorder x: (x B, x L, x U ) We have Bx B + Lx L + Ux U = b We have Bx B + Lx L + Ux U = b Set all ebers of x L to their lower bound. Set all ebers of x U to their upper bound. Let b = b Lx L Ux U (this is a constant because bounds land u are) Thus we have Bx B = b Set x B = B 1 b This setting of (x B, x L, x U ) is called a basic solution A basic solution satisfies Ax=b by construction If all x B satisfy their bounds ( l B x B u B ), this is a basic feasible solution (BFS) Slide 23 Slide 24

Basic Feasible Solutions Algebra and Geoetry We have Bx B + Lx L + Ux U = b Set all ebers of x L to their lower bound. Set all ebers of x U to their upper bound. Let b = b Lx L Ux U (this is a constant because bounds land u are) Set x B = B 1 b In the coon case l, u = (x 0), we have b = b, x U =, x L = N x B are basic variables, N are nonbasic (x L are nonbasic at lower, x U are nonbasic at upper) A BFS corresponds to a corner of the feasible polytope: Ax b inequality constraints (plus bounds) and n variables. Polytope in n- diensional space. A corner has n tight constraints. With slacks Ax + Ix S = b equality constraints (plus bounds) in n+ variables. A BFS has n tight bound constraints (fro the nonbasic variables). Slide 25 Slide 26 Dual LP Prial/Dual Pair (Siplified) prial LP proble is iniize c T x such that Ax b x 0 Prial feasible The dual proble is: axiize y T b such that ya c y 0 dual(dual(prial)) = prial Frequently has a nice interpretation (ax flow/in cut) Opt Dual feasible Slide 27 Slide 28

Parent/Child relationship (intuition) Parent optial pair (x*,y*) Branching reduces the feasible region of the child LP with respect to its parent and increases the dual feasible region y* is feasible in the child s dual LP and it s close to optial Resolving the children using dual siplex, starting fro the parent s optial basis can be at least an order of agnitude faster than starting fro nothing. Note: Basis can be big. Sae space issues as with knapsack exaple. Slide 29