260
Notes 1: Introduction to Optimization Models IND E 599 September 29, 2010 IND E 599 Notes 1 Slide 1

Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

  • Upload
    others

  • View
    17

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Notes 1: Introduction to Optimization Models

IND E 599

September 29, 2010

IND E 599 Notes 1 Slide 1

Page 2: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Course Objectives

I Survey of optimization models and formulations, with focuson modeling, not on algorithms

I Include a variety of applications, such as, industrial,mechanical, civil and electrical engineering, financialoptimization models, health care systems, environmentalecology, and forestry

I Include many types of optimization models, such as, linearprogramming, integer programming, quadratic assignmentproblem, nonlinear convex problems and black-box models

I Include many common formulations, such as, facility location,vehicle routing, job shop scheduling, flow shop scheduling,production scheduling (min make span, min max lateness),knapsack/multi-knapsack, traveling salesman, capacitatedassignment problem, set covering/packing, network flow,shortest path, and max flow.

IND E 599 Notes 1 Slide 2

Page 3: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Tentative Topics

Each topic is an introduction to what could be a complete course:

1. basic linear models (LP) with sensitivity analysis

2. integer models (IP), such as the assignment problem,knapsack problem and the traveling salesman problem

3. mixed integer formulations

4. quadratic assignment problems

5. include uncertainty with chance-constraints, stochasticprogramming scenario-based formulations, and robustoptimization

6. multi-objective formulations

7. nonlinear formulations, as often found in engineering design

8. brief introduction to constraint logic programming

9. brief introduction to dynamic programming

IND E 599 Notes 1 Slide 3

Page 4: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Computer Software

I Catalyst Tools (https://catalyst.uw.edu/)

I AIMMS - optimization software (http://www.aimms.com/)Ming Fang - AIMMS software consultant

IND E 599 Notes 1 Slide 4

Page 5: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

What is Mathematical Programming?

Mathematical programming refers to “programming” as a“planning” activity: as in

I linear programming (LP)

I integer programming (IP)

I mixed integer linear programming (MILP)

I non-linear programming (NLP)

“Optimization” is becoming more common, e.g. the MathematicalProgramming Society (MPS) just changed their name to theMathematical Optimization Society - but are keeping the name oftheir flagship journal Mathematical Programming

IND E 599 Notes 1 Slide 5

Page 6: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Optimization Models

Optimization models are typically categorized by the mathematicalstructure of the functions, which is necessary for algorithmdevelopment

There is a connection between the models and the algorithms:

I a nonlinear integer model may be very accurate, butimpractical to solve in reasonable time

I be aware of the assumptions and implications of the model

The process of creating and exploring an optimization model isoften more useful then a single solution

IND E 599 Notes 1 Slide 6

Page 7: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

General Optimization Model

The standard optimization formulation consists of:

I decision variables

I objective function

I constraints

Formulation

minimize f (x)subject to gj(x) ≤ bj , j = 1, . . . , m1

hj(x) = 0, j = 1, . . . , m2

xi ≥ 0, i = 1, . . . , nx1, x2 ∈ 0, 1 (binary variables)

IND E 599 Notes 1 Slide 7

Page 8: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Feasibility and Optimality

Terminology

1. Feasible solution: a vector x ∈ Rn that satisfies all constraints

2. Feasible region: the set of all feasible solutions

3. Optimal solution: a feasible solution x∗ such thatf (x∗) ≤ f (x) for all feasible solutions x

4. Optimal value: f ∗ = f (x∗).

Existence:

I Does a feasible solution always exist? NO

I If the feasible region is non-empty, does an optimal solutionalways exist? NO

IND E 599 Notes 1 Slide 8

Page 9: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Existence of an optimal solution

Example (Unbounded feasible region)

Maximize x , for x ≥ 0

Example (Open feasible region)

Minimize 1/x , for x ∈ (0, 1)

Theorem (Weierstrass Theorem)

A continuous function f defined on a compact (closed andbounded) feasible region S HAS a minimum point x∗ ∈ S suchthat f (x) ≥ f (x∗) for all x ∈ S.

IND E 599 Notes 1 Slide 9

Page 10: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

A Special Type of Optimization Model: Linear

Terminology (Linear Program)

A linear program (LP) is a linear optimization model: minimize alinear objective function subject to linear equality and linearinequality constraints.

Example

minimize 2x1 − x2 + 4x3

subject to x1 + x2 + x4 ≤ 2

3x2 − x3 = 5

x3 + x4 ≥ 3

x1 ≥ 0

x3 ≤ 0

IND E 599 Notes 1 Slide 10

Page 11: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

A Standard Linear Program

Formulation

minimize cxsubject to Ax = b

x ≥ 0

where x ∈ Rn, A is an m× n matrix, c is 1× n, and b is m× 1 forsome integers m and n.

RemarkEvery linear program can be converted into an equivalent problemwith equality constraints and non-negativity constraints.

What does “equivalent problem” mean? Problem P is equivalentto Problem Q, if, for every feasible x ∈ P, there exists a feasibley ∈ Q, and vice versa, and for every optimal x∗ ∈ P, there existsan optimal y ∈ Q, and vice versa.

IND E 599 Notes 1 Slide 11

Page 12: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Common Modeling Tricks to Convert to Standard LP Form

1. Minimize or Maximize - that is the question Minimizing cx isequivalent to maximizing −cx . Is this true for f (x)?YES, minimizing f (x) is equivalent to maximizing −f (x)

2. Eliminate Free Variables For variables xj that are not restrictedto be non-negative or non-positive, write xj = x+

j − x−j ,

x+j ≥ 0, x−j ≥ 0. Does this trick work for nonlinear problems?

ALMOST, need to add (x+j ) · (x−j ) = 0.

3. Eliminate Inequality ConstraintsI Modify every ≥ inequality constraint by introducing a surplus

variable si ≥ 0 to write a′ix − si = bi .

I Modify every ≤ inequality constraint by introducing a slackvariable si ≥ 0 to write a′

ix + si = bi .

IND E 599 Notes 1 Slide 12

Page 13: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Two Equivalent Linear Programs

Example

minimize 2x1 + 4x2

x1 + x2 ≥ 3

3x1 + 2x2 = 14

x1 ≥ 0

minimize 2x1 + 4x+2 − 4x−2

x1 + x+2 − x−2 − s1 = 3

3x1 + 2x+2 − 2x−2 = 14

x1, x+2 , x−2 , s1 ≥ 0

IND E 599 Notes 1 Slide 13

Page 14: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Two Variable LPs: A Geometric View

minimize − x1 − x2

subject to x1 + 2x2 ≤ 3

2x1 + x2 ≤ 3

x1, x2 ≥ 0

IND E 599 Notes 1 Slide 14

Page 15: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

A Linear Programming Model - Product Mix

Example (Product Mix Problem)

An engineering factory can produce five types of product (PROD1,PROD2, . . . , PROD5) by using two processes: grinding anddrilling. We are given data on:

I How much each unit of each product contributes to profit

I How much time each unit of each product requires on eachprocess (grinding and drilling)

I How much employee’s time is needed for final assembly ofeach unit of each product

I Availability of grinding machines, drilling machines, andemployees

The problem is to find how much to make of each product so as tomaximize the total profit contribution.

IND E 599 Notes 1 Slide 15

Page 16: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

ExamplePROD1 PROD2 PROD3 PROD4 PROD5

Profit 550 600 350 400 200

Grinding 12 20 – 25 15Drilling 10 8 16 – –

Each unit of each product uses 20 hours of an employee’s time inthe final assembly. The factory has three grinding machines andtwo drilling machines and works a six-day week with two shifts of 8hours on each day. Eight workers are employed in assembly, eachworking one shift a day.

Decision variables:xi is units of product i to be produced every week, i = 1, . . . , 5.

Objective function:

Profit per week = 550x1 + 600x2 + 350x3 + 400x4 + 200x5

IND E 599 Notes 1 Slide 16

Page 17: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Example: Product Mix LP Model

Formulation

minimize 550x1 +600x2 +350x3 +400x4 +200x5

subject to 12x1 +20x2 +25x4 +15x5 ≤ 28810x1 +8x2 +16x3 ≤ 19220x1 +20x2 +20x3 +20x4 +20x5 ≤ 384

x1, x2, x3, x4, x5 ≥ 0

IND E 599 Notes 1 Slide 17

Page 18: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Example: Product Mix LP in AIMMS Software

Example

I Indices: Types of product i , i = 1, . . . , 5

I Variables: Number of product of type i per week

I Parameters:

I Pi Profit contribution of product iI Gi Grinding time for product iI Di Drilling time for product iI M Manpower time for product i

minimize∑5

i=1 Pixi

subject to∑5

i=1 Gixi ≤ 288∑5i=1 Dixi ≤ 192∑5i=1 Mxi ≤ 384

x ≥ 0

IND E 599 Notes 1 Slide 18

Page 19: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Notes 2: Blending and other Linear Models

IND E 599

October 4, 2010

IND E 599 Notes 2 Slide 1

Page 20: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

A Linear Programming Model - Blending

A blending problem is another common LP found in:

I chemical processing industry

I oil refinery

I animal feed

I pharmaceuticals

A characteristic of a blending problem is using proportions with atype of balance constraint

IND E 599 Notes 2 Slide 2

Page 21: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Example (Blending Problem)

A food is manufactured by refining raw oils and blending themtogether. The raw oils come in two categories:

I Vegetable oils: VEG1 and VEG2

I Non-vegetable oils: OIL1, OIL2 and OIL3

In any month it is not possible to refine more than 200 tons ofvegetable oils and more than 250 tons of non-vegetable oils.ASSUME: there is no loss of weight in the refining process.There is a technological restriction on hardness. In the units inwhich hardness is measured, this must lie between 3 and 6.ASSUME: hardness blends linearly.

IND E 599 Notes 2 Slide 3

Page 22: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Example

The final product sells for $150 per ton.VEG1 VEG2 OIL1 OIL2 OIL3

Cost (per ton) 110 120 130 110 115

Hardness 8.8 6.1 2.0 4.2 5.0How should the food manufacturer make their product in order tomaximize their net profit?

Decision variables:xi is the tons of oil i (i = 1, . . . , 5 for VEG1, VEG2, OIL1, OIL2,OIL3) bought, refined and blended per month.y is the total quantity (tons) of product made per month.

Equality (Balance) Constraint:

x1 + x2 + x3 + x4 + x5 = y

IND E 599 Notes 2 Slide 4

Page 23: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Objective Function

Max Profit −110x1 − 120x2 − 130x3 − 110x4 − 115x5 + 150y

Capacity Constraints

Refining capacity on vegetable oil (200 tons/month)x1 + x2 ≤ 200Refining capacity on non-vegetable oil (250 tons/month)x3 + x4 + x5 ≤ 250

Hardness Constraints8.8x1 + 6.1x2 + 2x3 + 4.2x4 + 5x5 ≤ 6y8.8x1 + 6.1x2 + 2x3 + 4.2x4 + 5x5 ≥ 3y

Non-negativity Constraints

x1, x2, x3, x4, x5 ≥ 0 y ≥ 0

The non-negativity constraint on y is redundant, and in fact, ycould be removed by substituting the Balance equality.

IND E 599 Notes 2 Slide 5

Page 24: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Example (Use slack variable for upper and lower bound)

8.8x1 + 6.1x2 + 2x3 + 4.2x4 + 5x5 ≤ 6y8.8x1 + 6.1x2 + 2x3 + 4.2x4 + 5x5 ≥ 3y

An equivalent way:8.8x1 + 6.1x2 + 2x3 + 4.2x4 + 5x5 + s = 6ys ≥ 0 and s ≤ 3y

Now, substitute balance equation to eliminate y :8.8x1 + 6.1x2 + 2x3 + 4.2x4 + 5x5 + s = 6(x1 + x2 + x3 + x4 + x5)2.8x1 + 0.1x2 +−4x3 +−1.8x4 +−1x5 + s = 0s ≥ 0 and s ≤ 3y

Example (A better example (variables are the same))

7 ≤ 5x1 + 3x2 ≤ 105x1 + 3x2 + s = 10, s ≥ 0, s ≤ 3

IND E 599 Notes 2 Slide 6

Page 25: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Another Blending Example

Example

There are t batches of chemicals available. The following data isavailable:

I wk = weight (tons) of material in the kth batch;

I ak1, ak2, . . . , akm (with∑m

i=1 aki = 1) is the fraction ofmaterial (by weight) in the kth batch in the various particlesizes i ;

I b1, b2, . . . , bm (with∑m

i=1 bi = 1) is the desired fraction ofblend (by weight) in the various particle sizes i ;

I W = weight in tons of the blend to be produced.

It is desired to blend material from the various batches, so as toproduce a blend with fractional size-weight distribution as close tothe desired as possible.

IND E 599 Notes 2 Slide 7

Page 26: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Data for the Blending Example

Example (Fraction by Weight of Various Particle Sizes (aki))Batch (k) Size1 Size2 Size3 Size4 Tons Avail (wk)

1 0.10 0.40 0.30 0.20 1002 0.20 0.10 0.50 0.20 2503 0.30 0.58 0.02 0.10 504 0.40 0.15 0.30 0.15 5005 0.60 0.17 0.18 0.05 200

Desired fraction 800 tonsin blend (bi ) 0.45 0.30 0.15 0.10 required (W )

Decision variables:xk is the tons of batch k , k = 1, . . . , 5 used in the final blend.

IND E 599 Notes 2 Slide 8

Page 27: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Constraints

Desired Blending Constraints:

0.10x1 +0.20x2 +0.30x3 +0.40x4 +0.60x5 +b−1 −b+1 = 0.45

0.40x1 +0.10x2 +0.58x3 +0.15x4 +0.17x5 +b−2 −b+2 = 0.30

0.30x1 +0.50x2 +0.02x3 +0.30x4 +0.18x5 +b−3 −b+3 = 0.15

0.20x1 +0.20x2 +0.10x3 +0.15x4 +0.05x5 +b−4 −b+4 = 0.10

Available material:

x1 ≤ 100, x2 ≤ 250, x3 ≤ 50, x4 ≤ 500, x5 ≤ 200

Required tons:

x1 + x2 + x3 + x4 + x5 = 800

Non-negativity constraints:

xk ≥ 0, k = 1, . . . , 5, b+i , b

−i ≥ 0, i = 1, . . . , 4

and(b+i

)·(b−i)

= 0

IND E 599 Notes 2 Slide 9

Page 28: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Objective

Produce the blend with fractional size-weight distribution as closeto the desired as possible:

min4∑

i=1

b+i + b−i

What about, minimize the maximum deviation from the desiredfraction in the blend over all the sizes:

min(maxb+

1 , b−1 , . . . , b

+4 , b

−4 )

IND E 599 Notes 2 Slide 10

Page 29: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Trick to Minimize the Maximum

We want to minimize f (x) where

f (x) = maxb+1 , b

−1 , . . . , b

+4 , b

−4

Introduce a new variable z , and force z to be bigger than any ofthe terms in the maximum:

z ≥ b+1 , z ≥ b−1 , . . . , z ≥ b+

4 , z ≥ b−4 ,

and minimize z .

Mini-maxThis trick works for any expression in the maximum! It iscommonly used to minimize makespan in production schedulingproblems. Also in conservative financial investments, to minimizethe maximum risk. My research used minimize maximummargin-of-safety in design of optimal composite structures.

IND E 599 Notes 2 Slide 11

Page 30: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Convert Minimize the Maximum to an LP

We want to solve:

Minimize maxi

∑j aijxj

subject to conventional linear constraints

Introduce a new variable z :

Minimize zsubject to conventional linear constraints∑

j aijxj − z ≤ 0 for alliz ≥ 0

IND E 599 Notes 2 Slide 12

Page 31: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Other situations that can be converted to LPs

I Ratio of linear functions

I Piecewise linear functions

I Absolute value functions

IND E 599 Notes 2 Slide 13

Page 32: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Common Objectives

I Minimize cost

I Maximize profit

I Maximize utility

I Maximize return on investment

I Maximize net present value

I Maximize customer satisfaction

I Maximize probability of achieving a goal

I Maximize reliability

I Minimize the change in employment (hiring/firing)

I Maximize robustness of a strategy or plan

I Minimize makespan

I others?

IND E 599 Notes 2 Slide 14

Page 33: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Common Constraints

I Capacity constraints

I Demand constraints

I Balance constraints

I Flow constraints

I Bounding constraints (upper & lower bounds, also mini-max)

I Hard and soft constraints (use b+i and b−i to “soften” a

constraint and penalize deviations - also goal programming)

I Use fuzzy set membership instead of soft constraints - andconvert to LP using mini-max objective

I Chance constraints P(∑

aixi ≤ B) ≥ βI Either-or constraints (use binary variables)

I Logic constraints (Produce product 1 if product 2 is producedbut neither products 3 or 4 are produced)

IND E 599 Notes 2 Slide 15

Page 34: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

How to Build a Good Model (Section 3.4)

1. Ease of understanding the model

2. Ease of detecting errors in the model

3. Ease of computing the solution

IND E 599 Notes 2 Slide 16

Page 35: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Ease of understanding the model

I state assumptions

I clearly document the model

I clearly define the decision variables

I clearly state the objectives and constraints

I document variations on model

I include details such as units, sources of data

IND E 599 Notes 2 Slide 17

Page 36: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Ease of detecting errors in the model

I clerical errors and formulation errors

I build modular formulations

I if using substitutions and compact formulations, testequivalency in small problems

I develop test cases that are scalable

I verify that trends follow intuitive explanations

I check for reasonable ranges on feasibility, boundedness

I compare to historical solutions

I get feedback from decision makers on reasonableness

IND E 599 Notes 2 Slide 18

Page 37: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Ease of computing the solution

I consider tradeoffs between accuracy of model andcomputational time

I test different solution techniques and compare

I be alert to numerical error

I debug a model as you would a computer program

IND E 599 Notes 2 Slide 19

Page 38: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Interpreting and using an LP (Chapter 6)

I Infeasible models

I Unbounded models

I Solvable models

IND E 599 Notes 2 Slide 20

Page 39: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Infeasible LP

Example

x1 − x2 ≥ 1

x2 − x3 ≥ 1

x1 + x3 ≥ 1

There is a mutual incompatibility of all three constraints, yet, itmay be wrong to identify any single one of the three as beingincorrect.

IND E 599 Notes 2 Slide 21

Page 40: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Unbounded Models

Example

Maximize x1 + x2

subject to 2x1 + x2 ≥ 1

This is unbounded because there is no limit to how large we canmake x1 + x2. Consider missing physical constraints, or missingbalance constraints.

IND E 599 Notes 2 Slide 22

Page 41: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Solvable Models

Does the solution make sense?Check trends:If capacity is increased, does the solution make sense?If capacity is decreased, does the solution make sense?If costs are modified, does the solution make sense?Compare to practical solutions

Example

In testing optimal design of composite structures, started with asimple flat plate, then extended to large panel. Physically tested a30 ft by 10 ft panel that was built according to optimal design.The panel failed in a mode that was not predicted, implying theanalysis for the constraints was insufficient to accurately predictperformance. The analysis was extended and a new model wasdeveloped.

IND E 599 Notes 2 Slide 23

Page 42: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Notes 3: Economic Interpretations

IND E 599

October 6, 2010

IND E 599 Notes 3 Slide 1

Page 43: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Economic Interpretation of a Linear Program

Common terms relating to economic interpretations:shadow prices, sensitivity analysis, duality

Easiest interpretation when in the following form:

minimize cxsubject to Ax ≤ b

x ≥ 0

where x ∈ Rn, A is an m× n matrix, c is 1× n, and b is m× 1 forsome integers m and n.

IND E 599 Notes 3 Slide 2

Page 44: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Revisit the Product Mix Example

Example (Product Mix Example)

xi is units of product i to be produced every week, i = 1, . . . , 5

Maximize profit, subject to constraints on grinding, drilling andmanpower time

maximize 550x1 +600x2 +350x3 +400x4 +200x5

subject to 12x1 +20x2 +25x4 +15x5 ≤ 28810x1 +8x2 +16x3 ≤ 19220x1 +20x2 +20x3 +20x4 +20x5 ≤ 384

x1, x2, x3, x4, x5 ≥ 0

IND E 599 Notes 3 Slide 3

Page 45: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Optimal Solution to the Example Product Mix Problem

The optimal solution to the example product mix problem is

x∗1 = 12, x∗

2 = 7.2, x∗3 = x∗

4 = x∗5 = 0

with optimal valueProfit∗ = 10, 920

IND E 599 Notes 3 Slide 4

Page 46: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Binding Constraints

When investigating the optimal solution, the grinding andmanpower constraints are binding (also called active, or holding atequality, or have no slack), whereas there is slack in the drillingcapacity

x∗1 = 12, x∗

2 = 7.2, x∗3 = x∗

4 = x∗5 = 0

12x∗1 +20x∗

2 +0 +0 = 28810x∗

1 +8x∗2 +0 = 177.6 ≤ 192

20x∗1 +20x∗

2 +0 +0 +0 = 384

IND E 599 Notes 3 Slide 5

Page 47: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Economic Questions

I Why are only 2 products being made? Are products 3, 4, and5 underpriced? What should their price be in order to make itworthwhile to manufacture them?

I Why is there extra drilling capacity? Should I pay to increasegrinding and manpower capacity to increase profit?

I What is the marginal value of these capacities?

IND E 599 Notes 3 Slide 6

Page 48: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Extra Economic Information

I Reduced costs: Each variable has an associated reduced cost,or opportunity cost, which is the amount by which anobjective function coefficient would have to improve (soincrease for maximization problem, decrease for minimizationproblem) before it would be possible for its correspondingvariable to assume a positive value in the optimal solution.

I Shadow price: Each constraint has an associated shadow pricewhich is the change in the objective value of the optimalsolution obtained by relaxing the constraint by one unit – it isthe marginal utility of modifying the constraint.

I More formally, the shadow price is the value of the Lagrangemultiplier at the optimal solution, which means that it is theinfinitesimal change in the objective function arising from aninfinitesimal change in the constraint.

I The extra economic information arises from the dual model.

IND E 599 Notes 3 Slide 7

Page 49: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Back to Product Mix Example

Shadow prices:

I Grinding Constraint: 6.25

I Drilling Constraint: 0

I Manpower Constraint: 23.75

The shadow price for Drilling is zero, because it is not binding. Sothere is no value to increasing this capacity.

The shadow price for Manpower is much larger than for Grinding,so it is more advantageous to add 1 unit of Manpower than 1 unitof Grinding (if they have equal cost), because 1 unit of Manpowerwould increase profit by 23.75, whereas Grinding would increaseprofit by 6.25.

The shadow prices are for small changes, performed one at a time.How large a change can be made? What if more than one changeis made?

IND E 599 Notes 3 Slide 8

Page 50: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

When Interpreting Shadow Prices

I How large a change in resource can be made without losingthe shadow price interpretation?

Right-hand side (rhs) Ranging

I What if more than one change is made at a time?Sensitivity Analysis and Parametric Programming

IND E 599 Notes 3 Slide 9

Page 51: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

RHS Ranging for the Product Mix Example

Shadow Current Minimum MaximumPrice Value

Grinding 6.25 288 230.4 384Drilling 0 192 177.6 infinityManpower 23.75 384 288 406.1

I If we added 1 hour of grinding time, we would increase profitby 6.25. We could add as much as 96 (=384-288) hours, andgain 96 x 6.25 = 600.

I If we added 1 hour of manpower time, we would increaseprofit by 23.75. We could add as much as 22.1(=406.1-384)hours, and gain 22.1 x 23.75=524.875

I In either situation, the amount produced will change.

IND E 599 Notes 3 Slide 10

Page 52: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Visualize RHS Ranging

To visualize right-hand side ranging and how the optimal solutionand objective value change as the rhs changes, consider atwo-variable problem:

Example

maximize 3x1 +2x2

subject to x1 + x2 ≤ 42x1 + x2 ≤ 5−1x1 +4x2 ≥ 2

x1, x2 ≥ 0

(Draw Figure 6.3 on board.)

IND E 599 Notes 3 Slide 11

Page 53: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

RHS Ranging and Solutions for the Product Mix Example

Current Optimal OptimalRHS Solution Value

Grinding 288 x∗1 = 12 10,920

Drilling 192 x∗2 = 7.2

Manpower 384

Max Grinding Optimal OptimalRHS Solution Value

Grinding 384 11,520Drilling 192 x∗

2 = 19.2Manpower 384

Max Man- Optimal Optimalpower RHS Solution Value

Grinding 288 x∗1 = 14.8 11,446

Drilling 192 x∗2 = 5.5

Manpower 406.1Notice the extreme solutions, at most two products are made. Is itever optimal to make three different products? More than three?

IND E 599 Notes 3 Slide 12

Page 54: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Sensitivity Analysis

Change capacity constraint for Manpower from 384 to 410

Example (Change rhs for Manpower)

maximize 550x1 +600x2 +350x3 +400x4 +200x5

subject to 12x1 +20x2 +25x4 +15x5 ≤ 28810x1 +8x2 +16x3 ≤ 19220x1 +20x2 +20x3 +20x4 +20x5 ≤ 410

x1, x2, x3, x4, x5 ≥ 0

The optimal solution to this version of the product mix problem is

x∗1 = 15.48, x∗

2 = 4.65, x∗3 = 0, x∗

4 = 0.37, x∗5 = 0

with optimal valueProfit∗ = 11, 451.85

IND E 599 Notes 3 Slide 13

Page 55: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

It is possible for three products to be in the optimal solution.However, there will never be more than three non-zero productsbecause there are only three constraints.

In a linear model with m constraints, there will never be more thanm non-zero variables in an optimal basic (extreme point) solution.

In a nonlinear model, the optimal solution is not always an extremepoint solution (may be interior).

IND E 599 Notes 3 Slide 14

Page 56: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Reduced Costs and Objective Function Ranging

For the product mix example:

Current Obj Reduced Minimum MaximumFunction ci Cost

c1 = 550 500 600c2 = 600 550 683.3c3 = 350 125 -infinity 475c4 = 400 231.25 -infinity 631.25c5 = 200 368.75 -infinity 568.75

Interpretation for Product 3: We would have to increase its unitprice by 125 (from c3 = 350 to 475), to make it (just) worthmaking.

IND E 599 Notes 3 Slide 15

Page 57: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Multiple Optima

Obj. Value Optimal Optimalc3 Solution Value

c3 = 350 x∗1 = 12 10,920

x∗2 = 7.2

c3 = 475 10,920x∗2 = 14.4x∗3 = 4.8

IND E 599 Notes 3 Slide 16

Page 58: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Visualize Objective Function Coefficient Ranging andMultiple Optima

To visualize objective function values ranging and how it canimpact multiple optima, consider a two-variable problem:

Example

maximize 3x1 +1.5x2

subject to x1 + x2 ≤ 42x1 + x2 ≤ 5−1x1 +4x2 ≥ 2

x1, x2 ≥ 0

(Draw Figure 6.1 on board.)

IND E 599 Notes 3 Slide 17

Page 59: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Visualize Degenerate LP

To visualize a degenerate solution to a linear program, consider atwo-variable problem:

Example

maximize 3x1 +2x2

subject to x1 + x2 ≤ 32x1 + x2 ≤ 44x1 +3x2 ≤ 10

x1, x2 ≥ 0

(Draw Figure 6.2 on board.)

A degenerate solution in the dual implies multiple optima in theprimal, and vice versa.

IND E 599 Notes 3 Slide 18

Page 60: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Dual Model to the Product Mix Example (Primal)

The variables y1, y2, y3 represent the valuations for each hour ofeach of the capacities of grinding, drilling and manpower – from anaccounting perspective.

For example, the profit contribution of 550 for PROD1 isaccounted for by the “value” of the 12 hours of grinding, 10 hoursof drilling and 20 hours of manpower used in making one unit.

Example

minimize 288y1 +192y2 +384y3

subject to 12y1 +10y2 +20y3 ≥ 55020y1 +8y2 +20y3 ≥ 600

+16y2 +20y3 ≥ 35025y1 +20y3 ≥ 40015y1 +20y3 ≥ 200

y1, y2, y3 ≥ 0

IND E 599 Notes 3 Slide 19

Page 61: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Duality theory provides the economic interpretation of shadowprices. It also provides the straightforward calculation of rhsranging, obj. function coefficients ranging, and sensitivity analysis.

Duality theory exists for convex programming, not just linearprogramming, where the dual variables are called Lagrangemultipliers.

IND E 599 Notes 3 Slide 20

Page 62: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Parametric Programming

Allow several changes to occur, as a function of a single parameter.

For example, suppose we are considering hiring an extra worker foreach new grinding machine bought.

Let θ be the number of grinding machines bought. Then new rhsis: 288

192384

+ θ

960

48

because each grinding machine has 96 hours per week, and eachadditional worker has 48 hours per week.

IND E 599 Notes 3 Slide 21

Page 63: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Parametric Programming for Objective Function

It is also possible to use parametric programming to exploretradeoffs in objective function coefficients.

For example, suppose we reduce the price of PROD4, but increasethe price of PROD 1. Then, the objective function would be:

(550 + θ)x1 + 600x2 + 350x3 + (400− θ)x4 + 200x5

IND E 599 Notes 3 Slide 22

Page 64: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Notes 4: Integer Programming

IND E 599

October 11, 2010

IND E 599 Notes 4 Slide 1

Page 65: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Integer (Linear) Programs

Many practical problems can be modeled using integer variablesand linear constraints:

I The variables can only take on discrete values, such asnumber of trucks, airplanes, employees

I Binary variables 0–1 represent yes–no decisions, or otherlogical connections between decisions and constraints

IND E 599 Notes 4 Slide 2

Page 66: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Rounding Problem with Integer Variables

Example (Integral Units)

xi is number of units of product i , integer valued, i = 1, 2

maximize x1 +x2

subject to −2x1 +2x2 ≥ 1−8x1 +10x2 ≤ 13

x1, x2,≥ 0 and integer valued

Optimal solution to the LP-relaxation (drop integer constraint) is(4, 4.5) with objective = 8.5

Optimal solution to the IP is (1,2) with objective = 3

IND E 599 Notes 4 Slide 3

Page 67: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Graph the Example – a Thin Polytope

IND E 599 Notes 4 Slide 4

Page 68: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Computation Cost of Integer Programs

Many integer programs are NP-hard, or NP-complete, whereas alinear program can be solved in “weakly polynomial” time withinterior-point methods (not the simplex method).

Some integer programs (most notably network type problems) canbe solved in polynomial time and faster than a general LP becauseof the specific structure of the problem.

IND E 599 Notes 4 Slide 5

Page 69: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Common Types of Integer Programs

Common integer models, discussed later in Chapter 9.5:

I Set covering problems

I Set packing problems

I Set partitioning problems

I Knapsack problem

I Traveling salesman problem

I Quadratic assignment problem

and network integer models, discussed in Chapters 5.3 and 10:

I Transportation problem

I Assignment problem

I Minimum cost network flow problem

IND E 599 Notes 4 Slide 6

Page 70: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Integer Programming Applications

I Set-up costs or set-up times, also called fixed-charge, wherethresholds exist, such as pricing in “bundles”, machine timecomes in “packets”

I Sequencing problems, such as job-shop schedulingAlso Traveling Salesman Problem is a sequencing problem

I Allocation problems, such as project selection, capital budgetallocation, or product mix with variations (number ofproducts)

I Assembly line-balancing, aircrew scheduling

I Facility location, called depot location in text

I Graph theory, such as the four-color problem

IND E 599 Notes 4 Slide 7

Page 71: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Brief Overview of Solving Integer Programs

Active research on algorithms for solving IPs quickly. Somemethods include:

I Branch and Bound

I Cutting Planes

I Enumeration (only practical for small problems)

I Pseudo-Boolean Methods

I Randomized (Monte Carlo) Algorithms

I Approximation Techniques

I Heuristics and Meta-heuristics

IND E 599 Notes 4 Slide 8

Page 72: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Integer Notation

Discrete (integer) quantities: let x ∈ . . . ,−1, 0, 1, . . .Finite sets: let x ∈ 0, 2, 5, 10

Let x =

0 if no depot should be built1 if a depot of type A should be built2 if a depot of type B should be built

Binary indicator variable coupled with a real-valued variable:x is the quantity of an ingredient to be blendedδ indicates whether x > 0

Constraints include, x ≥ 0, δ ∈ 0, 1 andx −Mδ ≤ 0 for a large positive value M

if x > 0, then δ = 1if x = 0, then δ may be 0 or 1

IND E 599 Notes 4 Slide 9

Page 73: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

The Fixed-Charge Problem

Let x be the quantity of a product to be manufactured,and C1 is the marginal cost per unit,and C2 is the set-up cost if any product is to be manufactured.

Let δ = 1 if any product is manufactured, i.e., if x > 0.(Draw Figure 9.1 on board.)

Total cost = C1x + C2δ

Add constraints: x ≥ 0, δ ∈ 0, 1 andx −Mδ ≤ 0 for a large positive value M

If x > 0, then δ = 1, and the total cost is well-represented.If x = 0 and δ = 1, the constraints are satisfied, however,if x = 0 and δ = 0, the constraints are also satisfied at a lower cost.

IND E 599 Notes 4 Slide 10

Page 74: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

How to choose M?

To ensure that the constraints:x ≥ 0, δ ∈ 0, 1 andx −Mδ ≤ 0 for a large positive value M

imply that, if x > 0, then δ = 1,

we need M to exceed any possible value of x .

IND E 599 Notes 4 Slide 11

Page 75: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Suppose we would like:if x > 0, then δ = 1, andif x = 0, then δ = 0

then we can impose the condition

δ = 1 if and only if x > 0

Or, more realistically,

δ = 1 if and only if x > m, a threshold value

Add constraints:x ≥ 0, δ ∈ 0, 1 andx −Mδ ≤ 0 for a large positive value M, andx −mδ ≥ 0 for the threshold value m

Check that both inequalities are needed.

IND E 599 Notes 4 Slide 12

Page 76: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Blending Revisited

Suppose xA represents the proportion of ingredient A to beincluded in a blend, and XB represents the proportion of ingredientB to be included in the same blend. Also, suppose

If A is included in the blend, then B must be included also.

Add constraints: δ ∈ 0, 1 andxA −Mδ ≤ 0 and M = 1 is large enough because xA is a

proportion, andxB −mδ ≥ 0 with m = 0.01 to detect presence of B.

IND E 599 Notes 4 Slide 13

Page 77: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Notes 5: More on Integer Programming

IND E 599

October 18, 2010

IND E 599 Notes 5 Slide 1

Page 78: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Binary Variables

Binary variables are very useful to capture common types ofrequirements, as seen with the fixed-charge model.

Another similar and common requirement is the All-or-Nothingrequirement:

Example (All-or-Nothing requirement)

xj =

0 or5

can be modeled by substituting

xj = 5δ where δ ∈ 0, 1

IND E 599 Notes 5 Slide 2

Page 79: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Examples of All-or-Nothing Situations

I Should we invest 0 or 5 million dollar?

I Should capacity remain at 0 or jump to 5 units?

I Should we start a job immediately (time 0) or wait a day?

I Should a certain site be selected for a new facility?

IND E 599 Notes 5 Slide 3

Page 80: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Indicate whether an inequality holds or not

Example (Indicate whether an inequality holds or not)

We would likeδ = 1 =⇒

∑j

ajxj ≤ b

which can be modeled by∑j

ajxj + Mδ ≤ M + b

where δ ∈ 0, 1 and M is an upper bound on∑

j ajxj − b

Check: if δ = 0, the inequality may or may not hold, but if δ = 1,the inequality must hold.

IND E 599 Notes 5 Slide 4

Page 81: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

The reverse: An inequality implies δ = 1

Example (The reverse: An inequality implies δ = 1)

We would like ∑j

ajxj ≤ b =⇒ δ = 1

or equivalently

δ = 0 =⇒∑

j

ajxj b

however,∑

j ajxj b is the same as∑

j ajxj > b, but we need tointroduce a threshold ε for numerical issues,

∑j ajxj ≥ b + ε,

which can be modeled by∑j

ajxj − (m − ε)δ ≥ b + ε

where δ ∈ 0, 1 and m is a lower bound on∑

j ajxj − b

IND E 599 Notes 5 Slide 5

Page 82: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Both directions: Inequality holds IFF δ = 1

Example

Use a binary variable δ to indicate whether or not the followingconstraint is satisfied

2x1 + 3x2 ≤ 1, for 0 ≤ x1, x2 ≤ 1

Taking M ≥∑

j ajxj − b, e.g. M = 4 andtaking m ≤

∑j ajxj − b, e.g. m = −1, and ε = 0.1

this can be modeled by

2x1 + 3x2 + 4δ ≤ 5

2x1 + 3x2 + 1.1δ ≥ 1.1

Check: if δ = 1, then 2x1 + 3x2 ≤ 1 must hold. If δ = 0, then2x1 + 3x2 ≤ 1 does not hold, and in fact, 2x1 + 3x2 ≥ 1.1

IND E 599 Notes 5 Slide 6

Page 83: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Examples of common logical conditions

I If we manufacture product A, then we must also manufactureproduct B or at least one of products C and D.

I If this station is closed, then both branch lines terminating atthe station must also be closed.

I No more than five of the ingredients in this class maybeincluded in the blend at any one time.

I Either task A must be finished before task B starts, or viceversa.

I If the library’s subscription to this journal is cancelled, thenwe must retain at least one subscription to another journal inthis class.

I Choose at most 10 different investments, where each one hasa minimum amount.

IND E 599 Notes 5 Slide 7

Page 84: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Notation for connectives from Boolean algebra

I ∨ means or (this is inclusive, i.e. A or B or both)

I · means and

I ∼ means not

I =⇒ or → means implies (e.g. If ... then)

I ⇐⇒ or ↔ means if and only if (iff)

Example

Let Xi stand for the proposition: “Ingredient i is in the blend” fori = A,B,C .

The expression XA =⇒ (XB ∨ XC ) means, if XA is in the blend,then ingredient B or C (or both) must also be in the blend.

IND E 599 Notes 5 Slide 8

Page 85: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

If either of products A or B (or both) are manufactured,then at least one of products C, D, or E must also bemanufactured

Let Xi stand for the proposition: “Product i is manufactured” andlet δi be a binary variable that equals 1 iff product i ismanufactured, for i = A, . . . ,E .

(XA ∨ XB) =⇒ (XC ∨ XD ∨ XE )

Model “XA ∨ XB holds” with the following inequality

δA + δB ≥ 1

and model “XC ∨ XD ∨ XE holds” with the following inequality

δC + δD + δE ≥ 1

IND E 599 Notes 5 Slide 9

Page 86: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Finally, we wish:

I δA + δB ≥ 1 =⇒ δ = 1 and

I δ = 1 =⇒ δC + δD + δE ≥ 1

We model that with the following additional constraints:

I δA + δB − 2δ ≤ 0

I −δC − δD − δE + δ ≤ 0

IND E 599 Notes 5 Slide 10

Page 87: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Another way to model this logical condition

(XA ∨ XB) =⇒ (XC ∨ XD ∨ XE )

is equivalent to

(XA =⇒ (XC ∨ XD ∨ XE )) · (XB =⇒ (XC ∨ XD ∨ XE ))

which can be modeled with

I δA − δ ≤ 0

I δB − δ ≤ 0

IND E 599 Notes 5 Slide 11

Page 88: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Modeling Mutually Exclusive Choices

An example of mutually exclusive choices: Choose A or B, but notboth.

A and B are mutually exclusive

Let δA and δB be binary variables representing choosing A or B,respectively. The mutually exclusiveness condition can be modeledas

δA + δB = 1

IND E 599 Notes 5 Slide 12

Page 89: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Modeling Either-Or Constraints

An example:Either 3x1 + 2x2 ≤ 18or 2x1 + 4x2 ≤ 16

Either A or BLet δ be a binary variable, and M be a large (enough) positivenumber. Either A (3x1 + 2x2 ≤ 18) or B (2x1 + 4x2 ≤ 16) can bemodeled as

I 3x1 + 2x2 ≤ 18 + Mδ

I 2x1 + 4x2 ≤ 16 + M(1− δ)

IND E 599 Notes 5 Slide 13

Page 90: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

At least K out of N possible constraints (K < N) must hold

Given N possible constraints and let δi ∈ 0, 1 for i = 1, . . . ,N:

f1(x) ≤ d1

...

fN(x) ≤ dN

Some “K of these constraints hold” can be modeled as

f1(x) ≤ d1 + Mδ1...

fN(x) ≤ dN + MδNN∑

i=1

δi = N − K

(This generalizes“either-or” constraints with K = 1 and N = 2.)

IND E 599 Notes 5 Slide 14

Page 91: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Set Covering Problems

Given a set of objects S , and a class T of subsets of S with a costassociated with each subset. Find the minimum cost cover of S .

Examples of set covering problems:

I Find the locations of fire stations and neighborhoods theyserve so the city is covered

I Find the sales representations and the stores they serve so allthe stores are covered

I Find the cell tower locations and the areas they serve so theregion has cell coverage

IND E 599 Notes 5 Slide 15

Page 92: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Example of a Set Covering Problem

Suppose S = 1, 2, . . . ,m andT = (1, 2), (1, 3, 5), (2, 4, 5), (3), (1), (4, 5) and all members ofT have a cost of 1.

A cover for S would be (1,2), (1,3,5), and (4,5) with a cost of 3.Another cover for S would be (1,3,5), and (2,4,5) with a cost of 2.

Let δi =

1 if member i of T is in the cover0 otherwise

minimize δ1 +δ2 +δ3 +δ4 +δ5 +δ6subject to δ1 +δ2 +δ5 ≥ 1

δ1 +δ3 ≥ 1δ2 +δ4 ≥ 1

+δ3 +δ6 ≥ 1δ2 +δ3 +δ6 ≥ 1

IND E 599 Notes 5 Slide 16

Page 93: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Properties of a Set Covering Problem

1. The problem is a minimization one with binary variables andall constraints are ≥

2. All RHS coefficients are 1

3. All other matrix coefficients are 0 or 1

If Property 2 is relaxed (RHS coefficients may be 1 or greater), it isa weighted set covering problem.If Property 2 is relaxed, and Property 3 is relaxed to allow matrixcoefficients of 0, +1, or -1, it is a generalized set covering problem.

Airline crew scheduling is a good example where S are “flightlegs”, and T are possible “rosters” or “rotations” of crews.

Special algorithms exist for set covering problems.

IND E 599 Notes 5 Slide 17

Page 94: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Set Packing Problems

Given a set of objects S , and a class T of subsets of S with abenefit value associated with each subset. Find the maximum totalvalue associated with packing as many of the members of T into Sas possible with no overlap.

This is similar to the set covering problem, but in set covering, wewant to include at least one member of S , and in set packing, wewant to include at most one member of S in the solution.

IND E 599 Notes 5 Slide 18

Page 95: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Simple Example

Suppose you are at a convention of foreign ambassadors, each ofwhich speaks English and also various other languages. You wantto make an announcement to a group of them, but because youdon’t trust them, you don’t want them to be able to speak amongthemselves without you being able to understand them. To ensurethis, you will choose a group such that no two ambassadors speakthe same language, other than English. However, you also want togive your announcement to as many ambassadors as possible.

In this case, the elements of the set S are languages other thanEnglish, and the subsets in T are the sets of languages spoken by aparticular ambassador. If two sets are disjoint, those twoambassadors share no languages other than English. A maximumset packing will choose the largest possible number of ambassadorsunder the desired constraint.

(I found this simple example on Wikipedia.)

IND E 599 Notes 5 Slide 19

Page 96: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Example of a Set Packing Problem

Suppose S = 1, 2, . . . ,m and T = (1, 2, 5), (1, 3), (2, 4), (3, 6),(2, 3, 6) and all members of T have a benefit of 1.• A pack for S would be (1,2,5), and (3,6)• Note, we cannot include (1,2,5) AND (2,4) in the pack, becausethe member 2 would be included twice.

Let δi =

1 if member i of T is in the pack0 otherwise

maximize δ1 +δ2 +δ3 +δ4 +δ5subject to δ1 +δ2 ≤ 1

δ1 +δ3 +δ5 ≤ 1δ2 +δ4 +δ5 ≤ 1

δ3 ≤ 1δ1 ≤ 1

δ4 +δ5 ≤ 1

Note: some constraints are redundant, but are included todemonstrate one constraint for each member of set S

IND E 599 Notes 5 Slide 20

Page 97: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Properties of a Set Packing Problem

1. The problem is a maximization one with binary variables andall constraints are ≤

2. All RHS coefficients are 1

3. All other matrix coefficients are 0 or 1

If Property 2 is relaxed (RHS coefficients may be 1 or greater), it isa weighted set packing problem.

A special sort of packing problem is the matching problem, whereS contains nodes in a graph, and T contains pairs of nodesrepresenting an arc, and matching (or pairing)

The relaxed LP for the set packing problem with obj. coeff.s of 1 isthe dual of the relaxed LP for the set covering problem with obj.coeff.s of 1

Sensitivity analysis for LP does NOT apply to IntegerProgramming (think of graph)

IND E 599 Notes 5 Slide 21

Page 98: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Set Partitioning Problems

Given a set of objects S , and a class T of subsets of S . Now, usemembers of T to cover all the members of S , and also have nooverlap.

This is a combination of the set covering problem and the setpacking problem. The set covering problem is computationallymore difficult to solve than the set packing and set partitioningproblems.

Example applications include:

I Airline crew scheduling (with no “deadheading”)

I Political districting

I Emergency management systems (fire, police, ambulance)

IND E 599 Notes 5 Slide 22

Page 99: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Example of a Set Partitioning Problem

Suppose S = 1, 2, . . . ,m andT = (1, 2), (1, 3, 5), (2, 4, 5), (3), (1), (4, 5). Ignore objectivefunction for the example – there are many possibilities.

A cover for S would be (1,2), (1,3,5), and (4,5) with a cost of 3.Another cover for S would be (1,3,5), and (2,4,5) with a cost of 2.

Let δi =

1 if member i of T is in the partition0 otherwise

subject to δ1 +δ2 +δ5 = 1δ1 +δ3 = 1

δ2 +δ4 = 1+δ3 +δ6 = 1

δ2 +δ3 +δ6 = 1

IND E 599 Notes 5 Slide 23

Page 100: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Summarize Set Covering, Packing and PartitioningProblems

The defining constraints of set covering, packing, and partitioningmodels deal with subcollections of problem objects. Coveringconstraints demand that at least one member of each subcollectionbelongs to a solution, packing constraints allow at most onemember, and partitioning constraints require exactly one member.

IND E 599 Notes 5 Slide 24

Page 101: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Summarize Set Covering, Packing and PartitioningProblems

Using binary variables δi for i ∈ T ;

Set covering constraints requiring that at least one member ofsubcollection T belongs to a solution are expressed by

∑i∈T δi ≥ 1

Set packing constraints requiring that at most one member ofsubcollection T belongs to a solution are expressed by

∑i∈T δi ≤ 1

Set partitioning constraints requiring that exactly one member ofsubcollection T belongs to a solution are expressed by

∑i∈T δi = 1

IND E 599 Notes 5 Slide 25

Page 102: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

More to come in next set of notes:

I Knapsack problem

I Traveling salesman problem

I Quadratic assignment problem

I Facility location problem

I Scheduling and sequencing problems (e.g. job shop)

IND E 599 Notes 5 Slide 26

Page 103: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Notes 6: Job Shop Scheduling Models

IND E 599

October 20, 2010

IND E 599 Notes 5 Slide 1

Page 104: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Job Shop Scheduling

Job shop scheduling problems seek an optimal schedule for a givencollection of jobs, each of which requires a known sequence ofprocessors that can accommodate only one job at a time

Example (Job Shop)

Suppose there are 3 jobs waiting to be scheduled. Job 1 requireswork on a sequence of 5 workstations: 1 (forging), 2 (machining),3 (grinding), 4 (polishing) and 6 (electric discharge cutting. Job 2requires work on a sequence of 4 workstations: 7 (heating), 1(forging), 2 (machining) and 3 (grinding). Job 3 requires work ona sequence of 5 workstations: 2 (machining), 5 (drilling), 6(electric discharge cutting) and 4 (polishing). Suppose the processtimes are given as

pj ,k

the processing time (in minutes) of job j on processor k .

IND E 599 Notes 5 Slide 2

Page 105: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Typical Decision Variables and Objective Function

The typical decision variables for job shop scheduling problems are:

xj ,k

the start time of job j on processor k

A common objective function is to minimize makespan (minimizethe maximum completion time of all jobs)

Example (Job Shop - minimize makespan)

min maxx1,6 + p1,6, x2,3 + p2,3, x3,4 + p3,4

Remember how to model min max?Introduce new variable, z , and minimize z withz ≥ x1,6 + p1,6, z ≥ x2,3 + p2,3, and z ≥ x3,4 + p3,4

IND E 599 Notes 5 Slide 3

Page 106: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Precedence Constraints

To ensure that a job is scheduled in the pre-specified sequence,start times are subject to precedence constraints.

The precedence requirement that job j must complete processingon processor k before starting on processor k can be expressed as

xj ,k + pj ,k ≤ xj ,k

Example (Precedence constraints for Job 2 (processors7-1-2-3))

x2,7 + p2,7 ≤ x2,1

x2,1 + p2,1 ≤ x2,2

x2,2 + p2,2 ≤ x2,3

IND E 599 Notes 5 Slide 4

Page 107: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Conflict Constraints

To ensure that jobs are not scheduled simultaneously on the sameprocessor, we may model conflicts by introducing binary variables:

yj ,j ′,k =

1 if job j is scheduled before job j ′ on processor k0 otherwise

For each j and j ′ that both require any processor k, include theconstraint pair

xj ,k + pj ,k ≤ xj ′,k + M(1− yj ,j ′,k)

xj ′,k + pj ′,k ≤ xj ,k + Myj ,j ′,k

for a large positive constant M

IND E 599 Notes 5 Slide 5

Page 108: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Example (Conflict constraints for Jobs 1, 2 and 3 on Processor2)

x1,2 + p1,2 ≤ x2,2 + M(1− y1,2,2) (1)

x2,2 + p2,2 ≤ x1,2 + My1,2,2 (2)

x1,2 + p1,2 ≤ x3,2 + M(1− y1,3,2) (3)

x3,2 + p3,2 ≤ x1,2 + My1,3,2 (4)

x2,2 + p2,2 ≤ x3,2 + M(1− y2,3,2) (5)

x3,2 + p3,2 ≤ x2,2 + My2,3,2 (6)

Check:

I if Job 1 uses Processor 2 first, then y1,2,2 = 1 = y1,3,2, andconstraints (1) and (3) are enforced.

I if Job 2 uses Processor 2 first, then y1,2,2 = 0 and y2,3,2 = 1,and constraints (2) and (5) are enforced.

IND E 599 Notes 5 Slide 6

Page 109: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Due Dates

For job j , let dj represent the due date. Due date constraints maybe added for the last processor T as

xj ,T + pj ,T ≤ dj

however, there may be no feasible schedule. Due dates are morecommonly handled as goals, rather than as explicit constraints.Then,

xj ,T + pj ,T + s−j − s+j = dj

and

I minimize maximum tardiness, min maxjs+j or

I minimize mean tardiness, min 1n

∑nj=1s

+j

IND E 599 Notes 5 Slide 7

Page 110: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Notes 7: Knapsack and Traveling SalesmanProblems

IND E 599

October 26, 2010

IND E 599 Notes 5 Slide 1

Page 111: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Knapsack Problem

An integer program with a single constraint. A hiker is trying to filla knapsack to maximize value, with a volume or weight constraint.Practical applications include project selection, capital budgetingallocation, stocking a warehouse, and the cutting stock problem.

Example (Knapsack Problem)

maximize p1γ1 + p2γ2 + · · ·+ pnγn

a1γ1 + a2γ2 + · · ·+ anγn ≤ bγ1, γ2, . . . , γn ≥ 0 and integer− valued

Knapsack problems can be solved using column-generationmethods or dynamic programming fairly efficiently, although theyare NP-complete.

IND E 599 Notes 5 Slide 2

Page 112: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Multi-dimensional Knapsack Problem

May have multiple resources being consumed, or budget limits overtime periods, yielding several constraints.

Example (Multiple Constraints)

A department store is considering 4 possible expansions in ashopping mall. The following table shows how much (in millions ofdollars) each expansion would cost in the next 2 years, and therequired floor space (in thousands of square feet).

Expansion1 2 3 4

Year 1 1.5 5.0 7.3 1.9Year 2 3.5 1.8 6.0 4.2

Space 2.2 9.1 5.3 8.6

Suppose 10 million dollars are available in each of 2 years, and theexpansion cannot exceed 17 thousand square feet.

IND E 599 Notes 5 Slide 3

Page 113: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Example

Let xj =

1 if expansion j is selected0 otherwise

for j = 1, . . . , 4

Model three constraints:

1.5x1 + 5.0x2 + 7.3x3 + 1.9x4 ≤ 10 Year 1 Budget3.5x1 + 1.8x2 + 6.0x3 + 4.2x4 ≤ 10 Year 2 Budget2.2x1 + 9.1x2 + 5.3x3 + 8.6x4 ≤ 17 Floor Space

IND E 599 Notes 5 Slide 4

Page 114: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Cutting Stock Problem

I Suppose we have large rolls of paper of width W , and demandfor bi rolls of width wi , for i = 1, . . . ,m

I The are a LOT of possible patterns

I For pattern j , let Aj describe the pattern, where aij is thenumber of repetitions of width wi in the roll.

I Pattern j is feasible if∑m

i=1 aijwi ≤W . The difference is thescrap associated with the pattern.

Pattern 1,A1 =

110

, || − −w1 −−| − −− w2 −−− |scrap||

Pattern 2,A2 =

012

, ||−−−w2−−−|−w3−|−w3−|scrap||

IND E 599 Notes 5 Slide 5

Page 115: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Cutting Stock Problem

Let xj be the number of rolls of paper cut with pattern j .

minimize∑n

j=1 xj

subject to∑n

j=1 aijxj = bi for i = 1, . . . ,m

xj ≥ 0 and integer− valued

The total number of possible patterns is huge, even for relativelysmall m.The delayed column-generation method only generates thecolumns Aj when needed.

IND E 599 Notes 5 Slide 6

Page 116: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Traveling Salesman Problem (TSP)

A salesman wants to visit all of his customers in the minimumdistance travelled (or time) without visiting any one customertwice. Practical applications include vehicle routing, jobsequencing, and circuit design.

Symmetric TSP if distance from city i to city j equals the distancefrom city j to city i , that is, dij = dji , otherwise it is an asymmetricTSP.

There are many ways to formulate the TSP as an integer program.Any solution is called a tour.

Eliminating subtours is a difficulty.

IND E 599 Notes 5 Slide 7

Page 117: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

TSP as an Integer Program

Let δij =

1 if the tour goes from i to j0 otherwise

for i , j = 1, . . . , n

minimize∑n

i=1

∑nj=1 dijδij distance traveled (or time, or cost)

subject to

I exactly one city must be visited after city i∑nj=0,j 6=i δij = 1 for i = 1, . . . , n

I exactly one city must be visited before city j∑ni=0,i 6=j δij = 1 for j = 1, . . . , n

However, these constraints are not enough to eliminate subtours.Draw Figure 9.5 on board.

IND E 599 Notes 5 Slide 8

Page 118: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Subtours

It is easy to understand subtours, but difficult to create constraintsto prevent them.One form of subtour elimination constraints is obtained from anyS - a proper subset of the cities.Every tour must cross between points in S and points outside of Sat least twice. This leads to constraints of the form:

I number of legs between points in S and points not in S is ≥ 2∑i∈S

∑j 6∈S δij +

∑i 6∈S

∑j∈S δij ≥ 2

I There is one constraint for every proper subset of S of at least3 cities.

I Potentially, there are an exponential number of such subtourelimination constraints. They are not stated explicitly, butadded as needed.

IND E 599 Notes 5 Slide 9

Page 119: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Notes 8: Back to Chapter 5

IND E 599

November 1, 2010

IND E 599 Notes 8 Slide 1

Page 120: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Linear, Integer, and Non-linear Models

Many types of applications:

I Economic models, sometimes called input-output or Leontiefmodels (section 5.2)

I Network models, including transportation and assignmentproblems (section 5.3)

I Theory of games (we will skip)

IND E 599 Notes 8 Slide 2

Page 121: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Types of applications

I Petroleum industry, uses distribution, resource allocation,blending and marketing models

I Chemical industry, blending and resource allocation modelsI Manufacturing, such as product mix, resource allocation,

multi-period and blending modelsI Transport and distribution, including transportation,

transshipment, networks, schedulingI Finance, such as portfolio selection, price setting, revenue

managementI Agriculture, such as farm management including product

mix, multi-period, blending, distribution, pricingI Health, including resource allocation, scheduling, policy

planning, and treatmentI Mining, such as blending, resource allocation, multi-periodI Manpower (personnel) planning, including recruitment,

retention, promotion, training

IND E 599 Notes 8 Slide 3

Page 122: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

More applications

I Food, blending, distribution, resource allocation

I Energy, resource allocation, distribution, near real-time

I Pulp and paper, including blending, cutting-stock problem,resource allocation

I Advertising, scheduling, pricing

I Defense, resource allocation, distribution, design

I Forestry management, resource allocation, investment,multi-period, distribution

I Data envelopment analysis

Consider multi-objective and uncertainty too.

IND E 599 Notes 8 Slide 4

Page 123: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Economic Models

Input-output models, also referred to as Leontief models: identifyinputs to an industry, and resulting outputs

This can be helpful in identifying decision variables, andmeasurable outputs for constraints and objectives

Consider the coke production problem (Homework 3, Problem 5)

Static vs dynamic input-output models: extend to multi-periodmodels, but consider steady state assumptions versus finite horizonimplications

IND E 599 Notes 8 Slide 5

Page 124: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Network Models

I Use of network models are widespread — transportationnetworks, communication networks, electrical networks, socialnetworks, financial networks ....

I Several optimization problems in production, distribution,project planning, facility location, resource management,financial planning etc. have a “network representation” whichprovides a powerful visual and conceptual tool to tackle theseproblems.

I Some special types of network optimization models include:transportation problems, assignment problems, shortest-pathproblems, minimum spanning tree problems, maximum flowproblems, minimum cost flow problems.

I There are many specialized algorithms for networkoptimization models.

IND E 599 Notes 8 Slide 6

Page 125: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Example of a Transportation Problem

A non-profit organization manages three warehouses (W1,W2,W3)and four healthcare centers (HC1, HC2, HC3, HC4). Theorganization has estimated the requirements for a specific vaccineat each healthcare center in number of boxes of vials. Theorganization knows the number of boxes of vials available at eachwarehouse. They want to decide how many boxes of vials to shipfrom the warehouses to the healthcare centers so as to meet thedemand for the vaccine at minimum total shipping cost. Theshipping costs per box for W-HC pairs are as follows:

HC1 HC2 HC3 HC4 AVAILABILITY

W1 464 513 654 867 75

W2 352 416 690 791 125

W3 995 682 388 685 100

REQUIREMENT 80 65 70 85 300

IND E 599 Notes 8 Slide 7

Page 126: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

IND E 599 Notes 8 Slide 8

Page 127: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Prototypical Formulation

Let xij be the number of boxes shipped from warehouse i tohealthcare center j .

min Z = 464x11 + 513x12 + 654x13 + 867x14 +

352x21 + 416x22 + 690x23 + 791x24 +

995x31 + 682x32 + 388x33 + 685x34

x11 + x12 + x13 + x14 = 75

x21 + x22 + x23 + x24 = 125

x31 + x32 + x33 + x34 = 100

x11 + x21 + x31 = 80

x12 + x22 + x32 = 65

x13 + x23 + x33 = 70

x14 + x24 + x34 = 85

xij ≥ 0, (i = 1, 2, 3; j = 1, 2, 3, 4).

IND E 599 Notes 8 Slide 9

Page 128: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Transportation Problems

1

2

3

1

2

1 2 … n Supply

1 c11 c12 … c1n s1

2 c21 c22 … c2n s2

… … … … … …

m cm1 cm2 … cmn sm

d1 d2 … dn

Source

Destination

Cost per unit distributed

Demand

I m suppliers (or sources) and n consumers (or destinations).I ith supplier provides si units and jth consumer demands dj

units. We assume the network is balanced, that is,m∑

i=1si =

n∑j=1

dj . If not, add dummy nodes.

I Transport of one unit from supplier i to consumer j costs cij .I Goal: transport the goods from the suppliers to the consumers

at minimum cost.I xij = the amount of goods transported from the ith supplier

to the jth consumer.IND E 599 Notes 8 Slide 10

Page 129: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Parameter Table for a Transportation Problem

1 2 … n Supply

1 c11 c12 … c1n s1

2 c21 c22 … c2n s2

… … … … … …

m cm1 cm2 … cmn sm

d1 d2 … dn

Source

Destination

Cost per unit distributed

Demand

IND E 599 Notes 8 Slide 11

Page 130: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Network Representation of a Transportation Problem

IND E 599 Notes 8 Slide 12

Page 131: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

LP Formulation of a Transportation Problem

Let xij be the number of units to be distributed from source i todestination j , for i = 1, 2 . . . , m and j = 1, . . . , n.

min Z =m∑

i=1

n∑j=1

cijxij

n∑j=1

xij = si , for i = 1, . . . ,m

m∑i=1

xij = dj , for j = 1, . . . , n,

xij ≥ 0 for i = 1, . . . ,m, j = 1, . . . , n.

Note the special structure of the problem.

IND E 599 Notes 8 Slide 13

Page 132: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Integrality of the Transportation Model

If si for i = 1, . . . ,m and dj for j = 1, . . . , n are integer valued,then the optimal solution x∗ij is guaranteed to be integer valued!

This is due to the special structure of the problem - the A matrixsatisfies a property called total unimodularity.

IND E 599 Notes 8 Slide 14

Page 133: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Assignment Problems

Suppose patients are assigned to physicians. To accomplish this,each patient submits a number for each physician, often called the“mismatch index.” A high mismatch index implies the patientthinks the physician would not be a good fit, whereas a low indexnumber implies the physician is preferred. Thus, the task is toassign patients to physicians to minimize the total mismatch. Hereis a small example:

Patient A Patient B Patient C

Dr. 1 5 2 2

Dr. 2 1 1 3

Dr. 3 2 4 1

IND E 599 Notes 8 Slide 15

Page 134: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Assignment Problems

A special case of the transportation problem.

I Each supplier has unit supply (si = 1) and each consumer hasunit demand (dj = 1).

I The number of suppliers is equal to the number of consumers(or dummy nodes can be added).

I It turns out that one can always find an optimal solution tothe assignment problem where every xij is either zero or one.

I This implies that for every i there will be a unique anddistinct j for which xij = 1, and we can say that supplier i isassigned to consumer j .

IND E 599 Notes 8 Slide 16

Page 135: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Assignment problem: There are n people available to carry out njobs. Each person must be assigned to carry out exactly one job.The cost of assigning person i to job j is cij . The problem is tofind a minimum cost assignment.We use xij = 1 if person i is assigned to job j , and 0 otherwise.

minn∑

i=1

n∑j=1

cijxij

n∑j=1

xij = 1 ∀i

n∑i=1

xij = 1 ∀j

xij ∈ 0, 1, ∀i , j .

The binary constraint is guaranteed by the special structure of theproblem!

IND E 599 Notes 8 Slide 17

Page 136: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Notes 9: Finish Chapter 5

IND E 599

November 3, 2010

IND E 599 Notes 9 Slide 1

Page 137: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Production Planning as a Transportation Problem

Example (Ex. 2, Production Planning)

A company produces a commodity in two shifts (regular andovertime) to meet demand over the next 4 months. Givenproduction capacities, demand forecast, costs of production(regular and overtime), and storage costs, determine how much toproduce each month to satisfy demand.

IND E 599 Notes 9 Slide 2

Page 138: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Data for Production Planning Problem

COSTS

Jan. Feb. March April CAPACITY

Jan. regular 1.0 1.3 1.6 1.9 100

Jan. overtime 1.5 1.8 2.1 2.4 50

Feb. regular – 1.0 1.3 1.6 150

Feb. overtime – 1.5 1.8 2.1 75

Mar. regular – – 1.0 1.3 140

Mar. overtime – – 1.5 1.8 70

April. regular – – – 1.0 160

April. overtime – – – 1.5 80

DEMAND 80 200 300 200 –

Note: This is a transportation problem with 8 sources and 4 sinks.However, it is not balanced because the total demand is 780 andthe total capacity is 825. Add a sink 5 for “surplus demand” of 45.

IND E 599 Notes 9 Slide 3

Page 139: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Decision Variables for Production Planning Problem

Let xij be the units to be produced during period i and delivered inmonth j , for i =Jan-reg, Jan-ot, Feb-reg, Feb-ot, Mar-reg,Mar-ot, Apr-reg, Apr-ot and for j =Jan, Feb, March, April,Surplus

Notice that the optimal solution will be integer-valued!

There are very efficient algorithms for the transportation problem.

IND E 599 Notes 9 Slide 4

Page 140: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Transshipment Problem

The transshipment problem is an extension of the transportationproblem, where shipments can go from any source to anydestination through intermediate nodes.

See Figure 5.2 and Table 5.5 (page 80)

The transshipment problem is a special case of the minimum costflow problem.

IND E 599 Notes 9 Slide 5

Page 141: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Minimum Cost Flow Problem

Example (Ex. 3, Min Cost Flow)

Consider the network in Figure 5.3 (draw on board), withavailabilities of 10 and 15 at the two sources, requirements of 9, 10and 6 at the three sinks, and a cost (per unit flow) on each arc.

Find the flow through the network that satisfies the requirementsat minimum cost.

IND E 599 Notes 9 Slide 6

Page 142: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Minimum Cost Flow Formulation

Consider a graph G = (N, A) with node set N and arc set A.Suppose the cost (per unit flow) along arc (i , j) is denoted cij .

Let xij be the flow from node i to node j , along arc (i , j).

minn∑

i=1

n∑j=1

cijxij

∑j :(i ,j)∈A

xij −∑

j :(j ,i)∈A

xji =

si for source nodes i0 for intermediate nodes i−ri for sink nodes i

We may also have an upper bound uij on flow along arc (i , j), thenadd constraints:

0 ≤ xij ≤ uij , ∀(i , j) ∈ A

IND E 599 Notes 9 Slide 7

Page 143: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Min Cost Flow Problems

The material balance constraints are very common, and ensurethat flow-in equals flow-out.

The matrix of coefficients in the balance constraints is called thenode-arc incidence matrix, or just incidence matrix.

The special structure of the node-arc incidence matrix has theproperty that ensures integer solutions, if the rhs is integer-valued.

IND E 599 Notes 9 Slide 8

Page 144: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Network Flow Problems

I A minimum cost multi-commodity network flow problem doesnot have the integrality property

I A generalized network flow problem, or a network flow withgains, may alter the flow between two nodes. For example, amultiplier along an arc can alter flow to represent evaporation,wastage, or application of interest rates.

IND E 599 Notes 9 Slide 9

Page 145: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Shortest Path Problem

Example

The network below shows cost incurred by a truck company todrive a truck from one city to another. Find the cheapest routefrom New York to Los Angeles.

New York

Cleaveland

St. Louis

Nashville

Phoenix

Dallas

Salt Lake City

Los Angeles

400

950

800

1100

900

1800

900

600

600

1200

1000

1300

400

600

IND E 599 Notes 9 Slide 10

Page 146: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Shortest Path Problem

The shortest path problem is a special case of the min cost flowproblem with 1 unit of supply at the source node, and 1 unitrequired at the sink node.

1

2

3

5

4

6

8

7

9

There are very efficient algorithms, most notably, Dijkstra’salgorithm (1959).

IND E 599 Notes 9 Slide 11

Page 147: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Maximum Flow Problem

Maximize flow through a network from a source node to a sinknode, when arcs have capacity limitations.

At the source, all arcs point away from the node. At the sink, allarcs point into the node. The remaining nodes are “transshipmentnodes”. The numbers written next to directed arcs in maximumflow problems are arc capacities and not costs.

Example

Find the maximum flow that can be sent through the networkbelow from source O to sink T .

IND E 599 Notes 9 Slide 12

Page 148: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Maximum Flow Applications

I Maximize the flow through a company’s distribution networkfrom its factories to its customers.

I Maximize the flow through a company’s supply network fromits vendors to its factories.

I Maximize the flow of oil through a system of pipelines.

I Maximize the flow of water through a system of aqueducts.

I Maximize the flow of vehicles through a transportationnetwork.

IND E 599 Notes 9 Slide 13

Page 149: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Maximum Flow Formulation

As in the min cost flow problem, consider a graph G = (N, A) withnode set N and arc set A, and an upper bound uij on flow alongeach arc (i , j). Now, let s be the source node and t be theterminal (or sink) node. Find the largest possible amount of flowfrom s to t on the network.

Let xij be the flow from node i to node j , along arc (i , j).

max∑

i :(i ,t)∈A

xit∑j :(i ,j)∈A

xij −∑

j :(j ,i)∈A

xji = 0 ∀i ∈ N/s, t,

0 ≤ xij ≤ uij , ∀(i , j) ∈ A.

IND E 599 Notes 9 Slide 14

Page 150: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Critical Path Analysis

This is a common network formulation to help in constructionprojects, also called critical path method (CPM). Each arcrepresents a task, or activity, and each node is the possible starttime for the task. The network represents precedence relationshipsbetween tasks. Draw Figure 5.8 on board.

IND E 599 Notes 9 Slide 15

Page 151: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Critical Path Formulation for Example in Figure 5.8

Decision variables:t0 is start time for activities 0-1, 0-3, and 0-2t1 is start time for activity 1-3t2 is start time for activity 2-5t3 is start time for activity 3-4t4 is start time for activities 4-2 and 4-5t5 is start time for activity 5-6z is finish time for the project

IND E 599 Notes 9 Slide 16

Page 152: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Critical Path Formulation for Example in Figure 5.8

minimize zsubject to −t0 + t1 ≥ 4

−t0 + t2 ≥ 12−t0 + t3 ≥ 7−t1 + t3 ≥ 2

−t3 + t4 ≥ 10t2 − t4 ≥ 0−t2 + t5 ≥ 5

−t4 + t5 ≥ 3−t5 + z ≥ 4

IND E 599 Notes 9 Slide 17

Page 153: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Optimal Solution for Example in Figure 5.8

Project completion time, z∗ = 26 dayst0 = 0 is start time for activities 0-1, 0-3, and 0-2t1 = 4 is start time for activity 1-3t2 = 17 is start time for activity 2-5t3 = 7 is start time for activity 3-4t4 = 17 is start time for activities 4-2 and 4-5t5 = 22 is start time for activity 5-6Critical path is 0-3-4-2-5-6

IND E 599 Notes 9 Slide 18

Page 154: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Review for Take-home Midterm

Text: Model Building in Mathematical Programming

I Chapter 1: Introduction, Concept of an Optimization Model,Linear Program Examples (Product Mix, Blending)

I Chapter 2: Solving Mathematical Programming Models (UseAIMMS in this Class)

I Chapter 3: Building Linear Programming Models

I Chapter 4: Structured Linear Programming Models (SKIP)

I Chapter 5: Applications and Special Types of MathematicalProgramming Model - many applications and network models

I Chapter 6: Interpreting and Using the Solution of a LinearProgramming Model - shadow prices, ranging and sensitivityanalysis

I Chapter 7: Non-linear Models (SKIP)

I Chapter 8: Integer Programming

I Chapter 9: Building Integer Programming Models I

IND E 599 Notes 9 Slide 19

Page 155: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Notes 10: Uncertainty

IND E 599

November 10, 2010

IND E 599 Notes 10 Slide 1

Page 156: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Incorporating Uncertainty into Optimization Models

There is a lot of research on this topic!

There are a lot of applications, primarily in the financial world, butalso in traditional industrial engineering like supply chain andinventory.

We will discuss:

I chance-constrained programming (CCP)

I scenario-based stochastic programming with recourse

I robust optimization

IND E 599 Notes 10 Slide 2

Page 157: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Consider Demand Constraints with Uncertainty

minimize production costs subject to meeting demandwhere

∑j ajxj represents the amount produced

Example (Deterministic Demand Constraint)∑j

ajxj ≥ d

Suppose demand d is uncertain. We could model demand with arandom variable D and a cumulative probability distributionFD(d) = P(D ≤ d) = ε

(Draw a density and cumulative distribution on board withε = 0.95)

IND E 599 Notes 10 Slide 3

Page 158: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Chance Constraint

Example (Probabilistic Demand Constraint)

P

∑j

ajxj ≥ D

≥ εP

D ≤∑

j

ajxj

= FD(∑

j

ajxj) ≥ ε

∑j

ajxj ≥ F−1D (ε)

Note that the constraint is still linear. The interpretation of thesensitivity analysis (right-hand side ranging, shadow price) is interms of probability, not actual demand. Use the probabilitydistribution (may be estimated with historical data) to relateprobabilities to demand values.

IND E 599 Notes 10 Slide 4

Page 159: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Scenario-based Distribution

Suppose demand D has a discrete probability distribution,estimated with 3 scenarios:

P(D = d) =

0.1 if d = d1 (scenario 1)0.7 if d = d2 (scenario 2)0.2 if d = d3 (scenario 3)

We could easily write∑

j ajxj ≥ d2 to ensure a probability of 0.80of meeting demand, but suppose our costs include penalties forbeing above or below demand.

IND E 599 Notes 10 Slide 5

Page 160: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Minimize Expected Costs with Scenario-based Demand

Example (Scenario-based Demand)

Minimize∑

j

cjxj +∑

s

ps

(ey (s) + fz(s)

)∑

j

ajxj − y (s) + z(s) = ds for s = 1, 2, 3

where∑

j cjxj represents the production costs, p1 = 0.1, p2 = 0.7,

p3 = 0.2 are the scenario probabilities, y (s) is excess productionunder scenario s, z(s) is shortfall under scenario s, e penalizesbeing over demand, and f penalizes being under demand.

This is a scenario-based stochastic program (SP) with simplerecourse.

IND E 599 Notes 10 Slide 6

Page 161: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Add a Second Stage with Recourse to the Formulation

Suppose after the initial production decision x , the demandscenario is observed ds and another decision can be made xs .

Example (Two-stage Stochastic Program with Recourse)

Minimize cT x +∑

s

ps (Qs(x , ds))

subject to Ax ≤ b, x ≥ 0

where

Qs(x , ds) = min

qTs xs | Ws xs ≤ ds + Tsx , xs ≥ 0

IND E 599 Notes 10 Slide 7

Page 162: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Examples of 2-stage SP with Recourse

I monthly decisions as 1st stage, daily modifications as 2ndstate

I facility location as 1st stage, distribution as 2nd stage

I route planning as 1st stage, modifications as 2nd stage

I emergency planning (preparedness) as 1st stage, response as2nd stage

I financial investments, long-term as1st stage, and withadaptations

IND E 599 Notes 10 Slide 8

Page 163: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Solution Techniques for SP with Recourse

A straightforward approach is to convert the SP problem into itsdeterministic equivalent. This usually has a block structure thatmay be able to be solved efficiently.

Many specialized algorithms have been (and are being) developedmaking use of the block structure and Bender’s decomposition orDantzig-Wolfe decomposition.

IND E 599 Notes 10 Slide 9

Page 164: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Literature on Stochastic Programming

Committee on Stochastic Programming (COSP) home page:http://stoprog.org/

Case Studies:http://www.rug.nl/feb/mhvandervlerk/spcourse/cases09.pdf

I Multi-Period Production Planning

I WaterManagement in the Bodrog River Area

I Budgeting Cost of Nursing in a Hospital

I Growing Maize and Sorghum in Kilosa District

I Product Mix Problem

I Investment Planning for Electricity Generation

I Multi-stage Asset Liability Management (ALM) for PensionFunds

I Optimizing the Timetable of the Haarlem-Maastricht RailwayConnection

IND E 599 Notes 10 Slide 10

Page 165: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Books on Stochastic Programming

I John R. Birge and Franois V. Louveaux. Introduction toStochastic Programming. Springer Verlag, New York, 1997.

I Peter Kall and Stein W. Wallace. Stochastic Programming.Wiley, Chichester, 1994. Wiley has released the copyright onthe book, and the authors made the text available to thescientific community. It can be downloaded for free: firstedition, second edition

I Peter Kall and Janos Mayer. Stochastic Linear Programming:Models, Theory, and Computation. International Series inOperations Research & Management Science, Vol. 80,Springer, 2005.

I Kurt Marti. Stochastic Optimization Methods. Springer,2005.

I Andras Prekopa. Stochastic Programming. Kluwer AcademicPublishers, Dordrecht, 1995.

IND E 599 Notes 10 Slide 11

Page 166: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Books on SP, continued

I Andrzej Ruszczynski and Alexander Shapiro (eds.). StochasticProgramming. Handbooks in Operations Research andManagement Science, Vol. 10, Elsevier, 2003.

I Stein W. Wallace and William T. Ziemba (eds.). Applicationsof Stochastic Programming. MPS-SIAM Book Series onOptimization 5, 2005.

I Alexander Shapiro, Darinka Dentcheva and AndrzejRuszczynski. Lectures on Stochastic Programming: Modelingand Theory (MPS-SIAM Series on Optimization), publishedby SIAM, Philadelphia, 2009.

IND E 599 Notes 10 Slide 12

Page 167: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Yield Management 12.24, 13.24, 14.24

An airline is selling tickets for flights to a particular destination.The flight will depart in 3 weeks’ time. It can use up to 6 planes,each costing 50,000 to hire. Each plane has:

I 37 First class seats

I 38 Business class seats

I 47 Economy class seats

Up to 10% of seats in any one category can be transferred to anadjacent category.

The airline wishes to decide a price for each of these seats. Theymay update these prices after one week and two weeks. Once acustomer has purchased a ticket there is no cancellation option.

IND E 599 Notes 10 Slide 13

Page 168: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Yield Management - Pricing Options

For administrative simplicity, three pricing options have beenidentified for each period (low, medium, high), and are given inTable 12.16 (page 257).

Demand is uncertain but will be affected by price. Forecasts havebeen made based on 3 scenarios in each period, with probabilitiesp1 = 0.1, p2 = 0.7, and p3 = 0.2. The forecast demands are givenin Table 12.17 (page 258).

For this problem, hindsight is given in Table 12.18; at thebeginning of the next period, the demand for the price optionchosen in the previous period is observable.

IND E 599 Notes 10 Slide 14

Page 169: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Yield Management

Decide:

I price levels (options) for the current period,

I how many seats to sell in each class (depending on demand),

I the provisional number of planes to book and provisional pricelevels and seats to sell in future periods

in order to maximize expected yield.

You should schedule to be able to meet commitments under allpossible combinations of scenarios.

IND E 599 Notes 10 Slide 15

Page 170: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Yield Management SP Formulation - 13.24

Develop a three-period stochastic programming model.

1. Solving the model for the first time will give recommendedprice levels and sales three weeks from departure, andrecommended price levels and sales for subsequent weeksunder all possible scenarios.

2. A week later the model will be rerun, taking into account thecommitted sales and revenue in the first week, to redeterminerecommended prices and sales for the second week (i.e. withrecourse) and the third week under all possible scenarios.

3. Repeat the procedure a week later.

IND E 599 Notes 10 Slide 16

Page 171: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Yield Management SP Formulation - 13.24

Variables:

I p1ch = 1 if price option h is chosen for class c in week 1, 0otherwise, for c = 1, 2, 3, and h = 1, 2, 3

I p2ich = 1 if price option h is chosen for class c in week 2 as aresult of scenario i in week 1, 0 otherwise, for c = 1, 2, 3,h = 1, 2, 3, and i = 1, 2, 3

I p3ijch = 1 if price option h is chosen for class c in week 3 as aresult of scenario i in week 1 and scenario j in week 2, 0otherwise, for c = 1, 2, 3, h = 1, 2, 3, and i , j = 1, 2, 3

Similarly,

I s1ich is number of tickets sold in week 1 for class c under priceoption h and scenario i ,

I s2ijch

I s3ijkch

IND E 599 Notes 10 Slide 17

Page 172: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

More Variables

Similarly,

I r1ich is revenue in week 1 from class c under price option hand scenario i ,

I r2ijch

I r3ijkch

I uijkc is slack capacity in class c under scenarios i , j , k insuccessive weeks

I vijkc is excess capacity in class c under scenarios i , j , k insuccessive weeks

I n is number of planes to fly.

IND E 599 Notes 10 Slide 18

Page 173: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Data and Objective Function

I Qi is the probability of scenario i , i = 1, 2, 3

I P and D with appropriate subscripts are given prices anddemands for time periods, scenarios, classes and options, i.e.P1ch,P2ch,P3ch and D1ich,D2jch,D3kch

I Cc is the seat capacity per plane for class c

Objective: maximize expected yield

max∑i ,c,h

Qi r1ich +∑

i ,j ,c,h

QiQj r2ijch +∑

i ,j ,k,c,h

QiQjQk r3ijkch − 50n

IND E 599 Notes 10 Slide 19

Page 174: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Constraints

For a particular price option and under each scenario, the salescannot exceed the estimated demand and the revenue must be theproduct of the price and the sales:

r1ich − P1chs1ich ≤ 0

P1chs1ich − r1ich + P1chD1ichp1ch ≤ P1chD1ich for all i , c , h

r2ijch − P2chs2ijch ≤ 0

P2chs2ijch − r2ijch + P2chD2jchp2ich ≤ P2chD2jch for all i , j , c, h

r3ijkch − P3chs3ijkch ≤ 0

P3chs3ijkch − r3ijkch + P3chD3kchp3ijkch ≤ P3chD3kch for all i , j , k , c, h

IND E 599 Notes 10 Slide 20

Page 175: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

More Constraints

Seat capacities must be abided by for all scenarios:

s1ich + s2ijch + s3ijkch + uijkc − vijkc − Ccn ≤ 0 for all i , j , k , c

Seat adjustment is possible between classes:

uijkc − 0.1Cc ≤ 0

vijkc − 0.1Cc ≤ 0 for all i , j , k , c∑c

uijkc −∑

c

vijkc = 0 for all i , j , k

IND E 599 Notes 10 Slide 21

Page 176: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Even More Constraints

Exactly one price option must be chosen in each class under eachset of scenarios: ∑

h

p1ch = 1 for all c∑h

p2ich = 1 for all i , c∑h

p3ijch = 1 for all i , j , c

IND E 599 Notes 10 Slide 22

Page 177: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Last Set of Constraints

Numbers sold cannot exceed demand:

s1ich ≤ D1ichp1ch for all i , c , h

s2ijch ≤ D2jchp2ich for all i , j , c , h

s3ijkch ≤ D3kchp3ijkch for all i , j , k, c , h

Up to six planes can be flown:

n ≤ 6

All p variables must be 0-1 integer, and n ≥ 0 must be integer.The s, r , u, v variables must be non-negative, and may be treatedas continuous (s may be rounded to integer values)

IND E 599 Notes 10 Slide 23

Page 178: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Yield Management - Solution

First Run: chooses the highest price option (1) for all classes forperiod 1, with maximum number of seats as 45, 45, 55 for First,Business and Economy classes, respectively. It also providesprovisional price options for periods 2 and 3 under all scenarios.Provisionally, book three planes. Expected revenue is 169, 544

Second Run - use the demand given as hindsight for period 1:chooses price options low, high, high (3, 1, 1) for period 2, withmaximum number of seats as 50, 60, 50 for First, Business andEconomy classes, respectively. It also provides provisional priceoptions for period 3 under all scenarios.Provisionally, still book three planes. Expected revenue is 172, 969

Third Run - use the demand given as hindsight for periods 1 and 2:chooses price options high, medium, high (1, 2, 1) for period 3,with maximum number of seats as 40, 25, 36 for First, Businessand Economy classes, respectively.Provisionally, still book three planes. Expected revenue is 176, 392

IND E 599 Notes 10 Slide 24

Page 179: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Compare to Model Without Recourse

If the model is altered to maximize yield subject to expecteddemand (normal deterministic model without recourse), threeplanes are still needed, and for the first period the price options arethe same (high, high, high), however the number of seats in thefirst period are fewer (24, 39, 50).The revenue is less than that found with the SP with Recourse.

IND E 599 Notes 10 Slide 25

Page 180: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Introductory Journal Article on Stochastic Programming

Next lecture, I’ll upload and discuss a nice introductory article:Sensitivity Analysis and Uncertainty in Linear Programming, JuliaL. Higle and Stein W. Wallace, Interfaces, Vol. 33, No. 4, July –August 2003, pp. 53-60

IND E 599 Notes 10 Slide 26

Page 181: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Notes 11: Sensitivity Analysis and Uncertainty

IND E 599

November 15, 2010

IND E 599 Notes 11 Slide 1

Page 182: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Introductory Journal Article on Stochastic Programming

Discuss the following introductory article:

Sensitivity Analysis and Uncertainty in Linear Programming, JuliaL. Higle and Stein W. Wallace, Interfaces, Vol. 33, No. 4, July –August 2003, pp. 53-60

IND E 599 Notes 11 Slide 2

Page 183: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

LP and Sensitivity Analysis

I Most LP models rely on large amounts of data, much ofwhich represents “best-guess” estimates

I Sensitivity analysis, shadow prices, and parametricprogramming are useful to explore how solutions change asdata elements vary

I However, sensitivity analysis is typically aimed at adeterministic problem

I To plan under uncertainty, it is “critical to properly reflect themanner in which decision and information are interspersed”

I Identify the times at which decisions are madeI Identify what will be known and what will remain uncertain

when the decisions are made

I “Typically, LP models do not offer such a reflection. As aconsequence, the results of sensitivity analyses can bemisleading.”

IND E 599 Notes 11 Slide 3

Page 184: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Simple Example

Product mix problem: manufacture desks, tables and chairsA desk sells for $60, a table for $40, and a chair for $10. Themanufacture of each type of furniture requires lumber and twotypes of skilled labor: carpentry and finishing.

ExampleResource Cost ($) Desk Table Chair

Lumber (board feet) 2 8 6 1Carpentry (hours) 5.2 2.0 1.5 0.5Finishing (hours) 4 4 2 1.5

Profit ($) 60 40 10Demand 150 125 300

IND E 599 Notes 11 Slide 4

Page 185: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Straightforward LP

Decision variables:yd number of desks to produceyt number of tables to produceyc number of chairs to producexl number of board feet of lumber to acquirexc number of labor hours to acquire for carpentryxf number of labor hours to acquire for finishingsd number of desks to sellst number of table to sellsc number of chairs to sell

IND E 599 Notes 11 Slide 5

Page 186: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Formulation (P0)

max −2xl − 5.2xc − 4xf +60sd + 40st + 10scs.t.

−xl +8yd + 6yt + yc ≤ 0−xc +2yd + 1.5yt + 0.5yc ≤ 0−xf +4yd + 2yt + 1.5yc ≤ 0

sd ≤ 150sd −yd ≤ 0

st ≤ 125st −yt ≤ 0

sc ≤ 300sc −yc ≤ 0

xl , xf , xc , yd , yt , yc , sd , st , sc ≥ 0

IND E 599 Notes 11 Slide 6

Page 187: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Basic LP

This formulation is more than is necessary for this basic LP,however it explicitly identifies the sequence of three decisions:

1. Acquire resources (xl , xc , xf )

2. Produce items (yd , yt , yc)

3. Sell items (sd , st , sc)

It is assumed that all data is available before any of these decisionsare made.

With this assumption, a sensitivity analysis can be conducted toexplore the “robustness” of a solution to inaccuracies in the data.

The sensitivity analysis to (P0) indicates that the strategy toproduce as many desks and tables that can be sold, but do notproduce any chairs is valid for any set of non-negative demands.

IND E 599 Notes 11 Slide 7

Page 188: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Uncertainty in the Demand Data

Suppose demand is uncertain, but low, most likely, and high valuesare available (3 scenarios):

Item Low Most Likely High Expected

Desks 50 150 250 150Tables 20 110 250 125Chairs 200 225 500 300

Probability 0.3 0.4 0.3

Let

I s ∈ l , m, h represents scenario, for low, most likely and high

I Dds be demand for desks under scenario s

I Dts be demand for tables under scenario s

I Dcs be demand for chairs under scenario s

I pl , pm, ph are probabilities of scenarios low, most likely andhigh

IND E 599 Notes 11 Slide 8

Page 189: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

When is the uncertain demand revealed?

I (P1) Demand is determined before acquiring resources, andbefore production (e.g. made to order)

I (P2) Demand is determined after acquiring resources andafter production (e.g. only know demand at time of sales)

I (P3) Demand is determined after acquiring resources, butbefore production (e.g. intermediate process, whereproduction schedule can be adapted once orders are known)

IND E 599 Notes 11 Slide 9

Page 190: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Formulation (P1)

If demand is known at the start, “our decisions are not exposed touncertainty” – all decisions are made with respect to a scenario(add scenario subscript to all variables)

max∑

s∈l ,m,h

(−2xls − 5.2xcs − 4xfs + 60sds + 40sts + 10scsps)

−xls +8yds + 6yts + ycs ≤ 0−xcs +2yds + 1.5yts + 0.5ycs ≤ 0

−xfs +4yds + 2yts + 1.5ycs ≤ 0sds ≤ Dds

sds −yds ≤ 0sts ≤ Dts

sts −yts ≤ 0scs ≤ Dcs

scs −ycs ≤ 0

xls , xfs , xcs , yds , yts , ycs , sds , sts , scs ≥ 0 for all s ∈ l , m, hIND E 599 Notes 11 Slide 10

Page 191: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Formulation (P1)

Formulation (P1) is separable by scenario, and we can obtainscenario-specific solutions independently. Only the objectivefunction combines the scenarios in expected profit.

Notice the difference between (P1), where scenario-specificsolutions are available, and (P0), where a single solution isdetermined based on the expected demand.

IND E 599 Notes 11 Slide 11

Page 192: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Formulation (P2)

If demand is known after acquisition and production decisions,then only sales variables have a scenario subscript

max− 2xl − 5.2xc − 4xf +∑

s∈l ,m,h

(60sds + 40sts + 10scsps)

−xl +8yd + 6yt + yc ≤ 0−xc +2yd + 1.5yt + 0.5yc ≤ 0

−xf +4yd + 2yt + 1.5yc ≤ 0sds ≤ Dds

sds −yd ≤ 0sts ≤ Dts

sts −yt ≤ 0scs ≤ Dcs

scs −yc ≤ 0

xl , xf , xc , yd , yt , yc , sds , sts , scs ≥ 0 for all s ∈ l , m, h

IND E 599 Notes 11 Slide 12

Page 193: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Formulation (P2)

Formulation (P2) is NOT separable by scenario, and acquisition xand production y decisions must be made before demand is known

Notice the difference between (P2) and (P1): in (P2) theacquisition and production decisions must be made to account forthe three separate scenarios on how much can be sold.

(P2) is also different from (P0) because the weighted profit/costassociated with each demand scenario is included in the objectivefunction.

IND E 599 Notes 11 Slide 13

Page 194: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Formulation (P3)

The intermediate situation, where demand is known afteracquisition and before production decisions, then production andsales variables have a scenario subscript

max− 2xl − 5.2xc − 4xf +∑

s∈l ,m,h

(60sds + 40sts + 10scsps)

−xl +8yds + 6yts + ycs ≤ 0−xc +2yds + 1.5yts + 0.5ycs ≤ 0

−xf +4yds + 2yts + 1.5ycs ≤ 0sds ≤ Dds

sds −yds ≤ 0sts ≤ Dts

sts −yts ≤ 0scs ≤ Dcs

scs −ycs ≤ 0

xl , xf , xc , yds , yts , ycs , sds , sts , scs ≥ 0 for all s ∈ l , m, hIND E 599 Notes 11 Slide 14

Page 195: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Formulation (P3)

Formulation (P3) is NOT separable by scenario.

Acquisition decisions x must be made before demand is known,however production decisions yds , yts , ycs can be adapted to thedemand. An example would be where acquisition of raw materialshas a long lead time, so that decision must be made very early, butthe actual production would begin once orders are made (demandis known).

(P3) is also appropriate when the acquired resources can be usedto create products for which there is demand.

IND E 599 Notes 11 Slide 15

Page 196: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Compare Solutions (P0), (P1), (P2) and (P3)

IND E 599 Notes 11 Slide 16

Page 197: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Compare Solutions (P0), (P1), (P2) and (P3)

I (P0) is overly optimistic and a deterministic sensitivityanalysis does not provide the insight of the other models.

I (P1) provides the optimal solution to each scenario - whichmay be useful for planning purposes.

I (P1) is also optimistic – it assumes demand is known ahead oftime – as if a crystal ball or perfect information.

I (P2) is preferable to (P0) because it balances the “potentialsunk cost” of producing items that cannot be sold with the“potential revenue” from selling a larger number of items.

I The expected profit from (P2) is lower than that from (P0),because the uncertainty is being accounted for.

IND E 599 Notes 11 Slide 17

Page 198: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Compare Solutions (P0), (P1), (P2) and (P3)

I (P3) is the only model where chairs are produced at all, andonly in the low demand scenario. Although chairs on theirown are not profitable, when the acquired resources are a sunkcost, the chairs provide an opportunity to recoup these costs,and can be viewed as a fallback position.

I The expected profit from (P3) exceeds that from (P2), whichis not surprising, because it is almost always economicallyadvantageous to delay decisions until all the information isknown.

IND E 599 Notes 11 Slide 18

Page 199: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Alternate Objective Functions

Is expected profit the best objective function to use?

Table 5 in article demonstrates that expected profit does notdistinguish between alternatives with different profit distributions.The 3 alternatives have the same expected value, but most peoplewould attribute different levels of risk.

A utility function is one way to encapsulate the trade-off betweenexpected profit and risk.

Coming up: article on risk measures, and hand-out on multipleobjectives.

IND E 599 Notes 11 Slide 19

Page 200: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Notes 12: Multi-objective Optimization

IND E 599

November 17, 2010

IND E 599 Notes 12 Slide 1

Page 201: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Multi-objective Optimization

Discuss the two chapters on multi-objective optimization from:

Winston, Chapter 11.13, Pareto Optimality and Trade-off Curves,in Operations Research, 4th edition, 2004

Rardin, Chapter 8, Multiobjective Optimization and GoalProgramming, in Optimization in Operations Research, 1998

IND E 599 Notes 12 Slide 2

Page 202: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Multi-objective and Pareto Optimality

minimize f1(x), f2(x), . . . , fm(x)

subject to x ∈ S

where x ∈ S ⊂ Rn1 × Zn2 and each fi maps S → R fori = 1, . . . , m and m ≥ 2

DefinitionA point x∗ ∈ S is Pareto optimal if there does not exist anotherpoint x ∈ S such that fi (x) ≤ fi (x∗) for all i = 1, . . . , m andfj(x) < fj(x∗) for at least one j ∈ 1, . . . , m.

IND E 599 Notes 12 Slide 3

Page 203: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Dominated and Non-dominated Solutions

DefinitionA feasible solution x ∈ S dominates another feasible solution y ∈ Sif x is at least as good as y with respect to every objectivefunction, that is fi (x) ≤ fi (y) for all i = 1, . . . , m, and is strictlybetter with respect to at least one objective function, that isfj(x) < fj(y) for at least one j ∈ 1, . . . , m.The set of Pareto optimal solutions is the set of non-dominatedsolutions. A Pareto optimal solution is also called an efficient point.

The trade-off curve or efficient frontier is the graph of the (usuallytwo) objective functions for all Pareto optimal points.

IND E 599 Notes 12 Slide 4

Page 204: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Example of Pareto optimal set and Efficient Frontier

Example

Two convex objective functions and a single integer variable

(P2) min f1(x) = x2 − 80x + 1700

min f2(x) = x2 − 120x + 3800

s.t. x ∈ Z ∩ [0, 100]

fi(x) f2f1 f2(x)

x f1(x)

Pareto optimal set

Efficientfrontier

IND E 599 Notes 12 Slide 5

Page 205: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Profit Pollution Trade-off Curve

Chemco is considering producing 3 products. Information is givenfor the per-unit contribution of labor requirements, raw material,profit and pollution. Let xi be the number of units of product i toproduce, i = 1, 2, 3

I Objective 1: profit = 10x1 + 9x2 + 8x3

I Objective 2: pollution = 10x1 + 6x2 + 3x3

max 10x1 + 9x2 + 8x3 profitmin 10x1 + 6x2 + 3x3 pollutions.t.

4x1 + 3x2 + 2x3 ≤ 1, 300 Labor3x1 + 2x2 + 2x3 ≤ 1, 000 Raw material

x1, x2, x3 ≥ 0

IND E 599 Notes 12 Slide 6

Page 206: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Piece-wise Linear Trade-off Curve

1. First, ignore pollution, and maximize profit subject to laborand raw material constraints: solution isx1 = 0, x2 = 300, x3 = 200 and Profit=4,300, Pollution=2,400

2. Next, add a pollution constraint:

10x1 + 6x2 + 3x3 ≤ POLL

and set POLL=2,300 (Profit=4,266.67)

3. Set POLL=2200, 2100, 2000, ... and graph (POLL, Profit)

(Draw trade-off curve on board.)

IND E 599 Notes 12 Slide 7

Page 207: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Another Example

Proctor and Ramble places ads on football games and soap operas.If F one-minute ads are placed on football games, and Sone-minute ads are place on soap operas, then the number of menand women reached (in millions) and cost is given. P&R has a $1million advertising budget and wants to maximize the number ofmen and the number of women who see its ads (2 objectives).

max 20√

F + 4√

S men reached

max 4√

F + 15√

S women reacheds.t.

100F + 60S ≤ 1, 000 Budget

F , S ≥ 0

IND E 599 Notes 12 Slide 8

Page 208: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Nonlinear Trade-off Curve

1. First, ignore women reached, and maximize men reachedsubject to budget constraint: solution is F = 9.38, S = 1.04and women, men reached = (27.55, 65.32).

2. Second, ignore men reached, and maximize women reachedsubject to budget constraint: women, men reached = (62.5, )

3. Next, add a nonlinear constraint:

4√

F + 15√

S ≥W

and solve with W = 30, 35, 40, . . . , 55, 60 and 62.5

(Draw trade-off curve on board.)

IND E 599 Notes 12 Slide 9

Page 209: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Trade-off Curve Procedure, or ε-Method, for 2 Objectives

I Choose one objective, and optimize it alone (value=v1).Determine the other objective function value at the solution(value = v2). The point (v1, v2) is on the trade-off curve, orefficient frontier.

I Choose the second objective, and optimize it alone(value=v2). Determine the first objective function value atthe solution (value = v1). The point (v1, v2) determines theother endpoint of the trade-off curve.

I Keep the first objective, and add the second objectivefunction to the set of constraints, and vary its righthand sidefrom v2 to v2 to produce more points on the efficient frontier.

When there are more than two objectives, you can keep one as theobjective and add the others in as constraints, and vary therighthand sides to explore the efficient frontier and Pareto optimalset.

IND E 599 Notes 12 Slide 10

Page 210: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

More Examples

I Bank investment example with 8 variables and 3 objectives:I maximize profit,I minimize capital-adequacy ratio (ratio of required capital to

actual capital)I minimize illiquid risk assets

I Dynamometer ring design with 3 variables and 2 objectives:I maximize sensitivityI maximize rigidity

I Hazardous waste disposal with about 45 variables and 2objectives:

I minimize distanceI minimize population

IND E 599 Notes 12 Slide 11

Page 211: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

I Efficient points in a 2-dimensional domain and efficientfrontier with 2 objectives

I Preemptive Optimization: Illustrate on Bank InvestmentExample

I Weighted Sum of Objectives: Illustrate on Hazardous WasteExample

I Goal Programming

IND E 599 Notes 12 Slide 12

Page 212: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Notes 14: Risk in Optimization

IND E 599

December 1, 2010

IND E 599 Notes 14 Slide 1

Page 213: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Risk in Optimization

Discuss Prof. Rockafellar’s tutorial on risk:

R. T. Rockafellar, Coherent Approaches to Risk in Optimizationunder Uncertainty, in Tutorials in Operations Research, INFORMS2007

IND E 599 Notes 14 Slide 2

Page 214: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Optimization under Uncertainty

I Sensitivity analysis and parametric programming

I Chance constraints

I Stochastic programming

I Robust optimization

How to capture RISK?

IND E 599 Notes 14 Slide 3

Page 215: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

What is Risk?

Definition (Risk - from on-line dictionary)

1. Hazard; danger; peril; exposure to loss, injury, or destruction.The imminent and constant risk of assassination, a risk whichhas shaken very strong nerves.

2. Hazard of loss; liability to loss in property.To run a risk; to incur hazard; to encounter danger.

I To expose to risk, hazard, or peril; to venture; as, to risk goodson board of a ship; to risk one’s person in battle; to risk one’sfame by a publication.

I To incur the risk or danger of; as, to risk a battle.

Risk: Combination of the likelihood of an occurrence of ahazardous event or exposure(s) and the severity of injury or illhealth that can be caused by the event or exposure(s)

IND E 599 Notes 14 Slide 4

Page 216: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Risk versus Uncertainty: According to Wikipedia, Risk,Uncertainty, and Profit, Frank Knight (1921)

Uncertainty must be taken in a sense radically distinct from thefamiliar notion of Risk, from which it has never been properlyseparated. The term “risk,” as loosely used in everyday speech andin economic discussion, really covers two things which, functionallyat least, in their causal relations to the phenomena of economicorganization, are categorically different. ... The essential fact isthat “risk” means in some cases a quantity susceptible ofmeasurement, while at other times it is something distinctly not ofthis character; and there are far-reaching and crucial differences inthe bearings of the phenomenon depending on which of the two isreally present and operating. ... It will appear that a measurableuncertainty, or “risk” proper, as we shall use the term, is so fardifferent from an unmeasurable one that it is not in effect anuncertainty at all.

IND E 599 Notes 14 Slide 5

Page 217: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Another distinction between risk and uncertainty is proposed inHow to Measure Anything: Finding the Value of Intangibles inBusiness and The Failure of Risk Management: Why It’s Brokenand How to Fix It by Doug Hubbard:

I Uncertainty: The lack of complete certainty, that is, theexistence of more than one possibility. The “true”outcome/state/result/value is not known.

I Measurement of uncertainty: A set of probabilities assigned toa set of possibilities. Example: There is a 60% chance thismarket will double in five years.

I Risk: A state of uncertainty where some of the possibilitiesinvolve a loss, catastrophe, or other undesirable outcome.

I Measurement of risk: A set of possibilities each withquantified probabilities and quantified losses. Example: Thereis a 40% chance the proposed oil well will be dry with a lossof $12 million in exploratory drilling costs.

IND E 599 Notes 14 Slide 6

Page 218: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Many situations where decisions must be made “before thefacts are in”

I Financial OptimizationI Markowitz model of portfolio selectionI Sharpe ratio combining expected return and variance

I Agriculture

I Building a facility

I Preparing for an emergency (earthquake, flood)

I Designing a bridge, airplane, roads

I Health care

IND E 599 Notes 14 Slide 7

Page 219: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Example (Deterministic Model (1.1))

minimize c0(x)over all x ∈ S

satisfying ci (x) ≤ 0 for i = 1, . . . ,m

Instead of ci (x), suppose we have ci (x , ω) where ω ∈ Ω representsfuture states of knowledge (e.g. scenarios, or probability space).Now consider a collection of functions

c i (x) : ω → ci (x , ω) for i = 0, . . . ,m

Treat c i (x) as random variables!

How should risk be taken into account?How do we interpret the constraints? the objective function?Introduce safety margins? Protect against undesired outcomes?

No conceptual distinction should be made between thetreatment of the objective function c0 and the constraintfunctions c1, . . . , cm

IND E 599 Notes 14 Slide 8

Page 220: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Example (Stochastic Model)

minimize c0(x)over all x ∈ S

satisfying c i (x) ≤ 0 for i = 1, . . . ,m

Must reinterpret the constraints and objective function.

Some traditional approaches that condense the random variablesthat depend on x back to numbers that depend on x .

IND E 599 Notes 14 Slide 9

Page 221: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Approach 1: Guessing the Future

Identify a single element ω ∈ Ω as the best guess of the unknowninformation, and

minimize c0(x , ω)over all x ∈ S

satisfying ci (x , ω) ≤ 0 for i = 1, . . . ,m

A solution x∗ fails to hedge against the uncertainty, and “puts allthe eggs in one basket.”

Another weakness is that small changes in ω (e.g. change inscenario) may result in large changes in the solution. Thus, thedangers of not hedging could be compounded by instability.

IND E 599 Notes 14 Slide 10

Page 222: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Approach 2: Worst-Case Analysis

A conservative approach is to prepare for the worst:

minimize supω∈Ω c0(x , ω)over all x ∈ S

satisfying supω∈Ω ci (x , ω) ≤ 0 for i = 1, . . . ,m

A solution x∗ ensures that all constraints are satisfied, no matterwhat the future may bring (robust optimization). The goal is to“eliminate all risk” but there is a price for that.

A weakness is that the feasible set may be empty. There is nosolution that is feasible under ALL possibilities.

Must find a balance between the practicality of x and the chancethat the resulting design could be overpowered by some extremeevent.

IND E 599 Notes 14 Slide 11

Page 223: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Approach 3: Relying on Expectations

Use the expectation of the random variable ci (x) to create anumber that depends on x :

minimize E [c0(x)]over all x ∈ S

satisfying E [c i (x)] ≤ 0 for i = 1, . . . ,m

This seems normal for the objective function, but “ridiculous” forthe constraints. Who would be satisfied if a constraint (e.g. safetyof a structure) was satisfied on the average?

Expectations are suitable for situations modeling long-runbehavior, where stochastic ups and downs can average out.

Not appropriate when there is a short-run focus with serious risksto be accounted for.

IND E 599 Notes 14 Slide 12

Page 224: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Approach 4: Standard Deviation Units as Safety Margins

Use the standard deviation to ensure that the expected value isreassuringly below 0:

minimize µ[c0(x)] + λ0σ[c0(x)]over all x ∈ S

satisfying µ[c i (x)] + λiσ[c i (x)] ≤ 0 for i = 1, . . . ,m

The major flaw in this approach is that it lacks a property calledcoherency.

IND E 599 Notes 14 Slide 13

Page 225: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Approach 5: Probabilities of Compliance

Use probabilistic or chance constraints that the inequalities holdand move objective function into a constraint:

minimize xn+1

over all x ∈ S and xn+1 ∈ <satisfying Pr [c i (x) ≤ 0] ≥ αi for i = 1, . . . ,m

Pr [c0(x) ≤ xn+1] ≥ α0

This condenses a random variable into a number – in terms ofquantiles, and value-at-risk (VaR). The αi -quantile must be ≤ 0.

A drawback is that there is no account for the magnitude ofconstraint violations. When c i (x) > 0, which occurs withprobability 1− αi , is it a mere inconvenience, or a disaster?

A major flaw in this approach is that it lacks a property calledcoherency.

IND E 599 Notes 14 Slide 14

Page 226: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Other Approaches

I Constraint Consolidation: put all random variables into one,such as c(x , ω) = maxc1(x , ω), . . . , cm(x , ω) and then use achance constraint on c(x)

I Stochastic Programming: use recourse decisions to positionthe present to be able to respond well in the future.Stochastic programming traditionally uses expectation,however “improvements may need to be considered.”

I Dynamic Programming: focuses on many future stages –perhaps an infinite number of stages – and is concerned with“policies for controlling an uncertain system”

I Penalty Staircases: create a penalty function with thresholds,and min E [penalty(c0(x)], or incorporate penalty into chanceconstraints

IND E 599 Notes 14 Slide 15

Page 227: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Quantification of Risk

Risk is associated with having to make a decision without fullyknowing its consequences, due to future uncertainty, but alsoknowing that some of those consequences might be bad, or at leastundesirable relative to others.

1. To many people, risk represents the degree of uncertainty(deviation from a constant) (measures of deviation)

2. To other people, risk is a surrogate for overall cost (e.g.mean, median, or worst value) (measures of the risk of loss)

IND E 599 Notes 14 Slide 16

Page 228: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Use a surrogate for risk of loss in optimization

“The core of the difficulty in optimization under uncertainty is thefact that a random variable is not, in itself, a single quantity.”

A strategy for optimization is to condense the random variable intoa single quantity that measures the risk of loss.

For a random variable X , assign a value R(X ) to quantify the riskof loss.

(Draw on board the idea of optimizing a tolerance box, as analternative)

IND E 599 Notes 14 Slide 17

Page 229: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Convert Stochastic Model using R(X )

Convert the stochastic model in terms of random variables to amodel using R(X ):

Example (Stochastic Model)

minimize c0(x)over all x ∈ S

satisfying c i (x) ≤ 0 for i = 1, . . . ,m

Example (Risk of Loss Model)

minimize R0(c0(x))over all x ∈ S

satisfying Ri (c i (x)) ≤ 0 for i = 1, . . . ,m

IND E 599 Notes 14 Slide 18

Page 230: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

What properties should R(X ) have to be a good quantifier of therisk of loss?

IND E 599 Notes 14 Slide 19

Page 231: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Coherent Measures of Risk

R(X ) is a coherent measure of risk in the extended sense if:

I (R1) R(C ) = C for all constants C ,

I (R2) R((1− λ)X + λX ′) ≤ (1− λ)R(X ) + λR(X ) forλ ∈ (0, 1) convexity

I (R3) R(X ) ≤ R(X ′) when X ≤ X ′ monotonicity

I (R4) R(X ) ≤ 0 when ||X k − x ||2 → 0 with R(X k) ≤ 0closedness

and is a coherent measure of risk in the basic sense if it alsosatisfies:

I (R5) R(λX ) = λR(X ) for λ > 0 positive homogeneity

IND E 599 Notes 14 Slide 20

Page 232: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Properties (R1), (R2) and (R3)

Property (R1), R(C ) = C for all constants C , implies thatR(0) = 0, and condenses a random variable with the sameoutcome C to a single surrogate value of C .

Properties (R1) and (R2) imply that

R(X + C ) = R(X ) + C

Property (R3), R(X ) ≤ R(X ′) when X ≤ X ′, provides an orderingon risk of loss. If X (ω) ≤ X ′(ω) almost surely in the future statesω, the risk of loss seen in X should not exceed the risk of loss seenin X ′, with respect to R

IND E 599 Notes 14 Slide 21

Page 233: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Subadditivity

Properties (R2) with (R5) lead to subadditivity,

R(X + X ′) ≤ R(X ) + R(X ′)

which is a key property lacking in approaches popular in finance

Interpretation: when X and X ′ are loss variables for two differentportfolios, the total risk of loss should be reduced, or at least notmade worse, when the portfolios are combined into one

This refers to diversification, or risk-pooling in supply chain

Property (R2) says that forming a weighted combination of twoportfolios should not increase overall loss potential. Otherwise,there might be something “gained by partitioning a portfolio intoincreasingly smaller fractions”

IND E 599 Notes 14 Slide 22

Page 234: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Pros and cons regarding VaR - from Wikipedia

A common complaint among academics is that VaR is notsubadditive. That means the VaR of a combined portfolio can belarger than the sum of the VaRs of its components. To apracticing risk manager this makes sense. For example, the averagebank branch in the United States is robbed about once every tenyears. A single-branch bank has about 0.004% chance of beingrobbed on a specific day, so the risk of robbery would not figureinto one-day 1% VaR. It would not even be within an order ofmagnitude of that, so it is in the range where the institutionshould not worry about it, it should insure against it and takeadvice from insurers on precautions.

IND E 599 Notes 14 Slide 23

Page 235: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

The whole point of insurance is to aggregate risks that are beyondindividual VaR limits, and bring them into a large enough portfolioto get statistical predictability. It does not pay for a one-branchbank to have a security expert on staff. As institutions get morebranches, the risk of a robbery on a specific day rises to within anorder of magnitude of VaR. At that point it makes sense for theinstitution to run internal stress tests and analyze the risk itself. Itwill spend less on insurance and more on in-house expertise. For avery large banking institution, robberies are a routine dailyoccurrence. Losses are part of the daily VaR calculation, andtracked statistically rather than case-by-case. A sizable in-housesecurity department is in charge of prevention and control, thegeneral risk manager just tracks the loss like any other cost ofdoing business.

IND E 599 Notes 14 Slide 24

Page 236: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

As portfolios or institutions get larger, specific risks change fromlow-probability/low-predictability/high-impact to statisticallypredictable losses of low individual impact. That means they movefrom the range of far outside VaR, to be insured, to near outsideVaR, to be analyzed case-by-case, to inside VaR, to be treatedstatistically.

Even VaR supporters generally agree there are common abuses ofVaR.

IND E 599 Notes 14 Slide 25

Page 237: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Acceptable Risks

The risk of loss associated with a random variable X is acceptablewith respect to a choice of a coherent risk measure R whenR(X ) ≤ 0.

Property (R4) says that if a random variable X can beapproximated arbitrarily closely by acceptable random variablesX k , then X should be acceptable too.

IND E 599 Notes 14 Slide 26

Page 238: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Coherency in Optimization

TheoremSuppose the optimization problem uses Ri (c i (x)) fori = 0, 1, . . . ,m and each Ri is a coherent measure of risk in theextended sense. Then,

I (a) Preservation of convexity

I (b) Preservation of certainty

I (c) Insensitivity to scaling

IND E 599 Notes 14 Slide 27

Page 239: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Approach 1: Guessing the Future

Identify a single element ω ∈ Ω as the best guess of the unknowninformation, and assess the risk in c i (x) as R(c i (x)) with

R(X ) = X (ω) for some choice of ω having positive probability

This is a coherent measure of risk in the basic sense, but does notincorporate uncertainty into the optimization model

IND E 599 Notes 14 Slide 28

Page 240: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Approach 2: Worst-Case Analysis

A conservative approach is to prepare for the worst, and assess therisk in c i (x) as R(c i (x)) with

R(X ) = sup X

This is a coherent measure of risk in the basic sense, but is a veryconservative optimization model

IND E 599 Notes 14 Slide 29

Page 241: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Approach 3: Relying on Expectations

Use the expectation of the random variable, and assess the risk inc i (x) as R(c i (x)) with

R(X ) = µ[X ] = E [X ]

This is a coherent measure of risk in the basic sense, but requires along-run to balance out the positive and negative costs over time

IND E 599 Notes 14 Slide 30

Page 242: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Approach 4: Standard Deviation Units as Safety Margins

Use the standard deviation in combination with the expected value,and assess the risk in c i (x) as R(c i (x)) with

Ri (X ) = µ[X ] + λiσ[X ] for λi > 0

This is NOT a coherent measure of risk, the monotonicity property(R3) fails. An excellent substitute that preserves convexity is“conditional value-at-risk.”

IND E 599 Notes 14 Slide 31

Page 243: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Approach 5: Probabilities of Compliance

Use probabilistic or chance constraints, and assess the risk in c i (x)as R(c i (x)) with

Ri (X ) = qαi (X ) for αi ∈)0, 1)

the αi -quantile in the distribution of X .

This is NOT a coherent measure of risk, the convexity property(R2) fails. Even though (R5) holds, subadditivity is violated. Anexcellent substitute that preserves convexity is “conditionalvalue-at-risk.”

IND E 599 Notes 14 Slide 32

Page 244: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Value-at-Risk (VaR) and Conditional Value-at-Risk (CVaR)

The value-at-risk and α-quantile are identical:

VaRα(X ) = qα(X ) = minz |FX (z) ≥ α

The conditional value-at-risk is:

CVaRα(X ) = expectation of X in the conditional distributionof its upper α tail, so that

CVaRα(X ) ≥ VaRα(X ) always

Two other formulas for CVaR:

CVaRα(X ) =1

1− α

∫ 1

αVaRβ(X )dβ

minC∈<C + (1− α)−1E [max0,X − C]

(Draw graphs on board)IND E 599 Notes 14 Slide 33

Page 245: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Approach 6: Safeguarding with Conditional Value-at-Risk

CVaR is a coherent measure of risk in the basic sense and behavesbetter in optimization than VaR

For a choice of probability levels αi ∈ (0, 1) for i = 0, 1, . . . ,m,

minimize CVaRα0 [c0(x)]over all x ∈ S

satisfying CVaRαi [c i (x)] ≤ 0 for i = 1, . . . ,m

Approach 6 with CVaR is more cautious than Approach 5 with VaRCVaRαi [c i (x)] ≤ 0 means not merely that c i (x) ≤ 0 at least100αi% of the time, but that the average of the worst100(1− αi )% of all outcomes will be ≤ 0.

IND E 599 Notes 14 Slide 34

Page 246: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Computational Advantages to CVaR

There is a linear programming reformulation to the CVaR modelthat has many computational advantages.More on CVaR:

I Mixed CVaR and Spectral Profiles of Risk

I Safeguarding with mixtures of CVaR

I Duality considerations

I Aversity of CVaR and Mixed CVaR

IND E 599 Notes 14 Slide 35

Page 247: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Characterizations of Optimality

For a problem of the form:

minimize R0(c0(x))over all x ∈ S

satisfying Ri (c i (x)) ≤ 0 for i = 1, . . . ,m

with each Ri a coherent measure of risk, how can we characterizesolutions x∗?

Beyond the scope of this class, but work with subgradients ofRi (c i (x)), develop Lagrange multipliers and duality using the riskenvelopes. An active area of research.

Seminar on Thursday by Doug Martin on Utility and Risk

IND E 599 Notes 14 Slide 36

Page 248: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Notes 15: Review of Optimization Modeling

IND E 599

December 6, 2010

IND E 599 Notes 15 Slide 1

Page 249: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

UW Lab Medicine Projects

Your opportunity to go beyond “text-book” problems. Useoptimization models to gain insight into the system. Provide a wayto arrive at frequently made decisions, or decisions that are madeinfrequently but may have high impact.Outline for presentations and final report:

I First half (7.5 minutes):I Project objectives - provide insight into ...? or provide a tool

to ...? or inform decisions on ...?I Process to achieve those objectives (outline with high level

description of models, variations, analyses, what-if’s ...)I Models - clearly define variables, objective function and

constraints, data and parameters in our standard “mathprogramming” format

I Second half (7.5 minutes)I Insights from analyses: provide graphs, figures, tablesI Conclusion: How the models and analyses achieve the

objectivesI For the final report, put data tables and technical details in an

appendix. IND E 599 Notes 15 Slide 2

Page 250: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Review: Optimization Models

Familiarity with common optimization models, such as:

I Facility location,

I Vehicle routing,

I Job shop scheduling,

I Flow shop scheduling,

I Production scheduling (min make span, min max lateness),

I Knapsack/multi-knapsack,

I Traveling Salesman,

I Capacitated Assignment Problem,

I Set covering/packing,

I Network Flow,

I Shortest path, and

I Max flow.

IND E 599 Notes 15 Slide 3

Page 251: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

General Optimization Formulations

I Decision Variables

I Objective Function

I Constraints

I Data or parameters

Formulation

minimize f (x)subject to gj(x) ≤ bj , j = 1, . . . ,m1

hj(x) = 0, j = 1, . . . ,m2

xi ≥ 0, i = 1, . . . , nx1, x2 ∈ 0, 1 (binary variables)

Is a solution feasible? Unique optimum? Multiple optima?

IND E 599 Notes 15 Slide 4

Page 252: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Linear Programming

I Product mix

I Blending

I Mini-max

I Ratio of linear functions

I Piecewise linear functions

I Absolute value functions

When is LP appropriate? Allocation of scarce resources whenlinearity (proportionality, additivity, divisibility, certainty) holds.Often used for long-range strategic planning, but not forshort-term tactical decisions.

IND E 599 Notes 15 Slide 5

Page 253: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Computer Software for Optimization

Basically two categories:I Modeling Languages:

I AIMMSI AMPL (a math programming language)I GAMS (general algebraic modeling system)I LINDOI MatlabI Spreadsheets (Excel)

I Solvers:I ALPHAECP, APOPT, BARON, BDMLP, COIN-OR,

CONOPT, CPLEX, DECIS, DICOPT, FortMP, GUROBI,IPOPT, KNITRO, LINDOGLOBAL/LINGO, LGO, MILES,MINOS, MOSEK, MPSGE, MSNLP, NLPEC, OQNLP, PATH,SBB, SCIP, SNOPT, XA, XPRESS

IND E 599 Notes 15 Slide 6

Page 254: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Economic Interpretation

I Sensitivity Analysis and Parametric Programming

I Shadow Prices, Reduced Costs

I Right-hand side Ranging

I Multiple Optima

I Degeneracy, Redundant Constraints

I Visualize in 2 Dimensions

I Extreme point solution (LP)

I Interior point solution (NLP)

IND E 599 Notes 15 Slide 7

Page 255: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Integer Programming

Restrict decision variables to be integer (or binary) valuedMay change an “easy” to solve LP to an NP-hard IPApplications include:

I Set-up costs or set-up times, also called fixed-chargeI Logical conditions and disjunctive constraints

I Either-or constraintsI At least K out of N constraints satisfiedI Specific relations using “or” and “and”

I Set covering

I Set packing

I Set partitioning

IND E 599 Notes 15 Slide 8

Page 256: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

I Job-shop schedulingI Precedence constraintsI Conflict constraintsI Due datesI Minimize makespan, or minimize maximize tardiness

I Knapsack problem and multi-dimensional knapsack problem

I Cutting stock problem

I Traveling Salesman Problem

IND E 599 Notes 15 Slide 9

Page 257: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Network Type Problems

Many network models are LP’s with guaranteed integer solutions –and many specialized, very efficient algorithms

I Transportation problem

I Assignment problem

I Transshipment problem

I Minimum cost flow problem

I Shortest path problem

I Maximum flow problem

I Critical path method (CPM)

IND E 599 Notes 15 Slide 10

Page 258: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Multi-objective Optimization

I Pareto optimality

I Efficient frontier

I Goal progamming

IND E 599 Notes 15 Slide 11

Page 259: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

Incorporating Uncertainty

I chance-constrained programming

I scenario-based stochastic programming with recourse

I robust optimization

I sensitivity analysis related to stochastic programming

I coherent approaches to risk in optimization

IND E 599 Notes 15 Slide 12

Page 260: Notes 1: Introduction to Optimization Models - CBR Wikiwiki.cbr.washington.edu/qerm/sites/qerm/images/8/8c/INDE599.Notes.pdf · vehicle routing, job shop scheduling, ow shop scheduling,

More Optimization

Next step is to learn more about algorithms and the interactionbetween algorithms and models. For example, tradeoffs betweenaccuracy and computational efficiency. In your projects, you arealready experiencing this interaction.

Thank you for being a part of this course, and best of luck to youin the future, as you are now an “optimizer”.

IND E 599 Notes 15 Slide 13