An integer linear optimization model integer program has some or all variables restricted to being whole numbers.. A mixed-integer linear optimization model has only a subset of va
Trang 1Chapter 15
Integer Optimization
Trang 2 An integer linear optimization model (integer
program) has some or all variables restricted to being
whole numbers.
A mixed-integer linear optimization model has only a
subset of variables restricted to being integer while
others are continuous.
A special type of integer problem is one in which
variables can be only 0 or 1; these are used to model logical yes-or-no decisions.
Integer Optimization
Trang 3 Decision variables that we force to be integers are called
general integer variables.
Algorithms for integer optimization models first solve the
LP relaxation (no integer restrictions imposed) and
gradually enforce integer restrictions using systematic searches.
Solver has a default integer tolerance of 0.05 so it will
stop if it finds an integer solution within 5% of the optimal solution.
◦ To find the guaranteed optimal integer solution, Integer Tolerance must
be set to 0 Click the Options button in the Solver Parameters dialog and ensure that the value of Integer Optimality (%) is 0.
Solving Models with General Integer
Variables
Trang 4 The optimal solution
Trang 5 To enforce integer restrictions on variables using Solver, click on
Integers under the Constraints list and then click the Add button In the Add Constraint dialog, enter the variable range in the Cell
Reference field and choose int from the drop-down box.
Example 15.1 Continued
The maximum value of the objective function for the model with integer restrictions is smaller than the linear optimization solution Whenever you add
a constraint to a model, the value of the objective function can never improve and usually worsens.
Trang 7 Because integer models are discontinuous by their very nature, sensitivity information cannot be generated in the same manner as for linear models; therefore, no
Sensitivity report is provided by Solver— only the
Answer report is available
To investigate changes in model parameters, it is
necessary to re-solve the model.
Sensitivity Analysis for Integer
Optimization
Trang 8 A company makes 110-inch wide rolls of thin sheet metal and slices them in smaller rolls of 12, 15, and 30 inches
A cutting pattern is a configuration of the number of smaller rolls of each type that are cut from the raw stock Six different cutting
patterns are used
Demands for the coming week are 500 12-inch rolls, 715 15-inch rolls, and 630 30-inch rolls
The problem is to develop a model that will determine how many 110-inch rolls to cut into each of the six patterns to meet demand and minimize scrap
Example 15.2: A Cutting-Stock Problem
Trang 9 Model development
◦ X i = number of 110-inch
rolls to cut using pattern i
X i needs to be a whole
number (general integer
variable) because each
roll that is cut generates a
different number of end
Trang 10Spreadsheet Implementation and Solver
Model for the Cutting-Stock Model
Trang 11 Workforce scheduling is a practical, yet highly complex, problem in many businesses such as food service,
hospitals, and airlines.
Typically a huge number of possible schedules exist and customer demand varies by day of week and time of day, further complicating the problem of assigning workers to time slots.
Workforce-Scheduling Models
Trang 12 Brewer Services schedules customer
service workers on Monday to Friday, 8
a.m to 5 p.m
Staffing requirements are shown in the
table
5 permanent employees work all day
Part-time employees work 4-hour shifts
What is the minimum number of part-time
employees needed to meet staffing
requirements?
Example 15.3: Brewer Services
Trang 13 Model development
◦ X i = integer number of part-time workers that start on the i th 4-hour shift
(i = 1 for 8 a.m., …, i = 6 for 1 p.m.)
◦ Constraints: For each hour, we need to ensure that the total number of
part-time employees who work that hour is at least as large as the
minimum requirements.
Example 15.3 Continued
Net staff requirements for each hour
Trang 14Spreadsheet Implementation for Brewer Services
Trang 15Solver Model for Brewer Services
Trang 16 The solution has 9 excess employees at
8 a.m., which may not be desirable.
Most scheduling problems have multiple
optimal solutions.
An easy way to find an alternative
optimal solution is to add an additional
constraint with the objective function
equal to the optimal solution value:
and then set the new objective function
to minimize the number of excess
employees at 8 a.m
Example 15.4: Finding Alternative Optimal
Solutions for Brewer Services Model
Trang 17 Modified Solver model and Alternative Optimal Solution
Example 15.4 Continued
However, now we have 9 excess employees at noon.
Trang 18 A better approach would be to
define additional constraints to
restrict the excess number of
employees in the range E21:E29
to be less than or equal to some
maximum number k and then
attempt to minimize the original
objective function
◦ The smallest value of k that results in
a feasible solution is k = 3.
Example 15.4 Continued
Trang 19 A binary variable x is a general integer variable that is
restricted to being between 0 and 1:
◦ We usually just write this as x = 0 or 1.
Binary variables are used to model logical decisions.
Integer Optimization Models with
Binary Variables
Trang 20 Project selection model.
Five potential projects are being considered Each
project is expected to generate a return (given by the net present value) but requires a fixed amount of cash and personnel.
The available budget and human resources do not allow selection of all 5 projects.
The objective is to maximize expected return.
Example 15.5: Hahn Engineering
Trang 21 Personnel limitation: 5X 1 + 3X 2 + 2X 3 + 5X 4 + 3X 5 ≤ 12
Example 15.5 Continued
Copyright © 2013 Pearson Education, Inc
publishing as Prentice Hall 15-21
Trang 22 Spreadsheet implementation and Solver model
Example 15.5 Continued
Trang 23 Sensitivity analysis for integer optimization requires solving the model for changes in the data.
re- The heat map below shows the impact of various levels
of available resources (cash and personnel) on the
expected return
◦ The upper-left-hand corner of each colored region (shown boxed
in the figure)represents the lowest amount of resources required
to achieve that return
Sensitivity Analysis for Hahn
Engineering
Trang 24 Examples
◦ If project 1 is selected, then project 4 must also be selected
◦ Excel IF functions, while logical, cannot be used in linear
optimization
◦ Model this as X 4 ≥ X 1
◦ If X 1 = 1, then X 4 is forced to be 1
Other types of logical constraints:
Using Binary Variables to Model Logical Constraints
Trang 25Suppose project managers want to ensure that:
If project 1 is selected, then project 4 is also selected: X 4 − X 1 ≥ 0
At most one of projects 1 and 3 can be selected: X 1 + X 3 ≤ 1
Define a cell for each constraint function (cells B17 and B18)
Example 15.6: Adding Logical Constraints into the Project-Selection Model
Trang 26 Location model: find a subset of locations that cover a service area.
Anderson Fire Department serves 7 districts
The village wants to determine where to locate fire stations so that response times to residents in all 7 districts is no more than 8
minutes
Response times:
Example 15.7: Anderson Village Fire
Department
Trang 27 Model development
Define X j as binary
X j = 1 if a fire station is located in district j
X j = 0 if a fire station is not located in district j
Minimize the number of fire stations:
Each district must be reachable within 8 minutes by some fire station:
Example 15.7 Continued
Trang 28 Spreadsheet implementation and Solver model
◦ Construct a matrix by converting all response times that are within 8 minutes to 1s and those that exceed 8 minutes to 0s Then the constraint functions for each district are simply the SUMPRODUCT of the decision variables and the rows of this matrix
Example 15.7 Continued
Trang 29 The village’s board of trustees wants to better
understand the trade-offs between response time and required number of fire stations.
◦ Vary response times from 5 to 10 minutes to see the effect on the number of fire stations required
◦ Analytic Solver Parametric Analysis
Example 15.8: Parameter Analysis for
Response Times
A response time
of 5 minutes requires 3 fire stations.
A response time
of 9-10 minutes requires 1 fire station.
Trang 30 A company has numerous potential locations for
distribution centers to ship products to customers.
A single-sourcing policy specifies that each customer can only be supplied from one distribution center.
The problem is to determine which customers to assign
to each distribution center
A Customer-Assignment Model for
Supply Chain Optimization
Trang 31 Cij = total cost of satisfying
the demand of customer j
from distribution center i
k = number of distribution
centers to be selected
Customer-Assignment Optimization Model
Trang 32 Distributes restaurant supplies in 5 major cities.
have been identified.
configuration that minimizes sourcing costs.
Example 15.9: Paul & Giovanni Foods
Trang 34 Spreadsheet and Solver model
Example 15.9 Continued
Trang 35 Many practical applications of optimization involve a combination of continuous variables and binary variables
A common example is a plant location and distribution model in
which a company must decide which plant to build (binary variables) and then how to best ship the product from the plant to the
distribution centers (continuous variables)
◦ E.g.: With increased demand that exceeds capacity at Marietta and
Minneapolis, GAC is considering adding a new plant in either Fayetteville
or Chico
Mixed-Integer Optimization models
Trang 36 Define a binary variable for the decision of which plant to
build: Y1 = 1 if the Fayetteville plant is built and Y2 = 1 if the Chico plant is built.
Define normal variables Xij, representing the amount
shipped from plant i to distribution center j.
Objective function:
Example 15.10: A Mixed-Integer Plant
Location Model
Trang 37 Capacity constraints
◦ Capacity constraints for the Marietta and Minneapolis plants
remain as before However, for Fayetteville and Chico, we can allow shipping from those locations only if a plant is built there
◦ Note that if the binary variable is zero, then the right-hand side of the constraint is zero, forcing all shipment variables to be zero also If, however, a particular Y-variable is 1, then shipping up to the plant capacity is allowed
Example 15.10 Continued
Trang 38 Demand constraints
Build exactly one plant
Nonnegativity for Xij
Example 15.10 Continued
Trang 39Spreadsheet Model
Trang 40Solver Model
Trang 41 In the plant location model, why not use IF functions
instead of these constraints?
From a spreadsheet perspective, there is nothing wrong with this
◦ However, from a linear optimization perspective, the use of an IF function no longer preserves the linearity of the model
(technically, the model would be called nonsmooth) and we would
get an error message in trying to solve the model
◦ Similarly, using the constraint X 31 Y 1 + X 32 Y 1 +X 33 Y 1 + X 34 Y 1 ≤ 1500
is logically correct, but multiplying the two variables together
results in a nonlinear function
Binary Variables, IF Functions, and
Nonlinearities in Model Formulation
Trang 42 Many business problems involve fixed costs; they are either incurred in full or not at all.
Binary variables can be used to model such problems in
a similar fashion as we did for the plant location model.
Fixed-Cost Models
Trang 43 K&L Designs model was developed in Chapter 14:
Suppose that the company must rent some equipment, which costs
$65 for 3 months The equipment can be rented or returned each quarter, so if nothing is produced in a quarter, it makes no sense to incur the rental cost
Example 15.11: Incorporating Fixed
Costs into the K&L Designs Model
Trang 44 Model development
Yi = 1 if production occurs during season i
Yi = 0 if not
Objective function
Example 15.11 Continued
Trang 45 Material balance constraints
We must ensure that whenever a production variable, P, is positive, the corresponding Y variable is equal to 1; conversely, if the Y
variable is 0 (you don’t rent the equipment), then the corresponding production variable must also be 0
Production variables are nonnegative, and Y variables are binary
Example 15.11 Continued
Trang 46Spreadsheet Implementation
Trang 47Solver Model
Trang 48 This model does not preclude feasible solutions in which a production variable is 0 while its
corresponding Y-variable is 1 E.g., P A could be
zero even if Y A = 1,
◦ This implies that we incur the fixed cost even though
no production is incurred during that time period
Although such a solution is feasible, it can never be optimal, because a lower cost could be obtained by
setting the Y-variable to 0 without affecting the
value of the production variable, and the solution algorithm will always ensure this
Therefore, it is not necessary to explicitly try to
incorporate this in the model
Modeling Issue