Top Banner
© The McGraw-Hill Companies, Inc., 2003 9.1 McGraw-Hill/Irwin Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1) 9.2–9.12 A Case Study: California Manufacturing (Section 9.2) 9.13–9.19 Some Other Applications (Section 9.3) 9.20–9.21 Other Formulation Possibilities: Wyndor with Setup Costs (Section 9.4) 9.22–9.27 Other Formulation Possibilities: Mutually Exclusive Products (Section 9.4) 9.28–9.31 Other Formulation Possibilities: Either-Or Constraints (Section 9.4) 9.32–9.36 Some Formulation Examples: Good Products (Section 9.5) 9.37–9.40 Some Formulation Examples: Supersuds (Section 9.5) 9.41–9.44 Some Formulation Examples: Southwestern Airways (Section 9.5)9.45–9.49 Introduction to Integer Programming (UW Lecture) 9.50–9.65 These slides are based upon a lecture from the MBA core-course in Management Science at the University of Washington (as taught by one of the authors). Applications of Integer Programming (UW Lecture) 9.66–9.78 These slides are based upon a lecture from the MBA elective “Modeling with Spreadsheets” at the University of Washington (as taught by one of the authors).
98

McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

Dec 19, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.1McGraw-Hill/Irwin

Table of ContentsChapter 9 (Integer Programming)

General Integer Programming (Section 9.1) 9.2–9.12A Case Study: California Manufacturing (Section 9.2) 9.13–9.19Some Other Applications (Section 9.3) 9.20–9.21Other Formulation Possibilities: Wyndor with Setup Costs (Section 9.4) 9.22–9.27Other Formulation Possibilities: Mutually Exclusive Products (Section 9.4) 9.28–9.31Other Formulation Possibilities: Either-Or Constraints (Section 9.4) 9.32–9.36Some Formulation Examples: Good Products (Section 9.5) 9.37–9.40Some Formulation Examples: Supersuds (Section 9.5) 9.41–9.44Some Formulation Examples: Southwestern Airways (Section 9.5) 9.45–9.49

Introduction to Integer Programming (UW Lecture) 9.50–9.65These slides are based upon a lecture from the MBA core-course in Management Science at the University of Washington (as taught by one of the authors).

Applications of Integer Programming (UW Lecture) 9.66–9.78These slides are based upon a lecture from the MBA elective “Modeling with Spreadsheets” at the University of Washington (as taught by one of the authors).

Page 2: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.2McGraw-Hill/Irwin

Assumptions of linear programming

Proportionality: the gross margin and resource requirements per unit of activity are assumed to be constant regardless of the level of the activity use

Additivity: no interaction effects between activities

Homogeneity: all units of the same resource or activity are identical

Continuity: resources can be used and activities produced in any fractional units

Deterministic coefficients: all coefficients in the model are known with certainty

Optimization: One proper objective function to be maximized or minimized

Finiteness: only a finite number of activities and constraints is considered

Page 3: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.3McGraw-Hill/Irwin

The TBA Airlines Problem

• TBA Airlines is a small regional company that specializes in short flights in small airplanes.

• The company has been doing well and has decided to expand its operations.

• The basic issue facing management is whether to purchase more small airplanes to add some new short flights, or start moving into the national market by purchasing some large airplanes, or both.

Question: How many airplanes of each type should be purchased to maximize their total net annual profit?

Page 4: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.4McGraw-Hill/Irwin

Data for the TBA Airlines Problem

SmallAirplane

LargeAirplane

CapitalAvailable

Net annual profit per airplane $1 million $5 million

Purchase cost per airplane 5 million 50 million $100 million

Maximum purchase quantity 2 —

Page 5: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.5McGraw-Hill/Irwin

Linear Programming Formulation

Let S = Number of small airplanes to purchase

L = Number of large airplanes to purchase

Maximize Profit = S + 5L ($millions)

subject to

Capital Available: 5S + 50L ≤ 100 ($millions)

Max Small Planes: S ≤ 2

and

S ≥ 0, L ≥ 0.

Page 6: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.6McGraw-Hill/Irwin

Graphical Method for Linear Programming

3

2

1

0 1 2 3 S

L

Feasible region

Number of large airplanes purchased

Number of small airplanes purchased

(2, 1) = Rounded solution (Profit = 7)

(2, 1.8) = Optimal solution

Profit = 11 = S + 5 L

Page 7: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.7McGraw-Hill/Irwin

Violates Divisibility Assumption of LP

• Divisibility Assumption of Linear Programming: Decision variables in a linear programming model are allowed to have any values, including fractional values, that satisfy the functional and nonnegativity constraints. Thus, these variables are not restricted to just integer values.

• Since the number of airplanes purchased by TBA must have an integer value, the divisibility assumption is violated.

Page 8: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.8McGraw-Hill/Irwin

Integer Programming Formulation

Let S = Number of small airplanes to purchase

L = Number of large airplanes to purchase

Maximize Profit = S + 5L ($millions)

subject to

Capital Available: 5S + 50L ≤ 100 ($millions)

Max Small Planes: S ≤ 2

and

S ≥ 0, L ≥ 0

S, L are integers.

Page 9: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.9McGraw-Hill/Irwin

Graphical Method for Integer Programming

• When an integer programming problem has just two decision variables, its optimal solution can be found by applying the graphical method for linear programming with just one change at the end.

• We begin as usual by graphing the feasible region for the LP relaxation, determining the slope of the objective function lines, and moving a straight edge with this slope through this feasible region in the direction of improving values of the objective function.

• However, rather than stopping at the last instant the straight edge passes through this feasible region, we now stop at the last instant the straight edge passes through an integer point that lies within this feasible region.

• This integer point is the optimal solution.

Page 10: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.10McGraw-Hill/Irwin

Graphical Method for Integer Programming

3

2

1

0 1 2 3 S

LNumber of large airplanes purchased

Number of small airplanes purchased

(2, 1) = Rounded solution (Profit = 7)

(2, 1.8) = Optimal solution for the LP relaxation (Profit = 11)

Profit = 10 = S + 5 L

(0, 2) = Optimal solution for the integer programming problem (Profit = 10)

Page 11: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.11McGraw-Hill/Irwin

Spreadsheet Model

3456789

1011121314

B C D E F GSmall Airplane Large Airplane

Unit Profit ($millions) 1 5

Capital CapitalSpent Available

Capital ($millions) 5 50 100 <= 100

Total ProfitSmall Airplane Large Airplane ($millions)

Units Produced 0 2 10<=

Maximum Small Airplanes 2

Capital Per Unit Produced

Page 12: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.12McGraw-Hill/Irwin

Types of Integer Programming Problems

• Pure integer programming problems are those where all the decision variables must be integers.

• Mixed integer programming problems only require some of the variables (the “integer variables”) to have integer values so the divisibility assumption holds for the rest (the “continuous variables”).

• Binary variables are variables whose only possible values are 0 and 1.

• Binary integer programming (BIP) problems are those where all the decision variables restricted to integer values are further restricted to be binary variables.

– Such problems can be further characterized as either pure BIP problems or mixed BIP problems, depending on whether all the decision variables or only some of them are binary variables.

Page 13: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.13McGraw-Hill/Irwin

Applications of Binary Variables

• Since binary variables only provide two choices, they are ideally suited to be the decision variables when dealing with yes-or-no decisions.

• Examples:– Should we undertake a particular fixed project?

– Should we make a particular fixed investment?

– Should we locate a facility in a particular site?

Page 14: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.14McGraw-Hill/Irwin

The capital budgeting decision is a matter of choosing among n alternatives in order to maximize the return, subject to constraints on the amount of capital invested over time.

Capital Budgeting:Capital Budgeting:An Expansion DecisionAn Expansion Decision

Applications ofApplications ofBinary VariablesBinary Variables

For example, suppose that AutoPower’s board of directors faces the following data:

Page 15: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.15McGraw-Hill/Irwin

Expand Belgian Plant 400 100 50 200 100 0

Expand Sm. MachineCapacity in US 700 300 200 100 100 100

Establish New Plant in Chile 800 100 200 270 200 100

Expand Lg. MachineCapacity in US 1000 200 100 400 200 200

Capital Available 500 450 700 400 300

ALTERNATIVE PRESENTVALUE OF

NET RETURN($000s)

CAPTIAL REQUIRED IN YEAR BY ALTERNATIVE ($000s)

1 2 3 4 5

The Board must select one or more of these alternatives:

Page 16: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.16McGraw-Hill/Irwin

An ILP Model for Capital Budgeting at An ILP Model for Capital Budgeting at AutoPower:AutoPower: This model can be modeled as an ILP (called a binarybinary or 0-1 ILP0-1 ILP model) in which all the variables are binary variables.

Let xi = 1 if project i is accepted and xi = 0 if project i is not accepted. The model becomes:

Page 17: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.17McGraw-Hill/Irwin

Max 400x1 + 700x2 + 800x3 + 1000x4

s.t.100x1 + 300x2 + 100x3 + 200x4 < 500

50x1 + 200x2 + 200x3 + 100x4 < 450

200x1 + 100x2 + 270x3 + 400x4 < 700

100x1 + 100x2 + 200x3 + 200x4 < 400

100x2 + 100x3 + 200x4 < 300

xi = 0 or 1; i = 1, 2, 3, 4

Present valuefrom accepted

projects

Capitalrequiredin year 1

Capitalavailablein year 1

Page 18: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.18McGraw-Hill/Irwin

The LP Relaxation:The LP Relaxation: First, approach this model by solving the LP relaxation.

=SUMPRODUCT(Decisions, C5:F5)

=H7-G7

Note: named ranges were used to improve readability of models.

Page 19: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.19McGraw-Hill/Irwin

Note that your solution may differ because the model has alternative optimal solutions.

In the LP relaxation model, xi was constrained to be less than or equal to 1. This resulted in fractional values (0<xi<1) for the decision variables.

Since we are looking for 1’s (yes) and 0’s (no), these fractional values are not meaningful. In addition, rounding these values would not work very well.

Rounding to: x1 = 1, x2 = 1, x3 = 0, x4 = 1would result in an infeasible solution.

Page 20: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.20McGraw-Hill/Irwin

The optimal ILP solution can be obtained using Solver’s integer programminginteger programming option.

Use the bin option to

force all four of the

decision variables to 0-1 values

Page 21: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.21McGraw-Hill/Irwin

The Premium Edition Solver for Education produces a different Solver Results completion message for ILPs to remind you that the ILP solution may not be optimal.

Page 22: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.22McGraw-Hill/Irwin

The default Tolerance field on the Solver Options dialog (relevant only for ILP models) is 5%. This means that the Solver ILP optimization procedure is continued only until the ILP solution OV is within 5% of the ILP’s optimum OV.

A higher Tolerance speeds up Solver at the risk of a reported solution further from the true ILP optimum.

Setting Tolerance to 0% forces Solver to find the ILP optimum but with much longer solution times.

Page 23: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.23McGraw-Hill/Irwin

An important use of binary variables is to impose constraints that arise from logical conditions.

Logical ConditionsLogical Conditions

Applications ofApplications ofBinary VariablesBinary Variables

No More Than No More Than kk of of nn Alternatives:Alternatives:Let xi = 0 or 1, for i = 1, 2, …, n

The constraintx1 + x2 + … + xn < k

implies that, at most, k alternatives of n possibilities can be selected (i.e., not more than k xi can equal 1).

Page 24: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.24McGraw-Hill/Irwin

For example, adding the constraint: x1 + x3 < 1

to the previous AutoPower example, implies that the solution can contain at most one of the overseas alternatives.

Dependent Decisions: Dependent Decisions: You can use 0-1 variables to force a dependent relationship on two or more decisions.

Page 25: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.25McGraw-Hill/Irwin

For example, suppose that AutoPower’s management does not want to select alternative k unless it first selects alternative m. The following constraint enforces this condition:

If alternative m is not selected, then xm = 0 which forces xk to be 0 (i.e., not selected).

xk < xm or equivalently xk - xm < 0

If alternative m is selected, then xm = 1 and xk < 1. Solver is then free to select 0 or 1 for xk.

Page 26: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.26McGraw-Hill/Irwin

Lot Size Constraints:Lot Size Constraints: A portfolio manager is considering purchasing security j. Let xj be the number of shares purchased. Consider the following constraints:

1. If he purchases security j, he must purchase at least 200 shares (called a minimum lot sizeminimum lot size or batch sizebatch size constraint)

2. He may not purchase more than 1000 shares of security j.

200 < xj < 1000

These constraints insist that xj always be at least 200. We want the conditions to be either xj = 0 or 200 < xj < 1000.

Page 27: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.27McGraw-Hill/Irwin

To achieve the constraint conditions, use a binary variable, say yj, for security j.

If yj = 1, then purchase security j

The constraints are:

xj < 1000yj

xj > 200yj

If y = 1, then the above constraints imply that 200 < xj < 1000 (purchase j).

If y = 0, then the above constraints imply that xj = 0 (do not purchase j).

If yj = 0, do not purchase security j

These 2 constraints together guarantee the “minimum lot size” constraint.

Page 28: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.28McGraw-Hill/Irwin

KK of of mm Constraints: Constraints: In general notation, let the “superset” of m constraints on a model’s (non-binary) decision variables,xi, be

gi(x1 , …, xn) < bi, for i = 1, …, m

Now, introduce m additional 0-1 decision variables yi to the model, and let M be chosen as a very large number, so large that, for each i,

gi(xi , …, xn) < M

for every x satisfying any set of k inequalities taken from the above m.

Page 29: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.29McGraw-Hill/Irwin

The following m + 1 constraints express the desired condition:

m

i=1yi = ki

This constraint forces exactly k of the new yi decision variables to have the value 1.

gi(x1 , …, xn) < bi yi + M(1- yi), i=1, …, m

Exactly k of the inequality constraints are equivalent to: gi(x1 , …, xn) < bi

The remaining m-k inequality constraints are equivalent to: gi(x1 , …, xn) < M

The very large number choice for M causes each such constraint to be redundant and not affect the model’s optimal solution.

Page 30: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.30McGraw-Hill/Irwin

KK of of mm Constraints Example: Constraints Example: Assume a company must find production quantities of three products (x1, x2, x3) as part of a large LP model.

Within the LP formulation, the company must choose one or the other (but not both) of two different production technologies for the 3 products.

Here are the two constraints:

30x1 + 20x2 + 10x3 < 100 (Technology 1)

10x1 + 30x2 + 5x3 < 110 (Technology 2)

Page 31: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.31McGraw-Hill/Irwin

These constraints cannot be added directly to the LP model. Instead, add two new binary decision variables (y1 and y2) to the LP model, making it an ILP model.y1 = 1 “Solver, choose Technology 1”

y1 = 0 “Solver, do not choose Technology 1”

y2 = 1 “Solver, choose Technology 2”

y2 = 0 “Solver, do not choose Technology 2”

Page 32: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.32McGraw-Hill/Irwin

The original constraints are then modified:

30x1 + 20x2 + 10x3 < 100y1 + 999999(1-y1)

10x1 + 30x2 + 5x3 < 110y2 + 999999(1-y2)

y1 + y2 = 1

Forces Solver to choose exactly one technology option

999999 was chosen to guarantee that one or the other constraint will be redundant for the whole LP model

Page 33: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.33McGraw-Hill/Irwin

A Fixed Charge ModelA Fixed Charge Model

In order to conserve capital, STECO, an electronics parts wholesaler, leases regional warehouses for its use.

The cost per month to lease warehouse i is Fi. Warehouse i can load a maximum of Ti trucks per month.

There are four sales districts, and the typical monthly demand in district j is dj truckloads.

The average cost of sending a truck from warehouse i to district j is cij.

Page 34: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.34McGraw-Hill/Irwin

STECO wants to know which warehouses to lease and how many trucks to send from each warehouse to each district.

STECO pays no lease cost for a given warehouse unless at least one truck is dispatched from it, and then it pays the full monthly lease amount.

Lot size models incorporating this cost behavior are common and are called fixed fixed charge modelscharge models.

Page 35: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.35McGraw-Hill/Irwin

Here is the network flow diagram:

AA BB CC

11 22 4433

Leasing cost/mth for warehouses FA FB FC

Capacity (truckloads) TA TB TC

Warehouses

Districts

Demandsper month d1 d2 d3 d4

Page 36: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.36McGraw-Hill/Irwin

Here are the data for this model:

A 170 40 70 160 200 7750

B 150 195 100 10 250 4000

C 100 240 140 60 300 5500

Monthly Demand(truck loads) 100 90 110 60

WAREHOUSE

Monthly Capacity(No. of Trucks)

Cost Per TruckSales District ($)

1 2 3 4

Monthly Leasing Costs ($)

Page 37: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.37McGraw-Hill/Irwin

A Fixed Charge ModelA Fixed Charge Model

Modeling Considerations:Modeling Considerations:Define yi as a binary decision variable and let:

yi = 1 if warehouse i is leased

yi = 0 if warehouse i is not leased

Although it may seem logical to treat the number of trucks sent from a warehouse to a district as an integer variable, in reality, there are three arguments as to why we should not:

Page 38: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.38McGraw-Hill/Irwin

1. This is a planning model, not a detailed operating model.

2. Treating the number of trucks as integer variables may make the model more difficult to optimize.

3. It costs more to lease one of the warehouses than to send a truck from a warehouse to a sales district.

Page 39: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.39McGraw-Hill/Irwin

A Fixed Charge ModelA Fixed Charge Model

The MILP ModelThe MILP ModelTo model STECO’s model as an MILP, let

yi = 1 if warehouse i is leased, i=A, B, C

yi = 0 if warehouse i is not leased

xij = number of trucks sent from warehouse i to district j i=A, B, C; j=1, 2, 3, 4

Page 40: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.40McGraw-Hill/Irwin

Min 7750yMin 7750yA A + 4000y+ 4000yBB + 5500y + 5500yCC + 170x + 170xA1A1 + … + 60x + … + 60xC4C4

Total leasing cost Total truck cost

xA1 + xB1 + xC1 > 100 demand at district 1Demand Constraints:

xA2 + xB2 + xC2 > 90demand at district 2

xA3 + xB3 + xC3 > 110 demand at district 3

xA4 + xB4 + xC4 > 60demand at district 4

These four constraints guarantee that demand will be satisfied at the respective sales district.

Objective Function:

Page 41: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.41McGraw-Hill/Irwin

xA1 + xA2 + xA3 + xA4 < 200yA

or

Capacity Constraints (for each warehouse):

These constraints serve 2 purposes:

xA1 + xA2 + xA3 + xA4 - 200yA < 0

1. It guarantees that capacity at warehouse i is not exceeded.

2. It forces STECO to lease warehouse i if anything is sent out of it.

xB1 + xB2 + xB3 + xB4 < 250yB

xC1 + xC2 + xC3 + xC4 < 300yC

Page 42: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.42McGraw-Hill/Irwin

Here is the Solved spreadsheet model:

=J4*C9

=C9*C4 =E4*E9 =C16+I16

Page 43: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.43McGraw-Hill/Irwin

Here are the Solver parameters:

Page 44: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.44McGraw-Hill/Irwin

In conclusion, the optimal solution to this model with integer supplies and demands will always include an integer allocation of trucks.

A Fixed Charge ModelA Fixed Charge Model

The argument involves two steps:

1. The optimal solution must lease some set of warehouses, and

2. Every possible set of leased warehouses yields an integer allocation of trucks.

Page 45: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.45McGraw-Hill/Irwin

Some Other Applications

• Investment Analysis– Should we make a certain fixed investment?

– Examples: Turkish Petroleum Refineries (1990), South African National Defense Force (1997), Grantham, Mayo, Van Otterloo and Company (1999)

• Site Selection– Should a certain site be selected for the location of a new facility?

– Example: AT&T (1990)

• Designing a Production and Distribution Network– Should a certain plant remain open? Should a certain site be selected for a new

plant? Should a distribution center remain open? Should a certain site be selected for a new distribution center? Should a certain distribution center be assigned to serve a certain market area?

– Examples: Ault Foods (1994), Digital Equipment Corporation (1995)

All references available for download at www.mhhe.com/hillier2e/articles

Page 46: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.46McGraw-Hill/Irwin

Some Other Applications

• Dispatching Shipments– Should a certain route be selected for a truck? Should a certain size truck be used?

Should a certain time period for departure be used?– Examples: Quality Stores (1987), Air Products and Chemicals, Inc. (1983),

Reynolds Metals Co. (1991), Sears, Roebuck and Company (1999)

• Scheduling Interrelated Activities– Should a certain activity begin in a certain time period?– Examples: Texas Stadium (1983), China (1995)

• Scheduling Asset Divestitures– Should a certain asset be sold in a certain time period?– Example: Homart Development (1987)

• Airline Applications:– Should a certain type of airplane be assigned to a certain flight leg? Should a certain

sequence of flight legs be assigned to a crew?– Examples: American Airlines (1989, 1991), Air New Zealand (2001)

All references available for download at www.mhhe.com/hillier2e/articles

Page 47: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.47McGraw-Hill/Irwin

Wyndor with Setup Costs (Variation 1)

Suppose that two changes are made to the original Wyndor problem:

1. For each product, producing any units requires a substantial one-time setup cost for setting up the production facilities.

2. The production runs for these products will be ended after one week, so D and W in the original model now represent the total number of doors and windows produced, respectively, rather than production rates. Therefore, these two variables need to be restricted to integer values.

Page 48: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.48McGraw-Hill/Irwin

Graphical Solution to Original Wyndor Problem

0 2 4 6 8

8

6

4

2

Production ratefor windows

Production rate for doors

FeasibleRegion

(2, 6)

Optimal solution

10

P = 3,600 = 300 D + 500 W

W

D

Page 49: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.49McGraw-Hill/Irwin

Net Profit for Wyndor Problem with Setup Costs

Net Profit ($)

Number ofUnits Produced Doors Windows

0 0(300) – 0 = 0 0 (500) – 0 = 0

1 1(300) – 700 = –400 1(500) – 1,300 = –800

2 2(300) – 700 = –100 2(500) – 1,300 = –300

3 3(300) – 700 = 200 3(500) – 1,300 = 200

4 4(300) – 700 = 500 4(500) – 1,300 = 700

5 Not feasible 5(500) – 1,300 = 1,200

6 Not feasible 6(500) – 1,300 = 1,700

Page 50: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.50McGraw-Hill/Irwin

Feasible Solutions for Wyndor with Setup Costs

0 2 4 6

2

4

6

8Production quantity for windows

(0, 0)gives P = 0

(4, 0) gives P = 500

(4, 3) gives P = 500 + 200

Production quantity for doors

(2, 6) gives P = -100 + 1700

(0, 6) gives P = 1700

8

= 1600

= 700

W

D

Page 51: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.51McGraw-Hill/Irwin

Algebraic Formulation

Let D = Number of doors to produce,W = Number of windows to produce,y1 = 1 if perform setup to produce doors; 0 otherwise,y2 = 1 if perform setup to produce windows; 0 otherwise .

Maximize P = 300D + 500W – 700y1 – 1,300y2

subject toOriginal Constraints:

Plant 1: D ≤ 4Plant 2: 2W ≤ 12Plant 3: 3D + 2W ≤ 18

Produce only if Setup:Doors: D ≤ 99y1

Windows: W ≤ 99y2

andD ≥ 0, W ≥ 0, y1 and y2 are binary.

Page 52: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.52McGraw-Hill/Irwin

Spreadsheet Model

3456789

1011121314151617

B C D E F G HDoors Windows

Unit Profit $300 $500Setup Cost $700 $1,300

Hours HoursUsed Available

Plant 1 1 0 0 <= 4Plant 2 0 2 12 <= 12Plant 3 3 2 12 <= 18

Doors WindowsUnits Produced 0 6

<= <= Production Profit $3,000Only If Setup 0 99 - Total Setup Cost $1,300

Setup? 0 1 Total Profit $1,700

Hours Used Per Unit Produced

Page 53: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.53McGraw-Hill/Irwin

Wyndor with Mutually Exclusive Products(Variation 2)

Suppose that now the only change from the original Wyndor problem is:

• The two potential new products (doors and windows) would compete for the same customers. Therefore, management has decided not to produce both of them together.

– At most one can be chosen for production, so either D = 0 or W = 0, or both.

Page 54: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.54McGraw-Hill/Irwin

Feasible Solution forWyndor with Mutually Exclusive Products

0 2 4 6

2

4

6

8Production rate for windows

(0, 0) gives P = 0 (4, 0) gives P = 1,200

Production rate for doors

(0, 6) gives P = 3,000

P = 300 D + 500 W

Either D = 0 or W = 0

8

W

D

Page 55: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.55McGraw-Hill/Irwin

Algebraic Formulation

Let D = Number of doors to produce,W = Number of windows to produce,y1 = 1 if produce doors; 0 otherwise,y2 = 1 if produce windows; 0 otherwise.

Maximize P = 300D + 500Wsubject to

Original Constraints:Plant 1: D ≤ 4Plant 2: 2W ≤ 12Plant 3: 3D + 2W ≤ 18

Auxiliary variables must =1 if produce any:Doors: D ≤ 99y1

Windows: W ≤ 99y2

Mutually Exclusive: y1 + y2 ≤ 1and

D ≥ 0, W ≥ 0, y1 and y2 are binary.

Page 56: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.56McGraw-Hill/Irwin

Spreadsheet Model

3456789

10111213141516171819

B C D E F GDoors Windows

Unit Profit $300 $500

Hours HoursUsed Available

Plant 1 1 0 0 <= 4Plant 2 0 2 12 <= 12Plant 3 3 2 12 <= 18

Doors WindowsUnits Produced 0 6

<= <= Total MaximumOnly If Produce 0 99 Produced To Produce

Produce? 0 1 1 <= 1

Total Profit$3,000

Hours Used Per Unit Produced

Page 57: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.57McGraw-Hill/Irwin

Wyndor with Either-Or Constraints(Variation 3)

Suppose that now the only change from the original Wyndor problem is:

• The company has just opened a new plant (plant 4) that is similar to plant 3, so the new plant can perform the same operations as plant 3 to help produce the two new products (doors and windows).

• However, management wants just one of the plants to be chosen to work on these new products. The plant chosen should be the one that provides the most profitable product mix.

Page 58: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.58McGraw-Hill/Irwin

Data for Wyndor with Either-Or Constraints(Variation 3)

Production Time Used forEach Unit Produced (Hours)

Production TimeAvailable

per Week (Hours)Plant Doors Windows

1 1 0 4

2 0 2 12

3 3 2 18

4 2 4 28

Unit Profit $300 $500

Page 59: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.59McGraw-Hill/Irwin

Graphical Solution with Plant 3 or Plant 4

0 2 4

2

4

6

8

0 2 4

2

4

6

8

(a) Choose Plant 3 (b) Choose Plant 4

(2, 6) gives P = 3,600

(4, 5) gives P = 3,700

Feasible region

Feasible region

WW

D D

Page 60: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.60McGraw-Hill/Irwin

Algebraic Formulation

Let D = Number of doors to produce,

W = Number of windows to produce,

y = 1 if plant 4 is used; 0 if plant 3 is used

Maximize P = 300D + 500W

subject to

Plant 1: D ≤ 4

Plant 2: 2W ≤ 12

Plant 3: 3D + 2W ≤ 18 + 99y

Plant 4: 2D + 4W ≤ 28 + 99(1 – y)

and

D ≥ 0, W ≥ 0, y1 and y2 are binary.

Page 61: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.61McGraw-Hill/Irwin

Spreadsheet Model

3456789

10111213141516

B C D E F G HDoors Windows

Unit Profit $300 $500Modified

Hours Hours HoursUsed Available Available

Plant 1 1 0 4 <= 4 4Plant 2 0 2 10 <= 12 12Plant 3 3 2 22 <= 117 18Plant 4 2 4 28 <= 28 28

Doors WindowsUnits Produced 4 5 Total Profit $3,700

Which Plant to Use? (0=Plant 3, 1=Plant 4) 1

Hours Used Per Unit Produced

Page 62: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.62McGraw-Hill/Irwin

Good Products Company Production Planning

• The Research and Development Division of the Good Products Company has developed three possible new products.

• To avoid undue diversification of the company’s product line, management has imposed the following restriction:

– From the three possible new products, at most two should be chosen to be produced.

• Each of these products can be produced in either of two plants. For administrative reasons, management has imposed the following restriction:

– Just one of the two plants should be chosen to be the sole producer of the two new products.

Page 63: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.63McGraw-Hill/Irwin

Data for the Good Products Company

Production Time Used for EachUnit Produced (Hours)

Production TimeAvailable perWeek (Hours)Plant Product 1 Product 2 Product 3

1 3 4 2 30

2 4 6 2 40

Unit Profit 5 7 3 ($thousands)

Sales potential 7 5 9 (units per week)

Page 64: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.64McGraw-Hill/Irwin

Algebraic Formulation

Let xi = Number of units of product i to produce per week (i = 1, 2, 3),yi = 1 if product i is produced; 0 otherwise (i = 1, 2, 3),y4 = 1 if plant 2 is used; 0 if plant 1 is used

Maximize Profit = 5x1 + 7x2 + 3x3 ($thousands)subject to

Auxiliary variables must =1 if produce any & Max Sales:Product 1: x1 ≤ 7y1

Product 2: x2 ≤ 5y2

Product 3: x3 ≤ 9y3

Either plant 1 (y4 = 0) or plant 2 (y4 = 1):Plant 1: 3x1 + 4x2 + 2x3 + 99y4 ≤ 30Plant 2: 4x1 + 6x2 + 2x3 + 99(1 – y4) ≤ 40

andxi ≥ 0 (i = 1, 2, 3), yi are binary (i = 1, 2, 3, 4).

Page 65: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.65McGraw-Hill/Irwin

Spreadsheet Model

3456789

101112131415161718192021

B C D E F G H IProduct 1 Product 2 Product 3

Unit Profit ($thousands) 5 7 3Modified

Hours Hours HoursHours Used Per Unit Produced Used Available Available

Plant 1 3 4 2 34.5 <= 129 30Plant 2 4 6 2 40 <= 40 40

Product 1 Product 2 Product 3Units Produced 5.5 0 9

<= <= <=Only If Produce 7 0 9Maximum Sales 7 5 9 Total Maximum

Produced To ProduceProduce? 1 0 1 2 <= 2

Total Profit($thousands)

Which Plant to Use? (0=Plant 1, 1=Plant 2) 1 54.5

Page 66: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.66McGraw-Hill/Irwin

Supersuds Corporation Marketing Plan

• The Supersuds Corporation is developing its marketing plan for next year’s new products.

• For three of these products, the decision has been made to purchase a total of five TV spots for commercials on national television networks.

• Each spot will feature a single product.

Question: How should the five spots be allocated to these three products?

Page 67: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.67McGraw-Hill/Irwin

Data for the Supersuds Corp. Problem

Profit (Millions)

Number of TV Spots Product 1 Product 2 Product 3

0 $0 $0 $0

1 1 0 –1

2 3 2 2

3 3 3 4

Page 68: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.68McGraw-Hill/Irwin

Algebraic Formulation

Let yij = 1 if there are j TV spots for product i; 0 otherwise (i = 1, 2, 3; j = 1, 2, 3)

Maximize Profit = y11 + 3y12 + 3y13 + 2y22 + 3y23 – y31 + 2y32 + 4y33 ($millions)

subject to

Mutually Exclusive:

Product 1: y11 + y12 + y13 ≤ 1

Product 2: y21 + y22 + y23 ≤ 1

Product 3: y31 + y32 + y33 ≤ 1

Total available spots: y11 + 2y12 + 3y13 + y21 + 2y22 + 3y23 + y31 + 2y32 + 3y33 ≤ 5

and

yij are binary (i = 1, 2, 3; j = 1, 2, 3).

Page 69: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.69McGraw-Hill/Irwin

Spreadsheet Model

3456789

101112131415161718

B C D E F G H IProfit

($millions) Product 1 Product 2 Product 3Number 1 1 0 -1

of 2 3 2 2Spots 3 3 3 4

Solution Product 1 Product 2 Product 3 TotalNumber 1 0 0 0 Profit

of 2 1 0 0 ($millions)Spots 3 0 0 1 7

Total 1 0 1<= <= <=

Max Of One 1 1 1 Total RequiredSpots Spots

Number of Spots 2 0 3 5 = 5

Page 70: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.70McGraw-Hill/Irwin

Southwestern Airways Crew Scheduling

• Southwestern Airways needs to assign crews to cover all its upcoming flights.

• We will focus on assigning 3 crews based in San Francisco (SFO) to 11 flights.

Question: How should the 3 crews be assigned 3 sequences of flights so that every one of the 11 flights is covered?

Page 71: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.71McGraw-Hill/Irwin

Southwestern Airways Flights

Seat tl e (SEA)

San Francisco (SFO)

Los Angel es (LAX)

Denver (DEN)

Chicago ORD)

Page 72: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.72McGraw-Hill/Irwin

Data for the Southwestern Airways Problem

Feasible Sequence of Flights

Flights 1 2 3 4 5 6 7 8 9 10 11 12

1. SFO–LAX 1 1 1 1

2. SFO–DEN 1 1 1 1

3. SFO–SEA 1 1 1 1

4. LAX–ORD 2 2 3 2 3

5. LAX–SFO 2 3 5 5

6. ORD–DEN 3 3 4

7. ORD–SEA 3 3 3 3 4

8. DEN–SFO 2 4 4 5

9. DEN–ORD 2 2 2

10. SEA–SFO 2 4 4 5

11. SEA–LAX 2 2 4 4 2

Cost, $1,000s 2 3 4 6 7 5 7 8 9 9 8 9

Page 73: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.73McGraw-Hill/Irwin

Algebraic Formulation

Let xj = 1 if flight sequence j is assigned to a crew; 0 otherwise. (j = 1, 2, … , 12).

Minimize Cost = 2x1 + 3x2 + 4x3 + 6x4 + 7x5 + 5x6 + 7x7 + 8x8 + 9x9 + 9x10 + 8x11 + 9x12

(in $thousands)

subject to

Flight 1 covered: x1 + x4 + x7 + x10 ≥ 1

Flight 2 covered: x2 + x5 + x8 + x11 ≥ 1

: :

Flight 11 covered: x6 + x9 + x10 + x11 + x12 ≥ 1

Three Crews: x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 + x12 ≤ 3

and

xj are binary (j = 1, 2, … , 12).

Page 74: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.74McGraw-Hill/Irwin

Spreadsheet Model

3456789

101112131415161718192021222324

B C D E F G H I J K L M N O P QFlight Sequence

1 2 3 4 5 6 7 8 9 10 11 12Cost ($thousands) 2 3 4 6 7 5 7 8 9 9 8 9 At

LeastIncludes Segment? Total One

SFO-LAX 1 0 0 1 0 0 1 0 0 1 0 0 1 >= 1SFO-DEN 0 1 0 0 1 0 0 1 0 0 1 0 1 >= 1SFO-SEA 0 0 1 0 0 1 0 0 1 0 0 1 1 >= 1LAX-ORD 0 0 0 1 0 0 1 0 1 1 0 1 1 >= 1LAX-SFO 1 0 0 0 0 1 0 0 0 1 1 0 1 >= 1ORD-DEN 0 0 0 1 1 0 0 0 1 0 0 0 1 >= 1ORD-SEA 0 0 0 0 0 0 1 1 0 1 1 1 1 >= 1DEN-SFO 0 1 0 1 1 0 0 0 1 0 0 0 1 >= 1DEN-ORD 0 0 0 0 1 0 0 1 0 0 1 0 1 >= 1SEA-SFO 0 0 1 0 0 0 1 1 0 0 0 1 1 >= 1SEA-LAX 0 0 0 0 0 1 0 0 1 1 1 1 1 >= 1

Total Number1 2 3 4 5 6 7 8 9 10 11 12 Sequences of Crews

Fly Sequence? 0 0 1 1 0 0 0 0 0 0 1 0 3 <= 3

Total Cost ($thousands) 18

Page 75: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.75McGraw-Hill/Irwin

Integer Programming

• When are “non-integer” solutions okay?– Solution is naturally divisible

• e.g., $, pounds, hours

– Solution represents a rate

• e.g., units per week

– Solution only for planning purposes

• When is rounding okay?– When numbers are large

• e.g., rounding 114.286 to 114 is probably okay.

• When is rounding not okay?– When numbers are small

• e.g., rounding 2.6 to 2 or 3 may be a problem.

– Binary variables

• yes-or-no decisions

Page 76: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.76McGraw-Hill/Irwin

The Challenges of Rounding

• Rounded Solution may not be feasible.

• Rounded solution may not be close to optimal.

• There can be many rounded solutions.

– Example: Consider a problem with 30 variables that are non-integer in the LP-solution. How many possible rounded solutions are there?

1 2 3 4 5

1

2

3

4

5

x1

x2

Page 77: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.77McGraw-Hill/Irwin

How Integer Programs are Solved

1 2 3 4 5

1

2

3

4

5

x1

x2

Page 78: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.78McGraw-Hill/Irwin

How Integer Programs are Solved

1 2 3 4 5

1

2

3

4

5

x1

x2

Page 79: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.79McGraw-Hill/Irwin

Applications of Binary Variables

• Making “yes-or-no” type decisions– Build a factory?

– Manufacture a product?

– Do a project?

– Assign a person to a task?

• Set-covering problems– Make a set of assignments that “cover” a set of requirements.

• Fixed costs– If a product is produced, must incur a fixed setup cost.

– If a warehouse is operated, must incur a fixed cost.

Page 80: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.80McGraw-Hill/Irwin

Example #1 (Capital Budgeting)

• Norwood Development is considering the potential of four different development projects.

• Each project would be completed in at most three years.

• The required cash outflow for each project is given in the table below, along with the net present value of each project to Norwood, and the cash that is available each year.

Cash Outflow Required ($million)

CashAvailable($million)Project 1 Project 2 Project 3 Project 4

Year 1 9 7 6 11 28

Year 2 6 4 3 0 13

Year 3 6 0 4 0 10

NPV 30 16 22 14

Question: Which projects should be undertaken?

Page 81: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.81McGraw-Hill/Irwin

Algebraic Formulation

Let yi = 1 if project i is undertaken; 0 otherwise (i = 1, 2, 3, 4).

Maximize NPV = 30y1 + 16y2 + 22y3 + 14y4

subject to

Year 1: 9y1 + 7y2 + 6y3 + 11y4 ≤ 28 ($million)

Year 2 (cumulative): 15y1 + 11y2 + 9y3 + 11y4 ≤ 41 ($million)

Year 3 (cumulative): 21y1 + 11y2 + 13y3 + 11y4 ≤ 51 ($million)

and

yi are binary (i = 1, 2, 3, 4).

Page 82: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.82McGraw-Hill/Irwin

Spreadsheet Solution

12345678910111213

A B C D E F G H I

Norwood Development Capital Budgeting

Project 1 Project 2 Project 3 Project 4NPV ($million) 30 16 22 14

Cumulative CumulativeOutflow Available

Year 1 9 7 6 11 22 <= 28Year 2 15 11 9 11 35 <= 41Year 3 21 11 13 11 45 <= 51

Total NPVProject 1 Project 2 Project 3 Project 4 ($million)

Undertake? 1 1 1 0 68

Cumulative Outflow Required ($million)

Page 83: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.83McGraw-Hill/Irwin

Additional Considerations(Logic and Dependency Constraints)

• At least one of projects 1, 2, or 3

• Project 2 can’t be done unless project 3 is done

• Either project 3 or project 4, but not both

• No more than two projects total

Question: What constraints would need to be added for each of these additional considerations?

Page 84: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.84McGraw-Hill/Irwin

Example #2 (Set Covering Problem)

• The Washington State legislature is trying to decide on locations at which to base search-and-rescue teams.

• The teams are expensive, so they would like as few as possible.

• Response time is critical, so they would like every county to either have a team located in that county or in an adjacent county.

Question: Where should search-and-rescue teams be located?

Page 85: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.85McGraw-Hill/Irwin

The Counties of Washington State

1

2

3

4

7

6

9

10

11

12

8

5

13

14

15

16

17

18

19

20

2122

2325

24

26 27 28

29 30

31 32

33

3435

36

37

1. Clallum2. J efferson3. Grays Harbor4. Pacific5. Wahkiakum6. Kitsap7. Mason8. Thurston9. Whatcom10. Skagit11. Snohomish12. King13. Pierce14. Lewis15. Cowlitz16. Clark17. Skamania18. Okanogan

19. Chelan20. Douglas21. Kittitas22. Grant23. Yakima24. Klickitat25. Benton26. Ferry27. Stevens28. Pend Oreille29. Lincoln30. Spokane31. Adams32. Whitman33. Franklin34. Walla Walla35. Columbia36. Garfield37. Asotin

Counties

Page 86: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.86McGraw-Hill/Irwin

Algebraic Formulation

Let yi = 1 if a team is located in county i; 0 otherwise (i = 1, 2, … , 37).

Minimize Number of Teams = y1 + y2 + … + y37

subject to

County 1 covered: y1 + y2 ≥ 1

County 2 covered: y1 + y2 + y3 + y6 + y7 ≥ 1

County 3 covered: y2 + y3 + y4 + y7 + y8 + y14 ≥ 1

:

County 37 covered: y32 + y36 + y37 ≥ 1

and

yi are binary (i = 1, 2, … , 37).

Page 87: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.87McGraw-Hill/Irwin

Spreadsheet Solution

123456789101112131415161718192021222324

A B C D E F G H I J K L M N

Search & Rescue Location

# Teams # TeamsCounty Team? Nearby County Team? Nearby

1 Clallam 0 1 >= 1 19 Chelan 0 2 >= 12 Jefferson 1 1 >= 1 20 Douglas 0 1 >= 13 Grays Harbor 0 2 >= 1 21 Kittitas 1 1 >= 14 Pacific 0 1 >= 1 22 Grant 0 1 >= 15 Wahkiakum 0 1 >= 1 23 Yakima 0 3 >= 16 Kitsap 0 1 >= 1 24 Klickitat 0 1 >= 17 Mason 0 1 >= 1 25 Benton 0 1 >= 18 Thurston 0 1 >= 1 26 Ferry 0 1 >= 19 Whatcom 0 1 >= 1 27 Stevens 1 1 >= 110 Skagit 1 1 >= 1 28 Pend Oreille 0 1 >= 111 Snohomish 0 1 >= 1 29 Lincoln 0 1 >= 112 King 0 1 >= 1 30 Spokane 0 1 >= 113 Pierce 0 2 >= 1 31 Adams 0 1 >= 114 Lewis 1 2 >= 1 32 Whitman 0 2 >= 115 Cowlitz 0 2 >= 1 33 Franklin 1 1 >= 116 Clark 0 1 >= 1 34 Walla Walla 0 1 >= 117 Skamania 1 2 >= 1 35 Columbia 0 1 >= 118 Okanogan 0 1 >= 1 36 Garfield 1 1 >= 1

37 Asotin 0 1 >= 1Total Teams: 8

Page 88: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.88McGraw-Hill/Irwin

Example #3 (Fixed Costs)

• Woodridge Pewter Company is a manufacturer of three pewter products: platters, bowls, and pitchers.

• The manufacture of each product requires Woodridge to have the appropriate machinery and molds available. The machinery and molds for each product can be rented at the following rates: for the platters, $400/week; for the bowls, $250/week; for the pitcher, $300/week.

• Each product requires the amounts of labor and pewter given in the table below. The sales price and variable cost are also given in the table.

LaborHours

Pewter(pounds)

SalesPrice

VariableCost

Platter 3 5 $100 $60

Bowl 1 4 85 50

Pitcher 4 3 75 40

Available 130 240

Question: Which products should be produced, and in what quantity?

Page 89: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.89McGraw-Hill/Irwin

Algebraic Formulation

Let x1 = Number of platters produced,x2 = Number of bowls produced,x3 = Number of pitchers produced,yi = 1 if lease machine and mold for product i; 0 otherwise (i = 1, 2, 3).

Maximize Profit = ($100–$60)x1 + ($85–$50)x2 + ($75–$40)x3 – $400y1 – $250y2 – $300y3

subject toLabor: 3x1 + x2 + 4x3 ≤ 130 hoursPewter: 5x1 + 4x2 + 3x3 ≤ 240 poundsAllow production only if machines and molds are purchased:

x1 ≤ 99y1

x2 ≤ 99y2

x3 ≤ 99y3

andxi ≥ 0, and yi are binary (i = 1, 2, 3).

Page 90: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.90McGraw-Hill/Irwin

Spreadsheet Solution

12345678910111213141516

A B C D E F G H

Woodridge Pewter Company

Platters Bowls PitchersSales Price $100 $85 $75

Variable Cost $60 $50 $40Fixed Cost $400 $250 $300

Constraint Usage (per unit produced) Total AvailableLabor (hrs.) 3 1 4 60 <= 130

Pewter (lbs.) 5 4 3 240 <= 240

Lease Equipment? 0 1 0Revenue $5,100

Production Quantity 0 60 0 Variable Cost $3,000<= <= <= Fixed Cost $250

Produce only if Lease 0 99 0 Profit $1,850

Page 91: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.91McGraw-Hill/Irwin

Applications of Binary Variables

• Making “yes-or-no” type decisions– Build a factory?

– Manufacture a product?

– Do a project?

– Assign a person to a task?

• Fixed costs– If a product is produced, must incur a fixed setup cost.

– If a warehouse is operated, must incur a fixed cost.

• Either-or constraints– Production must either be 0 or ≥ 100.

• Subset of constraints– meet 3 out of 4 constraints.

Page 92: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.92McGraw-Hill/Irwin

Quality Furniture (Either-Or Constraints)

• Reconsider the Quality Furniture Problem:– The Quality Furniture Corporation produces benches and picnic tables. The firm

has a limited supply of two resources: labor and wood. 1,600 labor hours are available during the next production period. The firm also has a stock of 9,000 pounds of wood available. Each bench requires 3 labor hours and 12 pounds of wood. Each table requires 6 labor hours and 38 pounds of wood. The profit margin on each bench is $8 and on each table is $18.

• Now suppose that they would not produce any fewer than 200 units of either product (i.e., either produce 0 or at least 200).

Question: What product mix will maximize their total profit?

Page 93: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.93McGraw-Hill/Irwin

Spreadsheet Solution

12345678910111213141516171819

A B C D E F G

Quality Furniture (with either-or constraints)

Benches TablesProfit $8.00 $18.00

Min Production (if any) 200 200

Resources ResourcesUsed Available

Labor 3 6 1600 <= 1,600Wood 12 38 6400 <= 9,000

Produce? 1 0

Min Production 200 0<= <= Total Profit

Production Quantities 533.33 0 $4,266.67<= <=

Max Production 533 0Max Possible 533 237

Use of Resources

Page 94: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.94McGraw-Hill/Irwin

Meeting a Subset of Constraints

• Consider a linear programming model with the following constraints, and suppose that meeting 3 out of 4 of these is good enough

– 12x1 + 24x2 + 18x3 ≥ 2,400

– 15x1 + 32x2 + 12x3 ≥ 1,800

– 20x1 + 15x2 + 20x3 ≤ 2,000

– 18x1 + 21x2 + 15x3 ≤ 1,600

Page 95: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.95McGraw-Hill/Irwin

Meeting a Subset of Constraints

Let yi = 1 if constraint i is enforced; 0 otherwise.

Constraints:

y1 + y2 + y3 + y4 ≥ 3

12x1 + 24x2 + 18x3 ≥ 2,400y1

15x1 + 32x2 + 12x3 ≥ 1,800y2

20x1 + 15x2 + 20x3 ≤ 2,000 + M (1 – y3)

18x1 + 21x2 + 15x3 ≤ 1,600 + M (1 – y4)

where M is a large number.

Page 96: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.96McGraw-Hill/Irwin

Facility Location

• Consider a company that operates 5 plants and 3 warehouses that serve customers in 4 different regions.

• To lower costs, they are considering streamlining by closing one or more plants and warehouses.

• Associated with each plant are fixed costs, shipping costs, and production costs. Each plant has a limited capacity.

• Associated with each warehouse are fixed costs and shipping costs. Each warehouse has a limited capacity.

Questions:Which plants should they keep open?

Which warehouses should they keep open?

How should they divide production among the open plants?

How much should be shipped from each plant to each warehouse, and from each warehouse to each customer?

Page 97: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.97McGraw-Hill/Irwin

Data for Facility Location Problem

FixedCost

(per month)

(Shipping + Production) Cost(per unit)

Capacity(units per

month)WH #1 WH #2 WH #3

Plant 1 $42,000 $650 $750 $850 400

Plant 2 50,000 500 350 550 300

Plant 3 45,000 450 450 350 300

Plant 4 50,000 400 500 600 350

Plant 5 47,000 550 450 350 375

Fixed Cost(per month)

Shipping Cost (per unit)

Capacity(per month)Cust. 1 Cust. 2 Cust. 3 Cust. 4

WH #1 $45,000 $25 $65 $70 $35 600

WH #2 25,000 50 25 40 60 400

WH #3 65,000 60 20 40 45 900

Demand: 250 225 200 275

Page 98: McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., 2003 9.1 Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.

© The McGraw-Hill Companies, Inc., 20039.98McGraw-Hill/Irwin

Spreadsheet Solution

123456789101112131415161718

192021222324252627282930313233

A B C D E F G H I J K L M

Plant to WarehouseShipping + Production FixedCost Warehouse 1 Warehouse 2 Warehouse 3 Cost Capacity

Plant 1 $650 $750 $850 $42,000 400Plant 2 $500 $350 $550 $50,000 300Plant 3 $450 $450 $350 $45,000 300Plant 4 $400 $500 $600 $50,000 350Plant 5 $550 $450 $350 $47,000 375

Shipment Total ActualQuantities Warehouse 1 Warehouse 2 Warehouse 3 Shipped Capacity Open? Total Costs

Plant 1 0 0 0 0 <= 0 0 Shipping Cost (P-->W) $332,500Plant 2 0 300 0 300 <= 300 1 Shipping Cost (W-->C) $37,375Plant 3 0 0 275 275 <= 300 1 Fixed Cost (P) $142,000Plant 4 0 0 0 0 <= 0 0 Fixed Cost (W) $90,000Plant 5 0 0 375 375 <= 375 1 Total Cost $601,875

Total Shipped 0 300 650

Warehouse to CustomerShipping FixedCost Customer 1 Customer 2 Customer 3 Customer 4 Cost Capacity

Warehouse 1 $25 $65 $70 $35 $45,000 600Warehouse 2 $50 $25 $40 $60 $25,000 400Warehouse 3 $60 $20 $40 $45 $65,000 900

Shipment Shipped Shipped ActualQuantities Customer 1 Customer 2 Customer 3 Customer 4 Out In Capacity Open?

Warehouse 1 0 0 0 0 0 <= 0 <= 0 0Warehouse 2 250 0 50 0 300 <= 300 <= 400 1Warehouse 3 0 225 150 275 650 <= 650 <= 900 1Total Shipped 250 225 200 275

>= >= >= >=Needed 250 225 200 275