35
Non-Linear Programming Same structure variables objective function constraints No restrictions Except typically variables must be continuous

Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Embed Size (px)

Citation preview

Page 1: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Non-Linear Programming

Same structure variables objective function constraints

No restrictions Except typically variables must be

continuous

Page 2: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Examples

How to model binary variables x is 0 or 1 Equivalent continuous formulation

x(1-x) = 0 NOT LINEAR!

Page 3: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Location ProblemCustomer X Coordinate Y Coordinate Number of Shipments

1 5 10 2002 10 5 1503 0 12 2004 12 0 300

Variables

x is the X coordinate of the facility

y is the Y coordinate of the facility

Objective

Minimize Distance traveled to deliver goods

Constraints - None

Page 4: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Formulation

minimize200*sqrt((x-5)2 + (y-10)2) +150*sqrt((x-10)2 + (y-5)2) +200*sqrt((x-0)2 + (y-12)2) +300*sqrt((x-12)2 + (y-0)2)

Page 5: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

1

3

5

7

9

11

0 1 2 3 4 5 6 7 8 9

-

1.00

2.00

3.00

4.00

5.00

6.00

7.00

8.00

9.00

10.00

Page 6: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Pooling ProblemBlend crudes in pools

Blend Alaska 1 and Alaska 2Make products from the pools

Regular Unleaded Premium

Composition constraints on final products Premium 2.8% Sulfur 90 Octane Sells for $0.86/gal, minimum 5000 gals

Page 7: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Diagram

Alaska 1

Alaska 2

Alaska Pool

Premium

Unlead

Reg.

Texas

Lead

Page 8: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Input Variables Lead - gallons daily

LeadPrem - gallons of lead used in premium daily LeadReg - gallons of lead used in regular daily

Alaska - gallons of Alaska pool daily Alaska1 - gallons of Alaska 1 used in pool daily Alaska2 - gallons of Alaska 2 used in pool daily

AlaskaPrem - gals of Alaska pool used in prem. daily

AlaskaReg - gals of Alaska pool used in reg. daily

AlaskaNoL - gals of Alaska pool used in No lead daily

Texas - gallons of Texas used daily TexasPrem - gals of Texas used in prem. daily

TexasReg - gals of Texas used in reg. daily

TexasNoL - gals of Texas used in No lead daily

Page 9: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Output Variables

Prem - Gals of Premium produced daily

Reg- Gals of Regular produced dailyNoL - Gals of No Lead produced daily

Page 10: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Composition Variables

For convenienceAlaskaSulfur - sulfur content of Alaska poolAlaskaOctane- octane of Alaska pool

Page 11: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Constraints

Define Alaska Pool Alaska = Alaska 1 + Alaska 2 AlaskaSulfur = (4%*Alaska 1 + 1% * Alaska

2)/Alaska AlaskaOctane=(91*Alaska 1 + 97*Alaska

2)/Alaska

Use Alaska Pool Alaska = AlaskaPrem + AlaskaReg +

AlaskaNoL

Page 12: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Constraints Cont’dDefine Products Prem = AlaskaPrem+ TexasPrem + LeadPrem Reg = AlaskaReg+ TexasReg + LeadReg NoL = AlaskaNoL+ TexasNoL

Constrain Composition AlaskaSulfur*AlaskaPrem + .02*TexasPrem .028*Prem AlaskaSulfur*AlaskaNoL + .02*TexasNoL .03*NoL AlaskaSulfur*AlaskaReg + .02*TexasReg .03*Reg AlaskaOctane*AlaskaPrem + 83*TexasPrem 94*Prem AlaskaOctane*AlaskaNoL + 83*TexasNoL 88*NoL AlaskaOctane*AlaskaReg + 83*TexasReg 90*Reg

Page 13: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Constrain Volumes

Prem 5000Reg 5000NoL 5000Upper LimitsTexas 11000Lead 6000

Page 14: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Objective

Maximize ProfitRevenues from Products0.86*Reg + 0.93*NoL + 1.06*Prem Costs of Raw Materials0.78*Alaska 1 + 0.88*Alaska 2 + 0.75*Texas +

1.30*Lead

Page 15: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Formulating NLPs

As in the book No need for abstractionSome off the shelf software (MINOS)Requires more sophistication to useDoes not typically provide

guarantees

Page 16: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Getting Guarantees

When we can use an LP formulation with a non-linear objective

Minimize Cost and things get more expensive as we get more

Maximize Profit and profits decrease as we sell more

Page 17: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Minimize Cost

Volume Purchased

Tot

al C

ost

Page 18: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Minimize Cost

Volume Purchased

Tot

al C

ost

Page 19: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Easy Problem

The Cost Function lies below the linear approximation

No incentive to use any weights other than consecutive ones

Don’t need Integer Programming

Page 20: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Convex Function

Lies below the lineTechnically: A convex function has the

property that for each pair of points x and y and weight w between 0 and 1 the function evaluated at wx + (1-w)y (a fraction w of the way from y towards x) is wf(x) + (1-w)f(y) (the same fraction of the way from f(y) towards f(x))

Page 21: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Minimize Cost

Volume Purchased

Tot

al C

ost

Page 22: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Convex in 2 dimensions

1

3

5

7

9

11

0 1 2 3 4 5 6 7 8 9

-

1.00

2.00

3.00

4.00

5.00

6.00

7.00

8.00

9.00

10.00

Page 23: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Maximize Profit

Volume Sold

Tot

al P

rofi

t

Page 24: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Maximize Profit

Volume Sold

Tot

al P

rofi

t

Page 25: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Easy Problem

The Profit Function lies above the linear approximation

No incentive to use any weights other than consecutive ones

Don’t need Integer Programming

Page 26: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Concave Function

Lies above the lineTechnically: A concave function has the

property that for each pair of points x and y and weight w between 0 and 1 the function evaluated at wx + (1-w)y (a fraction w of the way from y towards x) is wf(x) + (1-w)f(y) (the same fraction of the way from f(y) towards f(x))

Page 27: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Maximize Profit

Volume Sold

Tot

al P

rofi

t

Page 28: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

What makes these easy

With no constraintsLocal Optimum is best in a small

neighborhood, e.g., as good as every point within epsilon of it.

Convex minimization: A local optimum is a global optimum, e.g., a best answer

Concave maximization: A local optimum is a global optimum.

Page 29: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Tough Problems

Local Max

Local Max

Local Min Local Min

Page 30: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Convex Sets

A set with the property that for every pair of points in the set, the line joining the points is in the set as well is a CONVEX SET

Points in a convex set can see each other

Page 31: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Convex Sets

Linear Programming Feasible regions

Page 32: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Non-convex Sets

Feasible Region of Integer Programs

Page 33: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Easy Problems

Convex Minimization over a convex set Objective is a convex function Constraints define a feasible region that

is a convex set

Any Local minimum is a global minimum

Page 34: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Easy Problems

Concave Maximization over a convex set Objective is a concave function Constraints define a feasible region that

is a convex set

Any Local maximum is a global maximum

Page 35: Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions yExcept typically variables must be continuous

Non-convex Sets are HardP

rofi

t

Volume Sold

Feasible