Integer Programming, Goal Programming, and Nonlinear
Integer Programming, Goal Programming, and Nonlinear
2
Integer Programming
• An integer programming model is one where one or more of the
decision variables has to take on an integer value in the final
solution
• Three types of integer programming problems
1. Pure integer programming – all variables have integer values
2. Mixed-integer programming – some but not all of the variables will
have integer values
3. Zero-one integer programming – special cases in which all the
decision variables must have integer solution values of 0 or 1
3
Harrison Electric Company Example of Integer
Programming
• Company produces two products, old-fashioned chandeliers
and ceiling fans
• Both require a two-step production process involving wiring and
assembly
• It takes about 2 hours to wire each chandelier and 3 hours to wire a
ceiling fan
• Final assembly of the chandeliers and fans requires 6 and 5 hours,
respectively
• Only 12 hours of wiring time and 30 hours of assembly time are
available
• Each chandelier produced nets the firm $7 and each fan $6
4
Harrison Electric Company Example of Integer
Programming
Production mix LP formulation
Maximize profit = $7X1 + $6X2
subject to 2X1 + 3X2 ≤ 12 (wiring hours)
6X1 + 5X2 ≤ 30 (assembly hours)
X1, X2 ≥ 0
where
X1 = number of chandeliers produced
X2 = number of ceiling fans produced
5
Harrison Electric Company Example of Integer
Programming
FIGURE 1 – Harrison X2
Electric Problem 6–
5–
6X1 + 5X2 ≤ 30
4–
Optimal LP Solution
2– + + + (X1= 3.75, X2 = 1.5, Profit = $35.25
1– 2X1 + 3X2 ≤ 12
+ + + +
| | | | | |
0 1 2 3 4 5 6 X1
6
Harrison Electric Company Example of Integer
Programming
• Production planner recognizes this is an integer problem
• First attempt at solving it is to round the values to X1 = 4 and X2 = 2
• However, this is not feasible
• Rounding X2 down to 1 gives a feasible solution, but it may not be
optimal
• This could be solved using the enumeration method
• Generally not possible for large problems
7
Harrison Electric Company Example of Integer
Programming
CHANDELIERS (X1) CEILING FANS (X2) PROFIT ($7X1 + $6X2)
0 0 $0
TABLE 2 – Integer 1 0 7
Solutions to the 2 0 14
Harrison Electric
3 0 21
Company Problem
4 0 28
5 0 35 Optimal solution to
0 1 6 integer programming
problem
1 1 13
2 1 20
3 1 27
4 1 34 Solution if rounding is
0 2 12 used
1 2 19
2 2 26
3 2 33
0 3 18
1 3 25
0 4 24
8
Harrison Electric Company Example of Integer
Programming
• The optimal integer solution is less than the optimal LP solution of $35.25
• An integer solution can never be better than the LP solution and is usually a
lesser value
9
Mixed-Integer Programming Problem Example
• Many situations in which only some of the variables are
restricted to integers
• Bagwell Chemical Company produces two industrial chemicals
• Xyline must be produced in 50-pound bags
• Hexall is sold by the pound and can be produced in any quantity
• Both xyline and hexall are composed of three ingredients – A, B, and C
• Bagwell sells xyline for $85 a bag and hexall for $1.50 per pound
10
Mixed-Integer Programming Problem Example
AMOUNT OF
AMOUNT PER 50-POUND AMOUNT PER POUND INGREDIENTS
BAG OF XYLINE (LB) OF HEXALL (LB) AVAILABLE
11
Mixed-Integer Programming Problem Example
Let X = number of 50-pound bags of xyline
Let Y = number of pounds of hexall
A mixed-integer programming problem as Y is not required to be an integer
13
Capital Budgeting Example
• Common capital budgeting problem – select from a set of possible projects
when budget limitations make it impossible to select them all
• A 0-1 variable is defined for each project
• Quemo Chemical Company is considering three possible improvement
projects for its plant
• A new catalytic converter
• A new software program for controlling operations
• Expanding the storage warehouse
• It cannot do them all
14
Capital Budgeting Example
• Objective is to maximize net present value of projects undertaken
subject to Total funds used in year 1 ≤ $20,000
Total funds used in year 2 ≤ $16,000
15
Capital Budgeting Example
Decision variables 1 if catalytic converter project is funded
X1 =
0 otherwise
X2 = 1 if software project is funded
0 otherwise
X3 = 1 if warehouse expansion project is funded
0 otherwise
Formulation
Maximize NPV = 25,000X1 + 18,000X2 + 32,000X3
subject to 8,000X1 + 6,000X2 + 12,000X3 ≤ 20,000
7,000X1 + 4,000X2 + 8,000X3 ≤ 16,000
X1, X2, X3 = 0 or 1
16
Limiting the Number of Alternatives Selected
• One common use of 0-1 variables involves limiting the number of
projects or items that are selected from a group
– Suppose Quemo Chemical is required to select no more than two of the three
projects regardless of the funds available
– This would require adding a constraint
X1 + X2 + X3 ≤ 2
– If they had to fund exactly two projects the constraint would be
X1 + X2 + X3 = 2
17
Dependent Selections
• At times the selection of one project depends on the selection of
another project
– Suppose Quemo’s catalytic converter could only be purchased if the software
was purchased
– The following constraint would force this to occur
X1 ≤ X2 or X1 – X2 ≤ 0
– If we wished for the catalytic converter and software projects to either both
be selected or both not be selected, the constraint would be
X1 = X2 or X1 – X2 = 0
18
Fixed-Charge Problem Example
• Often businesses are faced with decisions involving a fixed
charge that will affect the cost of future operations
• Sitka Manufacturing is planning to build at least one new plant and
three cities are being considered
• Baytown, Texas
• Lake Charles, Louisiana
• Mobile, Alabama
19
Fixed-Charge Problem Example
Constraints
1. Total production capacity at least 38,000 units each year
2. Number of units produced at the Baytown plant is 0 if the plant is not built
and no more than 21,000 if the plant is built
3. Number of units produced at the Lake Charles plant is 0 if the plant is not
built and no more than 20,000 if the plant is built
4. Number of units produced at the Mobile plant is 0 if the plant is not built
and no more than 19,000 if the plant is built
20
Fixed-Charge Problem Example
TABLE 4 – Fixed and Variable Costs for Sitka Manufacturing
21
Fixed-Charge Problem Example
Decision variables
X1 = 1 if factory is built in Baytown
0 otherwise
22
Fixed-Charge Problem Example
Formulation
Minimize cost = 340,000X1 + 270,000X2 + 290,000X3
+ 32X4 + 33X5 + 30X6
subject to X4 + X5 + X6 ≥ 38,000
X4 ≤ 21,000X1
X5 ≤ 20,000X2
X6 ≤ 19,000X3
X1, X2, X3= 0 or 1
X4, X5, X6≥ 0 and integer
23
Financial Investment Example
• Simkin, Simkin, and Steinberg specialize in recommending oil
stock portfolios
• One client has the following specifications
1. At least two Texas firms must be in the portfolio
2. No more than one investment can be made in a foreign oil company
3. One of the two California oil stocks must be purchased
• The client has $3 million to invest and wants to buy large blocks of
shares
24
Financial Investment Example
TABLE 4 – Oil Investment Opportunities
25
Financial Investment Example
Formulation
Maximize return = 50X1 + 80X2 + 90X3 + 120X4 + 110X5 + 40X6 + 75X7
subject to
X1 + X4 + X5 ≥ 2 (Texas constraint)
X2 + X3 ≤ 1 (foreign oil constraint)
X6 + X7 = 1 (California constraint)
480X1 + 540X2 + 680X3 + 1,000X4 + 700X5 + 510X6 + 900X7 ≤ 3,000
($3 million limit)
Xi = 0 or 1 for all i
26
Goal Programming
• Firms often have more than one goal
• In linear and integer programming methods the objective
function is measured in one dimension only
• It is not possible for LP to have multiple goals unless they are
all measured in the same units
• Highly unusual situation
• Goal programming developed to supplement LP
27
Goal Programming
• Typically goals set by management can be achieved only at the
expense of other goals
• Establish a hierarchy of importance so that higher-priority goals
are satisfied before lower-priority goals
• Not always possible to satisfy every goal
• Goal programming attempts to reach a satisfactory level of
multiple objectives
• May not optimize but have to satisfice
28
Goal Programming
• Main difference is in the objective function
• Goal programming tries to minimize the deviations between
goals and what can be achieved given the constraints
• Objective is to minimize deviational variables
29
Harrison Electric Company Revisited
Production mix LP formulation
30
Harrison Electric Company Revisited
• Moving to a new location and maximizing profit is not a realistic
objective
• A profit level of $30 would be satisfactory during this period
• The goal programming problem is to find the production mix that
achieves this goal as closely as possible given the production time
constraints
• Define two deviational variables
d1– = underachievement of the profit target
d1+ = overachievement of the profit target
31
Harrison Electric Company Revisited
Single-goal programming formulation
Minimize under or
overachievement = d1– + d1+
of profit target
subject to
$7X1 + $6X2 + d1– – d1+ = $30 (profit goal
constraint)
2X1 + 3X2 ≤ 12
(wiring hours)
6X1 + 5X2 ≤ 30
(assembly hours)
X1, X2, d1–, d1+ ≥ 0 32
Harrison Electric Company Revisited
33
Extension to Equally Important Multiple Goals
Achieve several goals that are equal in priority
Goal 1: to produce a profit of $30 if possible during the production period
Goal 2: to fully utilize the available wiring department hours
Goal 3: to avoid overtime in the assembly department
Goal 4: to meet a contract requirement to produce at least seven ceiling fans
34
Extension to Equally Important Multiple Goals
The deviational variables can be defined as
d1– = underachievement of the profit target
d1+ = overachievement of the profit target
d2– = idle time in the wiring department (underutilization)
d2+ = overtime in the wiring department (overutilization)
d3– = idle time in the assembly department (underutilization)
d3+ = overtime in the assembly department (overutilization)
d4– = underachievement of the ceiling fan goal
d4+ = overachievement of the ceiling fan goal
35
Extension to Equally Important Multiple Goals
Management is unconcerned about d1+, d2+, d3–, and
d4+ so these may be omitted from the objective function
New objective function and constraints
Minimize total deviation = d1– + d2– + d3+ + d4–
subject to
$7X1 + $6X2 + d1– – d1+ = $30 (profit constraint)
2X1 + 3X2 + d2– – d2+ = 12 (wiring hours
constraint)
6X1 + 5X2 + d3– – d3+ = 30 (assembly hours
constraint)
X2 + d4– – d4+ = 7 (ceiling fan constraint)
36
All Xi, di variables ≥ 0
Ranking Goals with Priority Levels
• In most goal programming problems, one goal will be more
important than another
• Lower-order goals considered only after higher-order goals are
met
• Priorities (Pis) are assigned to each deviational variable
• P1 is the most important goal
• P2 the next most important
• P3 the third, and so on
37
Ranking Goals with Priority Levels
Harrison Electric has set the following priorities for their
four goals
GOAL PRIORITY
Reach a profit as much above $30 as possible P1
Fully use wiring department hours available P2
Avoid assembly department overtime P3
Produce at least seven ceiling fans P4
38
Ranking Goals with Priority Levels
Harrison Electric has set the following priorities for their four
goals
GOAL PRIORITY
Reach a profit as much above $30 as possible P1
Fully use wiring department hours available P2
Avoid assembly department overtime P3
Produce at least seven ceiling fans P4
39
Goal Programming with Weighted Goals
• Priority levels assume that each level is infinitely more important
than the level below it
• However a goal may be only two or three times more important
than another
• Instead of placing these goals on different levels, they are
placed on the same level but with different weights
• The coefficients of the deviation variables in the objective
function include both the priority level and the weight
40
Goal Programming with Weighted Goals
• Suppose Harrison decides to add another goal of producing at least two
chandeliers
• The goal of producing seven ceiling fans is considered twice as important
as this goal
• The goal of two chandeliers is assigned a weight of 1 and the goal of
seven ceiling fans is assigned a weight of 2 and both of these will be
priority level 4
• The new constraint and objective function are
X1 + d5– – d5+ = 2 (chandeliers)
Minimize
total = P1d1– + P2d2– + P3d3+ + P4(2d4–) + P4d5–
deviation
41
Nonlinear Programming
• The methods seen so far have assumed that the objective
function and constraints are linear
• However, there are many nonlinear relationships in the real
world that would require the objective function and/or constraint
equations to be nonlinear
• Computational procedures for nonlinear programming (NLP)
may only provide a local optimum solution rather than a global
optimum
42
Nonlinear Objective Function and Linear
Constraints
• The Great Western Appliance Company sells two models of toaster
ovens, the Microtoaster (X1) and the Self-Clean Toaster Oven (X2)
• They earn a profit of $28 for each Microtoaster no matter the number
of units sold
• For the Self-Clean oven, profits increase as more units are sold due to
a fixed overhead
– The profit function for the Self-Clean oven
21X2 + 0.25X22
43
Nonlinear Objective Function and Linear
Constraints
• The objective function is nonlinear and there are two linear constraints on
production capacity and sales time available
46
Both Nonlinear Objective Function and
Nonlinear Constraints
• Objective function and constraint equations
47
Linear Objective Function and Nonlinear
Constraints
• Thermlock Corp. produces massive rubber washers and
gaskets like the type used to seal joints on the NASA Space
Shuttles
• It combines two ingredients, rubber (X1) and oil (X2)
• The cost of the industrial quality rubber is $5 per pound and the cost of
high viscosity oil is $7 per pound
• Two of the three constraints are nonlinear
48
Linear Objective Function and Nonlinear
Constraints
• Objective function and constraints
49