Linear Programming Integer Linear Models. When Variables Have To Be Integers Example – one time...
-
date post
21-Dec-2015 -
Category
Documents
-
view
223 -
download
1
Transcript of Linear Programming Integer Linear Models. When Variables Have To Be Integers Example – one time...
Linear ProgrammingLinear Programming
Integer Linear Models
When Variables Have To Be When Variables Have To Be IntegersIntegers
• Example – one time production decisions– Fractional values make no sense– But if ongoing process, fractional values
could represent work in progress
• Example -- building houses or planes, or scheduling crews
• Binary variables • Restricted to be 0 or 1• Example – Is a plant built?
Types of Integer Programs (ILP)Types of Integer Programs (ILP)
• All Integer Linear Programs (AILP)– All the decision variables are required to be
integers
• Mixed Integer Linear Programs (MILP)– Only some of the variables are required to be
integers
• Binary Integer Linear Programs (BILP)– Variables are restricted to be 0 or 1
ExampleExample• Boxcar Burger will build restaurants in the suburbs and
downtown• Suburbs
– Profit $12000/day– $2,000,000 investment– Requires 3 managers
• Downtown– Profit $20000/day– $6,000,000 investment– Requires 1 manager
• Constraints– $27,000,000 budget– At least 2 downtown restaurants– 19 managers available
Decision Variables/ObjectiveDecision Variables/Objective
• X1 = Number of restaurants built in suburbs
• X2 = Number of restaurants built downtown
MAX Expected Daily Profit
MAX Expected Daily Profit MAX 12X1 + 20X2 (in $1000’s)
ConstraintsConstraints• Cannot invest more than $27,000,000
• At least 2 downtown restaurants
• Number of managers used cannot exceed 19
Total Amount Invested CannotExceed 27
2X1 + 6X2 ≤ 27
# downtown restaurants Must beAt least 2
X2 ≥ 2
# Managers used CannotExceed 19
3X1 + 1X2 ≤ 19
In $1,000,000’s
The Complete ModelThe Complete Model
MAX 12X1 + 20X2 (in $1000’s)
s.t. 2X1 + 6X2 27 (Budget)
X2 2 (Downtown)
3X1 + X2 19 (Managers)
Both X’s 0
Both X’s INTEGER!
The Linear Programming Feasible RegionThe Linear Programming Feasible RegionX2
6
5
4
3
2
1
01 2 X13 4 5 6
X1, X2 ≥ 0
2X1 + 6X2 ≤ 27
2X1 + 6X
2 ≤ 27
X2 ≥ 2
X2 ≥ 2
3X1 + 1X2 ≤ 19
3X1 + 1X
2 ≤ 19
LPFeasibleRegion
Max 12X1 + 20X2
12X1 + 20X
2
Rounded down
FEASIBLEObjective Value = 100
(5,2)
LP Optimum(5 7/16, 2 11/16)Obj. Value = 119
Roundedup
(6,3)
Rounded off(5,3)
The Integer Programming Feasible RegionThe Integer Programming Feasible RegionX2
6
5
4
3
2
1
01 2 X13 4 5 6
X1, X2 ≥ 0
3X1 + 1X2 ≤ 19
2X1 + 6X2 ≤ 27
2X1 + 6X
2 ≤ 27
X2 ≥ 2
X2 ≥ 2
3X1 + 1X
2 ≤ 19
X1, X2 integer
Max 12X1 + 20X2
12X1 + 20X
2
ILP Optimum(4,3)
OBJ. VALUE = 108
Why Not Round To Get the Why Not Round To Get the Optimal Integer Solution?Optimal Integer Solution?
• Rounding may yield the optimal integer solution– None did in this example
• But it may yield an infeasible solution– Both (5,3) and (6,3) are infeasible solutions
• Or a feasible solution that is not optimal– (5,2) is feasible but not optimal
– Many times a feasible rounded point gives a “good” solution (giving close to the optimal value of the objective function) -- BUT NOT ALWAYS
General Facts About Integer ModelsGeneral Facts About Integer Models
• The solution time to solve integer models is longer than that of linear programs– Because many linear programs are solved en route
to obtaining an optimal integer solution
• For maximization models, the optimal value of the objective function will be less (or at least not greater than) the value for the equivalent linear model – Because constraints have been added – the integer
constraints
• There is no sensitivity analysis – Because the feasible region is not continuous
Solving ILP’s Using SOLVERSolving ILP’s Using SOLVER
• The only change in SOLVER is to add the integer constraints– In the Add Constraints dialogue box,
highlight the cells required to be integer and choose “int” from the pull down menu for the sign
Optimal
Build 4 Suburban Restaurants Build 3 Downtown RestaurantsAverage Daily Profit $108,000
ReviewReview
• When to use integer models
• Why rounding will not always work
• Solution time
• No sensitivity analysis
• Objective function value cannot improve
• SOLVER solution approach