Paper review of ENGG*6140 Optimization Techniques

31
Paper review of ENGG*6140 Optimization Techniques Paper Paper Review Review -- Interior-Point Methods -- Interior-Point Methods for LP for LP Yanrong Hu Yanrong Hu Ce Yu Ce Yu Mar. 11, 2003 Mar. 11, 2003

description

Paper review of ENGG*6140 Optimization Techniques. Paper Review -- Interior-Point Methods for LP. Yanrong Hu Ce Yu Mar. 11, 2003. Outline. General introduction The original algorithm description A variant of Karmarkar’s algorithm - a detailed simple example - PowerPoint PPT Presentation

Transcript of Paper review of ENGG*6140 Optimization Techniques

Page 1: Paper review of ENGG*6140 Optimization Techniques

Paper review of ENGG*6140 Optimization Techniques

Paper ReviewPaper Review

-- Interior-Point Methods-- Interior-Point Methods

for LPfor LP

Yanrong HuYanrong Hu

Ce YuCe Yu

Mar. 11, 2003Mar. 11, 2003

Page 2: Paper review of ENGG*6140 Optimization Techniques

Outline

General introduction The original algorithm description A variant of Karmarkar’s algorithm

- a detailed simple example Another example More issues

Page 3: Paper review of ENGG*6140 Optimization Techniques

Interior-point methods for linear programming: The most dramatic new development in operations

research (linear programming) during the 1980s.

Opened in 1984 by a young mathematician at AT&T Bell Labs, N. Karmarkar.

Polynomial-time algorithm and has great potential for solving huge linear programming problems beyond the reach of the simplex method.

Karmarkar’s method stimulated development in both interior-point and simplex methods.

General introduction

Page 4: Paper review of ENGG*6140 Optimization Techniques

Difference between Interior point methods and the simplex method

The big difference between Interior point methods and the simplex method lies in the nature of trial solutions.

General introduction

Simplex method Interior-point method

Trial solutions

CPF (Corner Point Feasible) solutions

Interior points (points inside the boundary of the feasible region)

complexity

worst case:# iterations can increase exponentially in the number of variables n:

Polynomial time n2

Page 5: Paper review of ENGG*6140 Optimization Techniques

Karmarkar’s original Algorithm

Karmarkar assumes that the LP is given in Canonical form of the problem: 

0 X 1 1X 0 AX s.t.

CX zMin

Assumptions:0 zmin 2.

0 AX satisfies )1,...,1,1(X 1.

nnn

To apply the algorithm to LP problem in standard form, a transformation is needed.

Min Z = CX

s.t. AX b X 0

Page 6: Paper review of ENGG*6140 Optimization Techniques

Karmarkar’s original Algorithm

An example of transformation

Min z = y1+y2 (z=cy)

s.t. y1+2y2 2 (AYb)

y1, y2 0

Min z=5x1 + 5x2

s.t. 3x1+8x2+3x3-2x4=0 (AX=0)

x1+ x2+ x3+ x4=1 (1X =1)

xj 0, j=1,2,3,4

from standard form to canonical form

Page 7: Paper review of ENGG*6140 Optimization Techniques

Karmarkar’s original Algorithm

The principal idea:

The algorithm creates a sequence of points having decreasing values of the objective function. In the step, the point is brought into the center of the simplex by a projective transformation.

)()2()1()0( ,...,,, kxxxx

thk )(kx

Page 8: Paper review of ENGG*6140 Optimization Techniques

The steps of Karmarkar’s algorithm are:Step 0. start with the solution point

Step k. Define:   

)1,...,1,1(0 nnnX

1

...1

k

knkk

ADP

xxdiagD and compute:

newk

newkk

p

pTnew

Tk

TTp

YDYDX

cc

rnnn

Y

CDPPPPIc

1

)1,...,1,1(

)()(

1

1

and compute the step length parameters n

nnn

r3

)1( and )1(

1

Karmarkar’s original Algorithm

X is brought to the center by:

XDXDY

k

k1

1

1

Page 9: Paper review of ENGG*6140 Optimization Techniques

A Variant

The Affine Variant of Karmarkar’s Algorithm:

Concept 1: Shoot through the interiorinterior of the feasible region toward an

optimal solution.

Concept 2: Move in a direction that improves the objective function value

at the fastestfastest feasible rate.

Concept 3: TransformTransform the feasible region to place the current trail solution

near its centercenter, thereby enabling a large improvement when

concept 2 is implemented.

Page 10: Paper review of ENGG*6140 Optimization Techniques

An Example

Max Z= x1+ 2x2

s.t. x1+ x28

x1,x2 0Optimal solution

is (x1,x2)=(0,8)

with Z=16

The Problem:

Page 11: Paper review of ENGG*6140 Optimization Techniques

An Example

The direction is perpendiculars to (and toward) the objective function line. (3,4)=(2,2)+(1,2), where the vector (1,2) is the gradientgradient of the Objective Function. The gradient is the coefficientcoefficient of the objective function.

Concept 1: Shoot through the interior interior of the feasible region toward an optimal solution.

The algorithm begins with an initial solution that lies in the interiorinterior of the feasible region. Arbitrarily choose (x1,x2)=(2,2) to be the initial solution.

Concept 2: Move in a direction that improves the objective function value at the fastest fastest feasible rate.

Max Z= x1+ 2x2

s.t. x1+ x28

x1,x2 0

Page 12: Paper review of ENGG*6140 Optimization Techniques

An Example

The augmented form can be

written in general as:

000

0 [8],b 1], 1, [1,A ,x

x ,021

3

2

1

xxc

so

Max Z = cT X

s.t. AX = b

X 0 

The algorithm actually operates on the augmented form.

Max Z = x1+ 2x2

s.t. x1+ x2+ x3 = 8

x1,x2,x3 0

letting x3 be the slack Max Z = x1+ 2x2

s.t. x1+ x28

x1,x2 0

Initial solution: (2,2)Gradient of obj. fn.: (1,2)

(2,2,4)(1,2,0)

Page 13: Paper review of ENGG*6140 Optimization Techniques

An Example

- Feasible region : the triangle

- Optimum (0,8,0), Initial solution: (2,2,4)

- Gradient of Obj. fn. : cT =[ 1, 2, 0 ]

Show The augmented form graphically Using Projected GradientProjected Gradient to implement Concept 1 & 2:

Adding the gradient to the initial leads to (3,4,4)= (2, 2, 4)+ (1,2,0) (infeasible)

To remain feasible, the algorithm project the point (3,4,4) down onto the feasible triangle.

To do so, the projected gradient – gradient projected onto the feasible region – is used.

Then the next trial solution move in the direction of projected gradient

Page 14: Paper review of ENGG*6140 Optimization Techniques

An Interior-point Algorithm

a formula is available for computing the projected gradient:

projection matrix : P = I-AT(AAT)-1A

projected gradient: cp = Pc

Using Projected GradientProjected Gradient to implement Concept 1 & 2

32

31

31

31

32

31

31

31

32

P

110

pc now we are ready to move from (2,2,4)

in the direction of cp to a new point:

110

4422

4422

pcx

determines how far we move. large too close to the boundary small more iterations

we have chosen =0.5, so the new trial solution move to:

x = ( 2, 3, 3)

Page 15: Paper review of ENGG*6140 Optimization Techniques

An Interior-point Algorithm

Concept 3:

TransformTransform the feasible region to place the current trail solution near its centercenter, thereby enabling a large improvement when concept 2 is implemented.

Centering scheme for implementing Concept 3Why -- The centering scheme keeps turning the direction of

the projected gradient to point more nearly toward an optimal solution as the algorithm converges toward this solution.

How -- Simply changing the scalechanging the scale (units) for each of the variable so that the trail solution becomes equidistant from the constraint boundaries in the new coordinate system.

Define D=diag{x},

xDx 1~ bring x to the center in the new coordinate

)1,1,1(~ x

Page 16: Paper review of ENGG*6140 Optimization Techniques

An Interior-point Algorithm

Initial trial solution

(x1,x2,x3) =(2,2,4)

0

8422 ..

42Max Z

3

~

2

~

1

~

3

~

2

~~

1

2

~~

1

xxx

xxxts

xx

)1,1,1(),,(~

3

~

2

~

1 xxx

In this new coordinate system, the problem becomes:

4

2

2

4100

0210

0021

:are variablerescaled The

3

2

1

3

2

1

1~

x

x

x

xxx

xDx

Page 17: Paper review of ENGG*6140 Optimization Techniques

Summary and Illustration of the Algorithm

400020002

matrix diagonal ingcorrespond thebe DLet Step1.

D

111

4

2

2

4100

0210

0021

3

2

1

3

2

11

~

x

x

x

xxx

xDx

Iteration 1. Given the initial solution (x1,x2,x3) = (2,2,4)

nx

xx

x

D

...000...............0...000...000...00

3

2

1

Step1. given the current trial solution (x1,x2,…,xn), set

Summary of the General Procedure

X is brought to the center (1,1,1) by:

Page 18: Paper review of ENGG*6140 Optimization Techniques

Summary and Illustration of the Algorithm

042

]0,2,1[400020002

]4,2,2[400020002

]1,1,1[

become have c andA s,coordinate new In these step2.

~

~

Dcc

ADA

DccandADA ~~

calculate Step2.

Summary of the General Procedure (cont.)

Iteration 1. (cont.)

To compute projected gradient:

Page 19: Paper review of ENGG*6140 Optimization Techniques

Summary and Illustration of the Algorithm

231

31

31

31

31

65

61

31

61

65

)(-I P

ismatrix projected thestep3.

~

~1-

T~~T~

cPc

isgradientprojectedthe

AAAA

p

~

~1-

T~~T~

)(-I P

matrix projected theCalculate step3.

cPc

gradientprojectedtheAAAA

p

Iteration 1. (cont.)Summary of the General Procedure (cont.)

Compute projected gradient:

Page 20: Paper review of ENGG*6140 Optimization Techniques

Summary and Illustration of the Algorithm

214745

231

25.0

111

111

~

pcvx

step4. define v as the absolute value of the negative component of cp having the largest value, so that v=|-2|=2.

In this coordinate, the algorithm moves from the current trial solution to the next one.

step4. Determine how far to move by identify v. Then make move by calculating

pcvx

111

~

Iteration 1. (cont.)

Page 21: Paper review of ENGG*6140 Optimization Techniques

Summary and Illustration of the Algorithm

22725

214745

400020002

~

3

2

1

xDxxx

this completes the iteration 1. The new solution will be used to start the next iteration.

Step 5. Back to the original coordinate by calculating

~xDx

Step 5. In the original coordinate, the solution is Iteration 1. (cont.)

Summary of the General Procedure (cont.)

0 1 2 3 4 5 6 7 8 90

1

2

3

4

5

6

7

8

9

x1

x2

(0,8) optimal

Z=16=x1+2x2

(2.5,3.5)

(2,2)

x1+2x2=8

Page 22: Paper review of ENGG*6140 Optimization Techniques

Summary and Illustration of the Algorithm

Iteration 2. Given the current trial solution ,2)27,

25(x3)x2,(x1,

200

0270

0025

Dxx that such

matrix diagonal ingcorrespond thebe Let DStep1.~

D

1541

60133

1211

4537

4514

92

4514

9041

187

92

187

1813

pcandP

X is brought to the center (1,1,1,) in the new coordinate, and move to (0.83, 1.4, 0.5), corresponds (2.08, 4.92,1.0) in the original coordinate

0 1 2 3 4 5 6 7 8 90

1

2

3

4

5

6

7

8

9

x1

x2

(0,8) optimal

Z=16=x1+2x2

(2.5,3.5)

(2,2)

x1+2x2=8

(2.08, 4.92)

Page 23: Paper review of ENGG*6140 Optimization Techniques

Summary and Illustration of the Algorithm

Iteration 3. Given the current trial solution x=(2.08, 4.92, 1.0)

X is brought to the center (1,1,1,) in the new coordinate, and move to ( 0.54,1.30,0.50), corresponds (1. 13, 6.37, 0.5) in the original coordinate

0.100092.400008.2

D

0 1 2 3 4 5 6 7 8 90

1

2

3

4

5

6

7

8

9

x1

x2

(0,8) optimal

Z=16=x1+2x2

(2.5,3.5)

(2,2)

x1+2x2=8

(2.08, 4.92)

(1.13,6.37)

79.105.163.1

pc

Page 24: Paper review of ENGG*6140 Optimization Techniques

An Example

Effect of rescaling of each iteration: Sliding the optimal solution toward (1,1,1) while the other BF solutions tend to slide away.

A B

C D

Page 25: Paper review of ENGG*6140 Optimization Techniques

Summary and Illustration of the Algorithm

More iterations. Starting from the current trial solution x, following the steps, x is moving toward the optimum (0,8). When the trial solution is virtually unchanged from the proceeding one, then the algorithm has virtually converged to an optimal solution. So stop.

0 1 2 3 4 5 6 7 8 90

1

2

3

4

5

6

7

8

9

x1

x2

(0,8) optimal

Z=16=x1+2x2

(2.5,3.5)

(2,2)

x1+2x2=8

(2.08, 4.92)

(1.13,6.37)

Page 26: Paper review of ENGG*6140 Optimization Techniques

Another Example

The problemMAX Z = 5x1 + 4x2

ST 6x1 + 4x2<=24 x1 + 2x2<=6 -x1 + x2<=1 x2<=2 x1, x2>=0

Augmented form

MAX Z = 5x1 + 4x2

ST 6x1 + 4x2 + x3=24 x1 + 2x2 + x4=6

-x1 + x2 + x5=1 x2 + x6=2

xj>=0, j=1,2,3,4,5,6

0 0.5 1 1.5 2 2.5 3 3.5 4 4.50

0.5

1

1.5

2

2.5

x1

(3,1.5) optimal

Z=21=5x1+4x2

0 0.5 1 1.5 2 2.5 3 3.5 4 4.50

0.5

1

1.5

2

2.5

x1

x2

(3,1.5) optimal

Z=21=5x1+4x2

100010000011001021000146

A

216

24

b

000045c

Page 27: Paper review of ENGG*6140 Optimization Techniques

Another Example

Starting from an initial solution x=(1,1,14,3,1,1)The trial solution at each iteration

~

~

~

~1-

T~~T~

~

~

111

)(-I P

diag{x}D

xDx

cv

x

cPc

gradientprojectedtheAAAA

Dcc

ADA

p

p

0 0.5 1 1.5 2 2.5 3 3.5 4 4.50

0.5

1

1.5

2

2.5

x1

x2

(3,1.5) optimal

Z=21=5x1+4x2

(1,1)

(1.67,1.41)(2.23,1.51)

(3.05,1.39)

Page 28: Paper review of ENGG*6140 Optimization Techniques

More issues

Interior-point methods is designed for dealing with big problems. Although the claim that it’s much faster than the simplex method is controversy, many tests on huge LP problems show its outperformance. After Karmarkar’s paper, many related methods have been developed to extend the applicability of Karmarkar’s algorithm, e.g.

• Infeasible interior points method -- remove the assumption that there always exits a nonempty interior.

• Methods applying to LP problems in standard form.

Page 29: Paper review of ENGG*6140 Optimization Techniques

More issues

• Methods dealing with finding initial solution, and estimating the optimal solution.

•Methods working with primal-dual problems.

• Studies about moving step-long/short steps.

•Studies about efficient implementation and complexity of various methods.

Karmarkar’s paper not only started the development of interior point methods, but also encouraged rapid improvement of simplex methods.

Page 30: Paper review of ENGG*6140 Optimization Techniques

Reference

[1] N. Karmarkar, 1984, A New Polynomial - Time Algorithm for Linear Programming, Combinatorica 4 (4), 1984, p. 373-395.

[2] M.J. Todd, (1994), Theory and Practice for Interior-point method, ORSA Jounal on Computing 6 (1), 1994, p. 28-31.

[3] I. Lustig, R. Marsten, D. Shanno, (1993), Interior-point Methods for Linear Programming: Computational State of the Art, ORSA Journal on Computing, 6 (1), 1994, p. 1-14.

[4] Hillier,Lieberman,Introduction to Operations Research (7th edition) 320-334

[5] Taha, Operations Research: An Introduction (6th edition) 336-345

[6] E.R. Barnes, 1986, A Variation on Karmarkar’s Algorithm for Sloving Linear Programming problems, Mathematical Programming 36, 1986, p. 174-182.

[7] R.J. Vanderbei, M.S. Meketon and B.A. Freeman, A Modification of karmarkar’s Linear Programming Algorithm, Algorithmica: An International Journal in Computer Science 1 (4), 1986 p. 395 – 407.

[8] D. Gay (1985) A Variant of Karmarkar’s Linear Programming Algorithm for Problems in Standard form, Mathematical Programming 37 (1987) 81-90

more…

Page 31: Paper review of ENGG*6140 Optimization Techniques

Yanrong HuYanrong Hu

Ce YuCe Yu

Mar. 11 2003Mar. 11 2003

Paper Review of ENGG*6140 Optimization Techniques