Download presentation
Presentation is loading. Please wait.
Published byRobyn Knight Modified over 9 years ago
1
Integer Programming Key characteristic of an Integer Program (IP) or Mixed Integer Linear Program (MILP): One or more of the decision variable must be integer. In some cases a problem that requires an Integer solution can be solved as a Linear program. When? When rounding off a real number to an integer number has no “effect” on your solution.
2
Integer Programming LP OPTIMUM FOUND AT STEP 2
! Homework 7-2) ! ! x1 - model 1 ovens ! x2 - model 2 ovens max 12 x x2 st x <= 300 x2 <= 100 2.3 x x2 <= 500 end free x1 LP OPTIMUM FOUND AT STEP OBJECTIVE FUNCTION VALUE 1) VARIABLE VALUE REDUCED COST X X You cannot manufacture model 1 ovens. Simply rounding off to 147 model 1 ovens is an acceptable solution.
3
Integer Programming - Example
Classic Knapsack Problem: You want to maximize the value of items you can pack into a single suitcase (or knapsack). However, you are limited to a weight of 50 lbs. xi = 0 if not chosen = 1 if put in knapsack Item Value ($) Weight (lbs) A 15 18 B 20 10 C 21 D 13 11 E 12
4
Integer Programming - Example
Classic Knapsack Problem: If integer constraint relaxed - LP OPTIMUM FOUND AT STEP OBJECTIVE FUNCTION VALUE 1) VARIABLE VALUE REDUCED COST XA XB XC XD XE
5
Integer Programming - Example
Classic Knapsack Problem: With integer constraint - OBJECTIVE FUNCTION VALUE 1) VARIABLE VALUE REDUCED COST XA XB XC XD XE
6
Integer Programming - Example
Classic Knapsack Problem: How would you modify this formulation if you realized that you could not select item A without selecting item D? Add constraint: xA <= xD How would you modify if you could select at most 3 items? Add constraint: xA + xB + xC + xD + xE <= 3
7
Integer Programming - Example
Other examples of formulating problems: see handouts
8
Solving IPs and MIPs Approaches: Solve to Optimality
Branch and Bound – lesson 6 Implicit Enumeration – lesson 6 Cutting Plane Method – lesson 7 Good and sometimes Optimal Solutions Heuristics (problem specific) – lesson 7 Meta-Heuristics – lesson 8 & 9
9
Solving IPs – Branch and Bound
See Branch and Bound On-Line Example
10
Solving IPs – Implicit Enumeration
Similar to Binary IP Branch and Bound General Idea: Fixed variables – those for which a value has been fixed. Free Variable – variables which whose values are unspecified. Completion – when all variables have been assigned a value. Upper Bound (minimization problem) – Best feasible solution found thus far. Lower Bound (minimization problem) – Optimal solution for a relaxed problem at a given node (e.g. some variables fixed, some free).
11
Solving IPs – Implicit Enumeration
Example Sequencing Problem: Sequence a series of jobs to minimize the maximum lateness (Lmax) for a set of jobs to be processed on a single machine. Each job belongs to a given part family. Jobs are denoted with an (i,j) subscript indicating the jth job from family i. Lmax = Max{Lij} Lij = Cij – dij Cij is the completion time of job ij. Family (i) Job (j) Processing Time (pij) Due Date (dij) 1 3 5 2 7 4 6 9 10
12
Solving IPs – Implicit Enumeration
Example Sequencing Problem cont: Also, when starting the processing of a new family, a family setup time is incurred. All jobs are ready to be scheduled at time 0. Family (i) Setup TIme 1 2 3 Optimality Condition: All jobs within a family must be sequenced in earliest due date order (EDD).
13
Solving IPs – Implicit Enumeration
Step 1 – Find an initial Upper bound What is a good upper bound? Step 2 – Perform implicit enumeration. Start building partial sequences and fathom nodes if lower bound for partial sequence exceeds upper bound. Update upper bound whenever a better value is found for a completion. What is a good lower bounding scheme?
14
Solving IPs – Implicit Enumeration
Insert Hand Slides For Example Problem
15
Solving IPs – Using Lindo
Statements – INT and GIN INT – forces binary solution (1 or 0) for decision variable. GIN – forces non-negative integer (0,1,2,3,4…) for decision variable. Knapsack problem: max 15xa + 20xb + 18xc + 13xd + 12xe st 18xa + 10xb + 21xc + 11xd + 11xe <= 50 end int xa int xb int xc int xd int xe
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.