65
Integer Programming Integer Programming BBA3274 / DBS1084 QUANTITATIVE METHODS for BUSINESS BBA3274 / DBS1084 QUANTITATIVE METHODS for BUSINESS by Stephen Ong Visiting Fellow, Birmingham City University Business School, UK Visiting Professor, Shenzhen University

Bba 3274 qm week 10 integer programming

Embed Size (px)

DESCRIPTION

Integer programming, goal programming

Citation preview

Page 1: Bba 3274 qm week 10 integer programming

Integer ProgrammingInteger ProgrammingInteger ProgrammingInteger Programming

BBA3274 / DBS1084 QUANTITATIVE METHODS for BUSINESSBBA3274 / DBS1084 QUANTITATIVE METHODS for BUSINESS

byStephen Ong

Visiting Fellow, Birmingham City University Business School, UK

Visiting Professor, Shenzhen University

Page 2: Bba 3274 qm week 10 integer programming

Today’s Overview Today’s Overview

Page 3: Bba 3274 qm week 10 integer programming

Learning ObjectivesLearning Objectives

1.1. Understand the difference between LP and Understand the difference between LP and integer programming.integer programming.

2.2. Understand and solve the three types of Understand and solve the three types of integer programming problems.integer programming problems.

3.3. Formulate and solve goal programming Formulate and solve goal programming problems using Excel and QM for problems using Excel and QM for Windows.Windows.

4.4. Formulate nonlinear programming Formulate nonlinear programming problems and solve using Excel.problems and solve using Excel.

After completing this lecture, students will be able to:After completing this lecture, students will be able to:

Page 4: Bba 3274 qm week 10 integer programming

OutlineOutline

10.110.1 IntroductionIntroduction

10.210.2 Integer ProgrammingInteger Programming

10.310.3 Modeling with 0-1 (Binary) Modeling with 0-1 (Binary) VariablesVariables

10.410.4 Goal ProgrammingGoal Programming

10.510.5 Nonlinear ProgrammingNonlinear Programming

Page 5: Bba 3274 qm week 10 integer programming

IntroductionIntroduction Not every problem faced by businesses can Not every problem faced by businesses can

easily fit into a neat linear programming easily fit into a neat linear programming context.context.

A large number of business problems can be A large number of business problems can be solved only if variables have integer values.solved only if variables have integer values.

Many business problems have multiple Many business problems have multiple objectives, and goal programming is an objectives, and goal programming is an extension to LP that can permit multiple extension to LP that can permit multiple objectivesobjectives

Linear programming requires linear models, Linear programming requires linear models, and nonlinear programming allows objectives and nonlinear programming allows objectives and constraints to be nonlinear.and constraints to be nonlinear.

Page 6: Bba 3274 qm week 10 integer programming

Integer ProgrammingInteger Programming An integer programming model is one where one An integer programming model is one where one

or more of the decision variables has to take on an or more of the decision variables has to take on an integer value in the final solution.integer value in the final solution.

There are three types of integer programming There are three types of integer programming problems:problems:

1.1. Pure integer programming where all variables Pure integer programming where all variables have integer values .have integer values .

2.2. Mixed-integer programming where some but Mixed-integer programming where some but not all of the variables will have integer values.not all of the variables will have integer values.

3.3. Zero-one integer programming are special Zero-one integer programming are special cases in which all the decision variables must cases in which all the decision variables must have integer solution values of 0 or 1.have integer solution values of 0 or 1.

Page 7: Bba 3274 qm week 10 integer programming

Harrison Electric Company Harrison Electric Company Example of Integer ProgrammingExample of Integer Programming

The Company produces two products popular The Company produces two products popular with home renovators, old-fashioned with home renovators, old-fashioned chandeliers and ceiling fans.chandeliers and ceiling fans.

Both the chandeliers and fans require a two-Both the chandeliers and fans require a two-step production process involving wiring and step production process involving wiring and assembly.assembly.

It takes about 2 hours to wire each chandelier It takes about 2 hours to wire each chandelier and 3 hours to wire a ceiling fan.and 3 hours to wire a ceiling fan.

Final assembly of the chandeliers and fans Final assembly of the chandeliers and fans requires 6 and 5 hours, respectively.requires 6 and 5 hours, respectively.

The production capability is such that only 12 The production capability is such that only 12 hours of wiring time and 30 hours of assembly hours of wiring time and 30 hours of assembly time are available.time are available.

Page 8: Bba 3274 qm week 10 integer programming

Harrison Electric Company Harrison Electric Company Example of Integer ProgrammingExample of Integer Programming Each chandelier produced nets the firm $7 and Each chandelier produced nets the firm $7 and

each fan $6.each fan $6. Harrison’s production mix decision can be Harrison’s production mix decision can be

formulated using LP as follows:formulated using LP as follows:

Maximize profit =Maximize profit =$7$7XX11 + $6+ $6XX22

subject to subject to 22XX11+ 3+ 3XX22 ≤ 12≤ 12 (wiring hours)(wiring hours)66XX11+ 5+ 5XX22 ≤ 30≤ 30 (assembly hours)(assembly hours)

XX11, , XX22 ≥ 0≥ 0 (nonnegativity)(nonnegativity)wherewhere

XX11 = number of chandeliers produced = number of chandeliers produced XX22 = number of ceiling fans produced = number of ceiling fans produced

Page 9: Bba 3274 qm week 10 integer programming

Harrison Electric ProblemHarrison Electric Problem

Figure 10.1

Page 10: Bba 3274 qm week 10 integer programming

Harrison Electric CompanyHarrison Electric Company The production planner recognizes this The production planner recognizes this

is an integer problem.is an integer problem. His first attempt at solving it is to round His first attempt at solving it is to round

the values to the values to XX11 = 4 and = 4 and XX22 = 2. = 2. However, this is not feasible.However, this is not feasible. Rounding Rounding XX22 down to 1 gives a feasible down to 1 gives a feasible

solution, but it may not be solution, but it may not be optimal.optimal. This could be solved using the This could be solved using the

enumerationenumeration method, but enumeration is method, but enumeration is generally not possible for large generally not possible for large problems.problems.

Page 11: Bba 3274 qm week 10 integer programming

Integer Solutions to the Harrison Integer Solutions to the Harrison Electric Company ProblemElectric Company Problem

CHANDELIERS (CHANDELIERS (XX11)) CEILING FANS (CEILING FANS (XX22)) PROFIT ($7PROFIT ($7XX11 + $6 + $6XX22))

00 00 $0$0

11 00 77

22 00 1414

33 00 2121

44 00 2828

55 00 3535

00 11 66

11 11 1313

22 11 2020

33 11 2727

44 11 3434

00 22 1212

11 22 1919

22 22 2626

33 22 3333

00 33 1818

11 33 2525

00 44 2424

Optimal Optimal solution to solution to integer integer programming programming problemproblem

Solution if Solution if rounding is rounding is usedused

Table 10.1

Page 12: Bba 3274 qm week 10 integer programming

Harrison Electric CompanyHarrison Electric Company The rounding solution of The rounding solution of XX11 = 4, = 4, XX22 = =

1 gives a profit of $34.1 gives a profit of $34. The optimal solution of The optimal solution of XX11 = 5, = 5, XX22 = 0 = 0

gives a profit of $35.gives a profit of $35. The optimal integer solution is less The optimal integer solution is less

than the optimal LP solution.than the optimal LP solution. An integer solution can An integer solution can nevernever be be

better than the LP solution and is better than the LP solution and is usuallyusually a lesser solution. a lesser solution.

Page 13: Bba 3274 qm week 10 integer programming

Using Software to Solve the Harrison Using Software to Solve the Harrison Integer Programming ProblemInteger Programming Problem

QM for Windows Input Screen for Harrison Electric ProblemQM for Windows Input Screen for Harrison Electric Problem

Program 10.1A

Page 14: Bba 3274 qm week 10 integer programming

Using Software to Solve the Harrison Using Software to Solve the Harrison Integer Programming ProblemInteger Programming Problem

QM for Windows Solution Screen for Harrison QM for Windows Solution Screen for Harrison Electric ProblemElectric Problem

Program 10.1B

Page 15: Bba 3274 qm week 10 integer programming

Using Software to Solve the Harrison Integer Using Software to Solve the Harrison Integer Programming ProblemProgramming Problem

Excel 2010 Solver Solution for Harrison Electric ProblemExcel 2010 Solver Solution for Harrison Electric Problem

Program 10.2

Page 16: Bba 3274 qm week 10 integer programming

Mixed-Integer Programming Mixed-Integer Programming Problem ExampleProblem Example

There are many situations in which some of the There are many situations in which some of the variables are restricted to be integers and variables are restricted to be integers and some are not.some are not.

Bagwell Chemical Company produces two Bagwell Chemical Company produces two industrial chemicals.industrial chemicals.

Xyline must be produced in 50-pound bags.Xyline must be produced in 50-pound bags. Hexall is sold by the pound and can be Hexall is sold by the pound and can be

produced in any quantity.produced in any quantity. Both xyline and hexall are composed of three Both xyline and hexall are composed of three

ingredients ingredients –– AA, , BB, and , and C.C. Bagwell sells xyline for $85 a bag and hexall for Bagwell sells xyline for $85 a bag and hexall for

$1.50 per pound.$1.50 per pound.

Page 17: Bba 3274 qm week 10 integer programming

Mixed-Integer Programming Mixed-Integer Programming Problem ExampleProblem Example

Bagwell wants to maximize profit.Bagwell wants to maximize profit. Let Let XX = number of 50-pound bags of xyline. = number of 50-pound bags of xyline. Let Let YY = number of pounds of hexall. = number of pounds of hexall. This is a mixed-integer programming problem as This is a mixed-integer programming problem as

YY is not required to be an integer. is not required to be an integer.

AMOUNT PER 50-AMOUNT PER 50-POUND BAG OF POUND BAG OF

XYLINE (LB)XYLINE (LB)

AMOUNT PER AMOUNT PER POUND OF HEXALL POUND OF HEXALL

(LB)(LB)

AMOUNT OF AMOUNT OF INGREDIENTS INGREDIENTS

AVAILABLEAVAILABLE

3030 0.50.5 2,000 lb–ingredient 2,000 lb–ingredient AA

1818 0.40.4 800 lb–ingredient 800 lb–ingredient BB

22 0.10.1 200 lb–ingredient 200 lb–ingredient CC

Page 18: Bba 3274 qm week 10 integer programming

Mixed-Integer Programming Mixed-Integer Programming Problem ExampleProblem Example

The model is:The model is:

Maximize profit = Maximize profit = $85$85XX + $1.50+ $1.50YY

subject tosubject to 3030XX + 0.5+ 0.5YY ≤≤ 2,0002,000

1818XX + 0.4+ 0.4YY ≤≤ 800800

22XX + 0.1+ 0.1YY ≤≤ 200200

X, YX, Y ≥≥ 0 and 0 and XX integer integer

Page 19: Bba 3274 qm week 10 integer programming

Mixed-Integer Programming Mixed-Integer Programming Problem ExampleProblem Example

QM for Windows Solution for Bagwell Chemical QM for Windows Solution for Bagwell Chemical ProblemProblem

Program 10.3

Page 20: Bba 3274 qm week 10 integer programming

Mixed-Integer Programming Mixed-Integer Programming Problem ExampleProblem Example

Excel 2010 Solver Solution for Bagwell Chemical ProblemExcel 2010 Solver Solution for Bagwell Chemical Problem

Program 10.4

Page 21: Bba 3274 qm week 10 integer programming

Modeling With 0-1 (Binary) Modeling With 0-1 (Binary) VariablesVariables

We can demonstrate how 0-1 We can demonstrate how 0-1 variables can be used to model variables can be used to model several diverse situations.several diverse situations.

Typically a 0-1 variable is assigned Typically a 0-1 variable is assigned a value of 0 if a certain condition is a value of 0 if a certain condition is not met and a 1 if the condition is not met and a 1 if the condition is met.met.

This is also called a This is also called a binary binary variable.variable.

Page 22: Bba 3274 qm week 10 integer programming

Capital Budgeting ExampleCapital Budgeting Example A common capital budgeting problem is selecting A common capital budgeting problem is selecting

from a set of possible projects when budget from a set of possible projects when budget limitations make it impossible to select them all.limitations make it impossible to select them all.

A 0-1 variable is defined for each project.A 0-1 variable is defined for each project. Quemo Chemical Company is considering three Quemo Chemical Company is considering three

possible improvement projects for its plant:possible improvement projects for its plant: A new catalytic converter.A new catalytic converter. A new software program for controlling operations.A new software program for controlling operations. Expanding the storage warehouse.Expanding the storage warehouse.

It can not do them allIt can not do them all It wants to maximize net present value of projects It wants to maximize net present value of projects

undertaken.undertaken.

Page 23: Bba 3274 qm week 10 integer programming

Quemo Chemical Capital Quemo Chemical Capital BudgetingBudgeting

The basic model is:The basic model is:

Quemo Chemical Company informationQuemo Chemical Company informationPROJECTPROJECT NET PRESENT VALUENET PRESENT VALUE YEAR 1YEAR 1 YEAR 2YEAR 2

Catalytic ConverterCatalytic Converter $25,000$25,000 $8,000$8,000 $7,000$7,000

SoftwareSoftware $18,000$18,000 $6,000$6,000 $4,000$4,000

Warehouse Warehouse expansionexpansion $32,000$32,000 $12,000$12,000 $8,000$8,000

Available fundsAvailable funds $20,000$20,000 $16,000$16,000Table 10.2

Maximize net present value of projects Maximize net present value of projects undertaken subject toundertaken subject to

Total funds used in year 1 ≤ Total funds used in year 1 ≤ $20,000$20,000Total funds used in year 2 ≤ Total funds used in year 2 ≤ $16,000$16,000

Page 24: Bba 3274 qm week 10 integer programming

Quemo Chemical Capital Quemo Chemical Capital BudgetingBudgeting

The mathematical statement of the integer The mathematical statement of the integer programming problem becomes:programming problem becomes:

Maximize NPV =Maximize NPV =25,00025,000XX11+ 18,000+ 18,000XX22 + + 32,00032,000XX33

subject tosubject to8,0008,000XX11+ 6,000+ 6,000XX22+ 12,000+ 12,000XX33 ≤ ≤ 20,00020,000

7,0007,000XX11+ 4,000+ 4,000XX22+ 8,000+ 8,000XX33 ≤≤ 16,00016,000

XX11, , XX22, , XX33 == 0 or 1 0 or 1

The decision variables The decision variables are:are: XX11 = =

1 if catalytic converter project is funded1 if catalytic converter project is funded0 otherwise0 otherwise

XX22 = =1 if software project is funded1 if software project is funded0 otherwise0 otherwise

XX33 = =1 if warehouse expansion project is funded1 if warehouse expansion project is funded0 otherwise0 otherwise

Page 25: Bba 3274 qm week 10 integer programming

Quemo Chemical Capital Quemo Chemical Capital BudgetingBudgeting

Excel 2010 Solver Solution for Quemo Chemical Excel 2010 Solver Solution for Quemo Chemical ProblemProblem

Program 10.5

Page 26: Bba 3274 qm week 10 integer programming

Quemo Chemical Budgeting Quemo Chemical Budgeting CapitalCapital

This is solved with computer This is solved with computer software, and the optimal solution is software, and the optimal solution is XX11 = 1, = 1, XX22 = 0, and = 0, and XX33 = 1 with an = 1 with an objective function value of 57,000.objective function value of 57,000.

This means that Quemo Chemical This means that Quemo Chemical should fund the catalytic converter should fund the catalytic converter and warehouse expansion projects and warehouse expansion projects only.only.

The net present value of these The net present value of these investments will be $57,000.investments will be $57,000.

Page 27: Bba 3274 qm week 10 integer programming

Limiting the Number of Limiting the Number of Alternatives SelectedAlternatives Selected

One common use of 0-1 variables involves One common use of 0-1 variables involves limiting the number of projects or items limiting the number of projects or items that are selected from a group.that are selected from a group.

Suppose Quemo Chemical is required to Suppose Quemo Chemical is required to select no more than two of the three select no more than two of the three projects projects regardlessregardless of the funds available. of the funds available.

This would require adding a constraint:This would require adding a constraint:

XX11 + + XX22 + + XX33 ≤ 2≤ 2 If they had to fund If they had to fund exactlyexactly two projects the two projects the

constraint would be:constraint would be:

XX11 + + XX22 + + XX33 = 2= 2

Page 28: Bba 3274 qm week 10 integer programming

Dependent SelectionsDependent Selections At times the selection of one project depends At times the selection of one project depends

on the selection of another project.on the selection of another project. Suppose Quemo’s catalytic converter could Suppose Quemo’s catalytic converter could

only be purchased if the software was only be purchased if the software was purchased.purchased.

The following constraint would force this to The following constraint would force this to occur:occur:

XX11 ≤ ≤ XX22 or or XX11 – – XX22 ≤ 0 ≤ 0 If we wished for the catalytic converter and If we wished for the catalytic converter and

software projects to either both be selected or software projects to either both be selected or both not be selected, the constraint would be:both not be selected, the constraint would be:

XX11 = = XX22 or or XX11 – – XX22 = 0 = 0

Page 29: Bba 3274 qm week 10 integer programming

Fixed-Charge Problem Fixed-Charge Problem ExampleExample

Often businesses are faced with decisions involving Often businesses are faced with decisions involving a fixed charge that will affect the cost of future a fixed charge that will affect the cost of future operations.operations.

Sitka Manufacturing is planning to build at least one Sitka Manufacturing is planning to build at least one new plant and three cities are being considered in:new plant and three cities are being considered in: Baytown, TexasBaytown, Texas Lake Charles, LouisianaLake Charles, Louisiana Mobile, AlabamaMobile, Alabama

Once the plant or plants are built, the company Once the plant or plants are built, the company wants to have capacity to produce at least 38,000 wants to have capacity to produce at least 38,000 units each year.units each year.

Page 30: Bba 3274 qm week 10 integer programming

Fixed-Charge ProblemFixed-Charge Problem

Fixed and variable costs for Sitka ManufacturingFixed and variable costs for Sitka Manufacturing

SITESITEANNUAL ANNUAL

FIXED COSTFIXED COSTVARIABLE VARIABLE

COST PER UNITCOST PER UNITANNUAL ANNUAL

CAPACITYCAPACITY

Baytown, TXBaytown, TX $340,000$340,000 $32$32 21,00021,000

Lake Charles, Lake Charles, LALA $270,000$270,000 $33$33 20,00020,000

Mobile, ALMobile, AL $290,000$290,000 $30$30 19,00019,000

Table 10.3

Page 31: Bba 3274 qm week 10 integer programming

Fixed-Charge ProblemFixed-Charge Problem

Define the decision variables as:Define the decision variables as:

XX11 = =1 if factory is built in Baytown1 if factory is built in Baytown0 otherwise0 otherwise

XX22 = =1 factory is built in Lake Charles1 factory is built in Lake Charles0 otherwise0 otherwise

XX33 = =1 if factory is built in Mobile1 if factory is built in Mobile0 otherwise0 otherwise

XX44 = = number of units produced at Baytown plantnumber of units produced at Baytown plant

XX55 = = number of units produced at Lake Charles plantnumber of units produced at Lake Charles plant

XX66 = = number of units produced at Mobile plantnumber of units produced at Mobile plant

Page 32: Bba 3274 qm week 10 integer programming

Fixed-Charge ProblemFixed-Charge Problem

The integer programming formulation becomesThe integer programming formulation becomes

Minimize cost =340,000Minimize cost =340,000XX11 + 270,000 + 270,000XX22 + + 290,000290,000XX33+ 32+ 32XX44 + 33 + 33XX55 + 30 + 30XX66

subject tosubject toXX44++ XX55+ + XX66≥≥ 38,00038,000 XX44 ≤≤21,00021,000XX11

XX55 ≤≤20,00020,000XX22

XX66 ≤≤19,00019,000XX33

XX11,, XX22, , XX33 = 0 or 1; = 0 or 1; XX44,, XX55, , XX66 ≥ 0 and integer≥ 0 and integerThe optimal solution isThe optimal solution is

XX11 = 0, = 0, XX22 = 1, = 1, XX3 3 = 1, = 1, XX44 = 0, = 0, XX55 = 19,000, = 19,000, XX66 = 19,000 = 19,000

Objective function value = $1,757,000Objective function value = $1,757,000

Page 33: Bba 3274 qm week 10 integer programming

Fixed-Charge ProblemFixed-Charge ProblemExcel 2010 Solver Solution for Sitka Excel 2010 Solver Solution for Sitka

Manufacturing ProblemManufacturing Problem

Program 10.6

Page 34: Bba 3274 qm week 10 integer programming

Financial Investment ExampleFinancial Investment Example Simkin, Simkin, and Steinberg specialize Simkin, Simkin, and Steinberg specialize

in recommending oil stock portfolios for in recommending oil stock portfolios for wealthy clients.wealthy clients.

One client has the following One client has the following specifications:specifications: At least two Texas firms must be in the At least two Texas firms must be in the

portfolio.portfolio. No more than one investment can be made in No more than one investment can be made in

a foreign oil company.a foreign oil company. One of the two California oil stocks must be One of the two California oil stocks must be

purchased.purchased. The client has $3 million to invest and The client has $3 million to invest and

wants to buy large blocks of shares.wants to buy large blocks of shares.

Page 35: Bba 3274 qm week 10 integer programming

Financial InvestmentFinancial InvestmentOil investment opportunitiesOil investment opportunities

STOCKSTOCKCOMPANY COMPANY NAMENAME

EXPECTED EXPECTED ANNUAL RETURN ANNUAL RETURN ($1,000s)($1,000s)

COST FOR BLOCK COST FOR BLOCK OF SHARES OF SHARES ($1,000s)($1,000s)

11 Trans-Texas OilTrans-Texas Oil 5050 480480

22 British British PetroleumPetroleum 8080 540540

33 Dutch ShellDutch Shell 9090 680680

44 Houston DrillingHouston Drilling 120120 1,0001,000

55 Texas PetroleumTexas Petroleum 110110 700700

66 San Diego OilSan Diego Oil 4040 510510

77 California PetroCalifornia Petro 7575 900900

Table 10.4

Page 36: Bba 3274 qm week 10 integer programming

Financial InvestmentFinancial InvestmentModel formulation:Model formulation:

Maximize return = 50Maximize return = 50XX11 + 80 + 80XX22 + + 9090XX33 + 120 + 120XX44 + 110 + 110XX55 + 40 + 40XX66 + 75 + 75XX77 subject to subject to

XX11 + + XX44 + + XX55 ≥≥ 22 (Texas constraint)(Texas constraint)

XX22+ + XX33 ≤≤ 11 ((foreign oil foreign oil constraint)constraint)

XX66 + + XX77 = = 11 (California (California constraint)constraint)

480480XX11 + 540 + 540XX22 + 680 + 680XX33 + 1,000 + 1,000XX44 + + 700700XX55

+ 510+ 510XX66 + 900 + 900XX77 ≤≤ 3,0003,000 ($3 million ($3 million limit)limit)

All variables must be 0 or 1All variables must be 0 or 1

Page 37: Bba 3274 qm week 10 integer programming

Financial InvestmentFinancial InvestmentExcel 2010 Solver Solution for Financial Investment Excel 2010 Solver Solution for Financial Investment

ProblemProblem

Program 10.7

Page 38: Bba 3274 qm week 10 integer programming

Goal ProgrammingGoal Programming Firms often have more than one goal.Firms often have more than one goal. In linear and integer programming In linear and integer programming

methods the objective function is methods the objective function is measured in one dimension only.measured in one dimension only.

It is not possible for LP to have It is not possible for LP to have multiple multiple goalsgoals unless they are all measured in the unless they are all measured in the same units, and this is a highly unusual same units, and this is a highly unusual situation.situation.

An important technique that has been An important technique that has been developed to supplement LP is called developed to supplement LP is called goal programming.goal programming.

Page 39: Bba 3274 qm week 10 integer programming

Goal ProgrammingGoal Programming Typically goals set by management can be Typically goals set by management can be

achieved only at the expense of other goals.achieved only at the expense of other goals. A hierarchy of importance needs to be A hierarchy of importance needs to be

established so that higher-priority goals are established so that higher-priority goals are satisfied before lower-priority goals are satisfied before lower-priority goals are addressed.addressed.

It is not always possible to satisfy every goal so It is not always possible to satisfy every goal so goal programming attempts to reach a goal programming attempts to reach a satisfactory level of multiple objectives.satisfactory level of multiple objectives.

The main difference is in the objective function The main difference is in the objective function where goal programming tries to minimize the where goal programming tries to minimize the deviationsdeviations between goals and what we can between goals and what we can actually achieve within the given constraints.actually achieve within the given constraints.

Page 40: Bba 3274 qm week 10 integer programming

Example of Goal Programming: Example of Goal Programming: Harrison Electric Company RevisitedHarrison Electric Company Revisited

The LP formulation for the Harrison Electric The LP formulation for the Harrison Electric problem is:problem is:

Maximize profit =Maximize profit =$7$7XX11 + $6+ $6XX22

subject to subject to 22XX11+ 3+ 3XX22 ≤ 12≤ 12 (wiring (wiring hours)hours)

66XX11+ 5+ 5XX22 ≤ 30≤ 30(assembly hours)(assembly hours)

XX11, , XX22 ≥ 0≥ 0wherewhere

XX11 = number of chandeliers = number of chandeliers produced produced

XX22 = number of ceiling fans = number of ceiling fans producedproduced

Page 41: Bba 3274 qm week 10 integer programming

Example of Goal Programming: Example of Goal Programming: Harrison Electric Company RevisitedHarrison Electric Company Revisited

Harrison is moving to a new location and feels Harrison is moving to a new location and feels that maximizing profit is not a realistic objective.that maximizing profit is not a realistic objective.

Management sets a profit level of $30 that would Management sets a profit level of $30 that would be satisfactory during this period.be satisfactory during this period.

The goal programming problem is to find the The goal programming problem is to find the production mix that achieves this goal as closely production mix that achieves this goal as closely as possible given the production time as possible given the production time constraints.constraints.

We need to define two deviational variables:We need to define two deviational variables:

dd11–– = underachievement of the profit target = underachievement of the profit target

dd11++ = overachievement of the profit target = overachievement of the profit target

Page 42: Bba 3274 qm week 10 integer programming

Example of Goal Programming: Example of Goal Programming: Harrison Electric Company RevisitedHarrison Electric Company Revisited

We can now state the Harrison Electric problem We can now state the Harrison Electric problem as a single-goal programming model:as a single-goal programming model:

subject to subject to $7$7XX11+ $6+ $6XX22+ + dd11–– – – dd11

++ = $30= $30 (profit goal constraint)(profit goal constraint)

22XX11+ 3+ 3XX22 ≤ 12≤ 12 (wiring hours)(wiring hours)

66XX11+ 5+ 5XX22 ≤ 30≤ 30 (assembly hours)(assembly hours)

XX11, , XX22, , dd11––, , dd11

++ ≥ 0 ≥ 0

Minimize under or Minimize under or overachievement of profit overachievement of profit targettarget

= = dd11–– + + dd11

++

Page 43: Bba 3274 qm week 10 integer programming

Extension to Equally Important Extension to Equally Important Multiple GoalsMultiple Goals

Suppose Harrison’s management wants Suppose Harrison’s management wants to achieve several goals that are equal in to achieve several goals that are equal in priority:priority:Goal 1:Goal 1: to produce a profit of $30 if to produce a profit of $30 if possible during the production period.possible during the production period.Goal 2:Goal 2: to fully utilize the available wiring to fully utilize the available wiring department hours.department hours.Goal 3:Goal 3: to avoid overtime in the assembly to avoid overtime in the assembly department.department.Goal 4:Goal 4: to meet a contract requirement to to meet a contract requirement to produce at least seven ceiling fans.produce at least seven ceiling fans.

Page 44: Bba 3274 qm week 10 integer programming

Extension to Equally Extension to Equally Important Multiple GoalsImportant Multiple Goals

The deviational variables are:The deviational variables are:

dd11–– = = underachievement of the profit targetunderachievement of the profit target

dd11++ = = overachievement of the profit targetoverachievement of the profit target

dd22–– = = idle time in the wiring department (underutilization)idle time in the wiring department (underutilization)

dd22++ = = overtime in the wiring department (overutilization)overtime in the wiring department (overutilization)

dd33–– = = idle time in the assembly department idle time in the assembly department

(underutilization)(underutilization)

dd33++ = = overtime in the assembly department overtime in the assembly department

(overutilization)(overutilization)

dd44–– = = underachievement of the ceiling fan goalunderachievement of the ceiling fan goal

dd44++ = = overachievement of the ceiling fan goaloverachievement of the ceiling fan goal

Page 45: Bba 3274 qm week 10 integer programming

Extension to Equally Important Extension to Equally Important Multiple GoalsMultiple Goals

Because management is unconcerned about Because management is unconcerned about dd11++, ,

dd22++, , dd33

––, and , and dd44++ these may be omitted from the these may be omitted from the

objective function.objective function.The new objective function and constraints are:The new objective function and constraints are:

subject to subject to 77XX11+ 6+ 6XX22+ + dd11–– – – dd11

++ = 30(profit constraint)= 30(profit constraint)

22XX11+ 3+ 3XX22+ + dd22––– – dd22

++ = 12= 12 (wiring hours)(wiring hours)

66XX11+ 5+ 5XX22+ + dd33––– – dd33

++ = 30(assembly hours)= 30(assembly hours)

XX22+ + dd44––– – dd44

++ = 7= 7 (ceiling fan constraint)(ceiling fan constraint)

All All XXii, , ddii variables ≥ 0 variables ≥ 0

Minimize total deviation = Minimize total deviation = dd11–– + + dd22

–– + + dd33

++ + + dd44––

Page 46: Bba 3274 qm week 10 integer programming

Ranking Goals with Priority Ranking Goals with Priority LevelsLevels

In most goal programming problems, In most goal programming problems, one goal will be more important than one goal will be more important than another, which will in turn be more another, which will in turn be more important than a third.important than a third.

Higher-order goals are satisfied before Higher-order goals are satisfied before lower-order goals.lower-order goals.

Priorities (Priorities (PPii’s’s) are assigned to each ) are assigned to each deviational variable with the ranking so deviational variable with the ranking so that that PP11 is the most important goal, is the most important goal, PP22 the next most important, the next most important, PP33 the third, the third, and so on.and so on.

Page 47: Bba 3274 qm week 10 integer programming

Ranking Goals with Priority Ranking Goals with Priority LevelsLevels

Harrison Electric has set the following Harrison Electric has set the following priorities for their four goals:priorities for their four goals:

GOALGOAL PRIORITYPRIORITY

Reach a profit as much above $30 as Reach a profit as much above $30 as possiblepossible PP11

Fully use wiring department hours Fully use wiring department hours availableavailable PP22

Avoid assembly department overtimeAvoid assembly department overtime PP33

Produce at least seven ceiling fansProduce at least seven ceiling fans PP44

Page 48: Bba 3274 qm week 10 integer programming

Ranking Goals with Priority LevelsRanking Goals with Priority Levels

This effectively means that each goal is This effectively means that each goal is infinitely more important than the next lower infinitely more important than the next lower goal.goal.

With the ranking of goals considered, the With the ranking of goals considered, the new objective function is:new objective function is:

Minimize total deviation = Minimize total deviation = PP11dd11–– + + PP22dd22

–– + + PP33dd33

++ + + PP44dd44––Constraints remain identical Constraints remain identical

to the previous formulation.to the previous formulation.

Page 49: Bba 3274 qm week 10 integer programming

Goal Programming with Goal Programming with Weighted GoalsWeighted Goals

Normally priority levels in goal Normally priority levels in goal programming assume that each level is programming assume that each level is infinitely more important than the level infinitely more important than the level below it.below it.

Sometimes a goal may be only two or Sometimes a goal may be only two or three times more important than another.three times more important than another.

Instead of placing these goals on different Instead of placing these goals on different levels, we place them on the same level levels, we place them on the same level but with different weights.but with different weights.

The coefficients of the deviation variables The coefficients of the deviation variables in the objective function include both the in the objective function include both the priority level and the weight.priority level and the weight.

Page 50: Bba 3274 qm week 10 integer programming

Goal Programming with Goal Programming with Weighted GoalsWeighted Goals

Suppose Harrison decides to add another goal of Suppose Harrison decides to add another goal of producing at least two chandeliers.producing at least two chandeliers.

The goal of producing seven ceiling fans is The goal of producing seven ceiling fans is considered twice as important as this goal.considered twice as important as this goal.

The goal of two chandeliers is assigned a weight The goal of two chandeliers is assigned a weight of 1 and the goal of seven ceiling fans is assigned of 1 and the goal of seven ceiling fans is assigned a weight of 2 and both of these will be priority level a weight of 2 and both of these will be priority level 4.4.

The new constraint and objective function are:The new constraint and objective function are:

XX11 + + dd55–– – – dd55

++ = 2 (chandeliers) = 2 (chandeliers)

Minimize = Minimize = PP11dd11–– + + PP22dd22

–– + + PP33dd33++ + + PP44(2(2dd44

––) + ) + PP44dd55––

Page 51: Bba 3274 qm week 10 integer programming

Using QM for Windows to Solve Using QM for Windows to Solve Harrison’s ProblemHarrison’s Problem

Program 10.8A

Harrison Electric’s Goal Harrison Electric’s Goal Programming Analysis Using QM for Programming Analysis Using QM for

Windows: InputsWindows: Inputs

Page 52: Bba 3274 qm week 10 integer programming

Using QM for Windows to Solve Using QM for Windows to Solve

Harrison’s ProblemHarrison’s Problem

Program 10.8B

Summary Screen for Harrison Electric’s Goal Programming Analysis

Using QM for Windows

Page 53: Bba 3274 qm week 10 integer programming

Nonlinear ProgrammingNonlinear Programming The methods seen so far have assumed that the The methods seen so far have assumed that the

objective function and constraints are linear.objective function and constraints are linear. Terms such as Terms such as XX11

33, 1/, 1/XX22, log , log XX33, or 5, or 5XX11XX2 2 are not allowed.are not allowed. But there are many nonlinear relationships in the real But there are many nonlinear relationships in the real

world that would require the objective function, world that would require the objective function, constraint equations, or both to be nonlinear.constraint equations, or both to be nonlinear.

Excel can be used to solve these Excel can be used to solve these nonlinear nonlinear programmingprogramming ( (NLPNLP) problems.) problems.

One disadvantage of NLP is that the solution yielded One disadvantage of NLP is that the solution yielded may only be a may only be a local optimumlocal optimum, rather than a , rather than a global global optimumoptimum. . In other words, it may be an optimum over a In other words, it may be an optimum over a

particularparticular range, but not overall.range, but not overall.

Page 54: Bba 3274 qm week 10 integer programming

Nonlinear Objective Function Nonlinear Objective Function and Linear Constraintsand Linear Constraints

The Great Western Appliance Company sells The Great Western Appliance Company sells two models of toaster ovens, the Microtoaster two models of toaster ovens, the Microtoaster (X1) and the Self-Clean Toaster Oven (X2).(X1) and the Self-Clean Toaster Oven (X2).

They earn a profit of $28 for each Microtoaster They earn a profit of $28 for each Microtoaster no matter the number of units sold.no matter the number of units sold.

For the Self-Clean oven, profits increase as For the Self-Clean oven, profits increase as more units are sold due to a fixed overhead.more units are sold due to a fixed overhead. The profit function for the Self-Clean over may be The profit function for the Self-Clean over may be

expressed as:expressed as:

2121XX22 + 0.25 + 0.25XX2222

Page 55: Bba 3274 qm week 10 integer programming

Nonlinear Objective Function Nonlinear Objective Function and Linear Constraintsand Linear Constraints

The objective function is nonlinear and there The objective function is nonlinear and there are two linear constraints on production are two linear constraints on production capacity and sales time available.capacity and sales time available.

Maximize profit =Maximize profit = 2828XX11 + 21+ 21XX22

+ 0.25 + 0.25XX2222

subject tosubject to XX11 + 21+ 21XX22

≤≤1,0001,000

(units of (units of production production capacity)capacity)

0.50.5XX11 + 0.4+ 0.4XX22

≤≤500500

(hours of sales (hours of sales time available)time available)

XX11, , XX22

≥≥00

When an objective function contains a squared term and When an objective function contains a squared term and the problem constraints are linear, it is called a the problem constraints are linear, it is called a quadratic quadratic programmingprogramming problem. problem.

Page 56: Bba 3274 qm week 10 integer programming

Nonlinear Objective Function Nonlinear Objective Function and Linear Constraintsand Linear Constraints

Excel 2010 Solver Solution for Great Western Appliance Excel 2010 Solver Solution for Great Western Appliance NLP Problem NLP Problem

Program 10.9

Page 57: Bba 3274 qm week 10 integer programming

Both Nonlinear Objective Function Both Nonlinear Objective Function and Nonlinear Constraintsand Nonlinear Constraints

The annual profit at a medium-sized (200-400 The annual profit at a medium-sized (200-400 beds) Hospicare Corporation hospital beds) Hospicare Corporation hospital depends on the number of medical patients depends on the number of medical patients admitted (admitted (XX11) and the number of surgical ) and the number of surgical

patients admitted (patients admitted (XX22).). The objective function for the hospital is The objective function for the hospital is

nonlinear.nonlinear. They have identified three constraints, two of They have identified three constraints, two of

which are nonlinear.which are nonlinear. Nursing capacity - nonlinearNursing capacity - nonlinear X-ray capacity - nonlinearX-ray capacity - nonlinear Marketing budget requiredMarketing budget required

Page 58: Bba 3274 qm week 10 integer programming

Both Nonlinear Objective Function Both Nonlinear Objective Function and Nonlinear Constraintsand Nonlinear Constraints

The objective function and constraint The objective function and constraint equations for this problem are:equations for this problem are:

Maximize profit = $13Maximize profit = $13XX11 + $6 + $6XX11XX22 + + $5$5XX2 2 ++ $1/ $1/XX22

subject tosubject to22XX11

22+ 4+ 4XX22≤≤ 9090(nursing capacity in (nursing capacity in thousands of labour-thousands of labour-days)days)

XX11+ + XX2233≤≤7575 (x-ray capacity in (x-ray capacity in

thousandsthousands))

88XX11– 2– 2XX22≤≤6161 (marketing budget (marketing budget required in thousands required in thousands of $)of $)

Page 59: Bba 3274 qm week 10 integer programming

Both Nonlinear Objective Function Both Nonlinear Objective Function and Nonlinear Constraintsand Nonlinear Constraints

Excel 2010 Solution for Hospicare’s NLP ProblemExcel 2010 Solution for Hospicare’s NLP Problem

Program 10.10

Page 60: Bba 3274 qm week 10 integer programming

Linear Objective Function and Linear Objective Function and Nonlinear ConstraintsNonlinear Constraints

Thermlock Corp. produces massive Thermlock Corp. produces massive rubber washers and gaskets like the rubber washers and gaskets like the type used to seal joints on the NASA type used to seal joints on the NASA Space Shuttles.Space Shuttles.

It combines two ingredients, rubber (It combines two ingredients, rubber (XX11) ) and oil (and oil (XX22).).

The cost of the industrial quality rubber The cost of the industrial quality rubber is $5 per pound and the cost of high is $5 per pound and the cost of high viscosity oil is $7 per pound.viscosity oil is $7 per pound.

Two of the three constraints are Two of the three constraints are nonlinear.nonlinear.

Page 61: Bba 3274 qm week 10 integer programming

Linear Objective Function Linear Objective Function and Nonlinear Constraintsand Nonlinear Constraints

The firm’s objective function and The firm’s objective function and constraints are:constraints are:

Minimize costs = $5Minimize costs = $5XX11 + $7 + $7XX22

subject tosubject to

33XX11 + 0.25+ 0.25XX1122

+ 4+ 4XX22

+ 0.3+ 0.3XX2222

≥ 125 ≥ 125 (hardness (hardness constraintconstraint))

1313XX11+ + XX1133

≥≥8080

(tensile (tensile strength)strength)

0.70.7XX11+ + XX22

≥≥1717

(elasticity)(elasticity)

Page 62: Bba 3274 qm week 10 integer programming

Linear Objective Function Linear Objective Function and Nonlinear Constraintsand Nonlinear Constraints

Excel 2010 Solution for Thermlock NLP ProblemExcel 2010 Solution for Thermlock NLP Problem

Program 10.11

Page 63: Bba 3274 qm week 10 integer programming

TutorialTutorial

Lab Practical : Spreadsheet Lab Practical : Spreadsheet

1 - 63

Page 64: Bba 3274 qm week 10 integer programming

Further ReadingFurther Reading

Render, B., Stair Jr.,R.M. & Hanna, M.E. (2013) Quantitative Analysis for Management, Pearson, 11th Edition

Waters, Donald (2007) Quantitative Methods for Business, Prentice Hall, 4th Edition.

Anderson D, Sweeney D, & Williams T. (2006) Quantitative Methods For Business Thompson Higher Education, 10th Ed.

Page 65: Bba 3274 qm week 10 integer programming

QUESTIONS?QUESTIONS?