Non-Linear Programming zSame structure yvariables yobjective function yconstraints zNo restrictions...

Preview:

Citation preview

Non-Linear Programming

Same structure variables objective function constraints

No restrictions Except 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!

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

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)

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

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

Diagram

Alaska 1

Alaska 2

Alaska Pool

Premium

Unlead

Reg.

Texas

Lead

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

Output Variables

Prem - Gals of Premium produced daily

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

Composition Variables

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

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

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

Constrain Volumes

Prem 5000Reg 5000NoL 5000Upper LimitsTexas 11000Lead 6000

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

Formulating NLPs

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

guarantees

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

Minimize Cost

Volume Purchased

Tot

al C

ost

Minimize Cost

Volume Purchased

Tot

al C

ost

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

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))

Minimize Cost

Volume Purchased

Tot

al C

ost

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

Maximize Profit

Volume Sold

Tot

al P

rofi

t

Maximize Profit

Volume Sold

Tot

al P

rofi

t

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

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))

Maximize Profit

Volume Sold

Tot

al P

rofi

t

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.

Tough Problems

Local Max

Local Max

Local Min Local Min

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

Convex Sets

Linear Programming Feasible regions

Non-convex Sets

Feasible Region of Integer Programs

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

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

Non-convex Sets are HardP

rofi

t

Volume Sold

Feasible