WOOD 492 MODELLING FOR DECISION SUPPORT Lecture 19 Branch and Bound Algorithm.
-
Upload
cameron-marshall -
Category
Documents
-
view
218 -
download
0
Transcript of WOOD 492 MODELLING FOR DECISION SUPPORT Lecture 19 Branch and Bound Algorithm.
WOOD 492 MODELLING FOR DECISION SUPPORT
Lecture 19
Branch and Bound Algorithm
Wood 492 - Saba Vahid 2Oct 19, 2012
• Solve the LP relaxation and round the answers– Normally the rounded answers are not feasible, or
are far from optimal• Exhaustive search of all feasible points
– Computationally infeasible due to exponential growth of the number of answers
• Branch and Bound– Divide problem into smaller problems by
portioning the feasible solution region• Cutting Planes
IP Solution Approach
Wood 492 - Saba Vahid 3
Branch and Bound method (for BIP)
1. Initialize: set Z � value to -∞ (for a maximization problem) or ∞ (for a minimization problem). We call Z � the “incumbent” solution.
2. Branching: Partition the set of feasible solutions by fixing the value of one of the binary variables (Xi=0, and Xi=1) to create two sub-problems (these decision points are called “nodes”, and branches connect the nodes together)
3. Bounding: solve the LP relaxation of each sub-problem to find the bounds on the optimal Z value. (LP relaxation is when we allow the binary variables to have any value between 0 and 1). If the optimal solution of the relaxation is not integer, we round it down (for maximization problems) or up (for minimization problems). The rounded Z values are the “bounds” on the optimal solution of each sub-problem.
Oct 19, 2012
Wood 492 - Saba Vahid 4
Branch and Bound method (for BIP)
4. Fathoming: there are three ways in which we can fathom (dismiss) a sub-problem (described in the next slide). When a sub-problem is fathomed, we no longer divide it into further sub-problems.
5. Continue with branching of the remaining sub-problems until there are no more sub-problems, the “incumbent” solution is the optimal solution. If no incumbent solution exists, the problem is infeasible.
Oct 19, 2012
Wood 492 - Saba Vahid 5
Fathoming of a branch
1. If the optimal solution to the LP relaxation of a branch is an integer solution (all binary variables are found to be either 0 or 1), it is also the optimal solution of the sub-problem. We compare the Z value with Z � and if it is better, this Z will be stored as the new incumbent solution (Z � ). We then stop dividing this branch into smaller ones because any further solution will be worse than the current Z value.
2. If the bound on the optimal solution of a branch (sub-problem) is worse than the value of the current incumbent, we fathom that branch, because the optimal solution of that branch can not be better than the incumbent.
3. If the LP-relaxation of a sub-problem is infeasible, then the sub-problem itself will be infeasible, so we will fathom that branch.
Oct 19, 2012
Wood 492 - Saba Vahid 6
Solving Example 9 with branch and bound
Oct 19, 2012
• Factory and warehouse location problem in LA and SF
• Obj Z=9 X1 +5 X2 +6 X3 +4 X4 (Total NPV)
• Subject to:
6 X1+3 X2+ 5 X3+ 2 X4 <= 10 (Total Capital)
X3+ X4 <= 1 (One warehouse)
-X1 + X3 <= 0 (warehouse and factory
- X2 + X4 <= 0 in the same city)
Xi <= 1 (Upper bound)
Xi >= 0 (Lower Bound)
Wood 492 - Saba Vahid 7
Solving Example 9
Oct 19, 2012
All
Z= 16.5 → Z=16(5/6,1,0,1)
x1 =0
x1 =1
Z=9(0,1,0,1)
Z � =-∞
Z � = 9, branch fathomed
Z= 16.5 → Z=16(1,4/5,0,4/5)
x2 =0
x2 =1
Z= 13.8 → Z=13(1,0,4/5,0)
Z=16(1,1,0,1/2)
x3 =0
x3 =1
Z=16(1,1,0,1/2)
InfeasibleBranch fathomed
x4 =0
x4 =1
Z=14(1,1,0,0)
Z � = 14branch fathomed
InfeasibleBranch fathomed
Optimal solution
Wood 492 - Saba Vahid 8
Example 11: Branch and Bound method
• A company is assembling a team of 4 members to carry out 4 operations, and wants to maximize the overall success probability
• Decision: Which member should be assigned to each operation?• Constraints:
– Each member can carry out exactly one operation– All operations need to be carried out for the process to be complete– Each member has a different success rate for each operation (Table 1)– for example if operations 1-2-3-4 are assigned to ABCD, the total success
probability is: 0.9 * 0.6 * 0.85 * 0.7 = 0.3213
Oct 19, 2012
Table 1. Success rate of each member for each operation
Wood 492 - Saba Vahid 9
Example 11
• The nodes in our problem are different allocations of people to operations, for example ABCD is a node (allocating 1st task to A, 2nd task To B, and so on)
• The firs incumbent is -∞• The root node corresponds to the original problem when no sub-
problems are defined. • The branching process is shown in your handout and in the web
demo at:http://optlab-server.sce.carleton.ca/POAnimations2007/BranchAndBound.html
Oct 19, 2012