Presentation is loading. Please wait.

Presentation is loading. Please wait.

Branch-and-Cut Valid inequality: an inequality satisfied by all feasible solutions Cut: a valid inequality that is not part of the current formulation.

Similar presentations


Presentation on theme: "Branch-and-Cut Valid inequality: an inequality satisfied by all feasible solutions Cut: a valid inequality that is not part of the current formulation."— Presentation transcript:

1

2 Branch-and-Cut Valid inequality: an inequality satisfied by all feasible solutions Cut: a valid inequality that is not part of the current formulation Violated cut: a cut that is not satisfied by the solution to the current LP relaxation

3 Branch-and-Cut Branch-and-cut is a generalization of branch-and-bound where, after solving the LP relaxation, and having not been successful in pruning the node on the basis of the LP solution, we try to find a violated cut. If one or more violated cuts are found, they are added to the formulation and the LP is solved again. If none are found, we branch.

4 Branch-and-Cut Given a solution to the LP relaxation of a MIP that does not satisfy all the integrality constraints, the separation problem is to find a violated cut.

5 Cut Classification General purpose Relaxation Problem specific

6 Cut Classification General purpose: a fractional extreme point can always be separated –Gomory cuts –0-1 disjunctive cuts

7 Cut Classification Relaxation cuts: –0-1 knapsack set –Continuous 0-1 knapsack set –Node packing

8 Cut Classification Problem specific: generally facets, derived from problem structure –blossom inequalities for matching –comb inequalities for TSP

9 Lift-and-Project cuts A Mixed 0-1 Program its LP Relaxation with optimal solution

10 Lift-and-Project cuts Generate cutting planes for any mixed 0-1 program: –Disjunction –Description of –Choose a set of inequalities valid for P i that cut off

11 The LP relaxation

12 The optimal “fractional” solution

13 One side of the disjunction

14 The other side of the disjunction

15 The union of the disjunctive sets

16 The convex-hull of the union of the disjunctive sets

17 One facet of the convex-hull but it is also a cut!

18 x The new “feasible” solution!

19 How do we get disjunctive cuts in practice? A cut  x >  is valid for P i if and only if ( ,  satisfies Hence, we have a linear description of the inequalities valid for P i.

20 Approach Generate a cutting plane by: i) Requiring that inequality be valid, i.e. ( ,  P i ; ii) Requiring that it cuts-off the current fractional point

21 Relaxation Cuts A valid inequality for a relaxation of a problem is also a valid inequality for the problem itself Idea: Derive valid inequalities for common relaxations

22 Cover Inequalities 0-1 integer set Cover C Minimal cover C Cover inequality

23 Separation Given a point find a cover C such that

24 Separation Let z j = 1 if element j is in the cover z j = 0 if element j is not in the cover If v < 1, then we identified a violated cover

25 Lifting Find valid inequality Case 1: x k = 0 Valid for all  k Case 2: x k = 1

26 Lifting Define

27 Lifting Let k  N\C. Find  k such that is valid for

28 Lifting verified if where

29 Lifting Proposition: Let k  N\C, then is valid for

30 Sequential Lifting We can repeat the same procedure to lift the other variables in N\C Different lifting sequence can lead to a different lifted cover inequality!

31 Continuous 0-1 Knapsack Mixed integer set We can apply similar ideas and results concerning lifting to generate valid inequalities for MIPs

32 Node Packing Relaxation Problem Implications

33 Node Packing Relaxation Conflict graph Clique inequality

34 Cut generation Clique inequalities Odd-cycle inequalities

35 Cut Management Cut generation takes time (even if we are not successful) Cuts increase the size of the formulation (and thus increases the time it takes to solve the LP relaxation) Only useful if it leads to reduced overall solution times !

36 Cut Management When and how many violated cuts to add the current formulation ? When and which cuts to delete from the current formulation ?

37 Cut Management Do not generate cuts at every node of the search tree Limit the rounds of cut generation per node Limit the number of cuts generated per round of cut generation Delete inactive cuts

38 Cut Management Do not generate cuts at every node of the search tree 1. Only at the root node (cut-and-branch) 2. Only at the top k levels of the search tree 3. Only at the first k evaluated nodes (best- first search) 4. Every k th evaluated node (skip factor)

39 Cut Management Delete inactive cuts If the dual variable associated with a cut has been 0 for k consecutive iterations, then delete the cut and move it to the cut pool

40 Cut Management Cut generator Active formulation Cut pool

41

42

43

44

45

46 Branch-and-Price Branch-and-price is a generalization of LP based branch-and-bound specifically designed to handle integer programs that contain a huge number of variables

47 Branch-and-Price Columns are left out of the LP relaxation because there are too many to handle efficiently and most of them will have their associated variable equal to zero in an optimal solution anyway To check the optimality of an LP solution, a pricing problem is solved to try to identify columns with profitable reduced cost

48 Branch-and-Price If profitable reduced cost columns are found, they are added and the LP relaxation is resolved If no profitable columns are found, the LP solution is optimal Branching occurs when the optimal LP solution does not satisfy the integrality conditions

49 Branch-and-Price Branch-and-price applies column generation at every node of the branch-and-bound tree

50 Why use formulations with a huge number of variables ? Compact formulation may have a weak LP relaxation Compact formulation may have a symmetric structure Provides a decomposition in master and pricing problem Only choice

51 Complications Conventional branching on variables may not be effective because fixing variables destroys the structure of the pricing problem Column generation often converges slowly and solving LPs to optimality may be computationally prohibitive

52 Generalized Assignment Problem In the GAP the objective is to find a maximum profit assignment of m tasks to n machines such that each task is assigned to precisely one machine subject to capacity restrictions on the machines

53 GAP

54 Natural Formulation

55 Column Generation Formulation

56 Each satisfies

57 Advantage The LP relaxation of the master problem is tighter then the LP relaxation of the natural formulation because certain fractional solutions are eliminated. Specifically, all fractional solution solutions that are not convex combinations of 0-1 solutions to the knapsack constraints

58 Solving LP Relaxation Restricted master problem Pricing problem

59 Pricing Problem

60

61 Branching Standard branching on the variables creates problem on the branch where it is set to zero

62 Branching Solution: Branch on original variables: Branch x ij = 0: –No columns for machine j with a 1 in row i Branch x ij = 1: –All columns for machine j have a 1 in row i –All columns for machine k  j have a 0 in row i


Download ppt "Branch-and-Cut Valid inequality: an inequality satisfied by all feasible solutions Cut: a valid inequality that is not part of the current formulation."

Similar presentations


Ads by Google