1 optimization multi-dimensional unconstrained optimization part i: non-gradient methods

24
1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

Post on 21-Dec-2015

233 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

1

Optimization

Multi-Dimensional Unconstrained Optimization

Part I: Non-gradient Methods

Page 2: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

2

Optimization MethodsOne-Dimensional Unconstrained Optimization

Golden-Section SearchQuadratic InterpolationNewton's Method

Multi-Dimensional Unconstrained OptimizationNon-gradient or direct methodsGradient methods

Linear Programming (Constrained)Graphical SolutionSimplex Method

Page 3: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

3

Techniques to find minimum and maximum of

f(x1, x2, 3,…, xn)

2 classes of techniques:• Do not require derivative evaluation

– Non-gradient or direct methods

• Require derivative evaluation– Gradient or descent (or ascent) methods

Multidimensional Unconstrained Optimization

Page 4: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

4

2-D Contour View of f(x, y)

Page 5: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

5

max = -∞for i = 1 to N

for each xi

xi = a value randomly selected from a given interval

if max < f(x1, x2, 3,…, xn)

max = f(x1, x2, 3,…, xn)

DIRECT METHODS — Random Search

• N has to be sufficiently large

• Random numbers have to be evenly distributed.– Equivalent to selecting evenly distributed points

systematically.

Page 6: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

6

Advantages• Works even for discontinuous and

nondifferentiable functions.

• More likely to find the global optima rather than the local optima.

Disadvantages• As the number of independent variables grows,

the task can become onerous.

• Not efficient, it does not account for the behavior of underlying function.

Random Search

Page 7: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

7

Finding the Optima Systematically

Question– If we start from an arbitrary point,

how should we "move" so that we can locate the peak in the "shortest amount of time"?

• Good guess of direction toward the peak

• Minimize computation

Basic Idea (Like climbing a mountain)– If we keep moving upward, we will eventually reach

the peak.

You are here. Peak is covered by the cloud.

Which path should you take??

Page 8: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

8

General Optimization Algorithm

All the methods discussed subsequently are iterative methods that can be generalized as:

Select an initial point, x0 = ( x1, x2 , …, xn )

for i = 0 to Max_Iteration

Select a direction Si

xi+1 = Optimal point reached by traveling from xi

in the direction of Si

Stop loop if2

1

11

1

1)(

or )(

)()(s

i

iis

i

ii ef

ef

ff

x

xx

x

xx

Page 9: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

9

Univariate SearchIdea: Travel in alternating directions that are parallel to the coordinate axes. In each direction, we travel until we reach the peak along that direction and then select a new direction.

Page 10: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

10

Univariate Search• More efficient than random search and still

doesn’t require derivative evaluation

• The basic strategy is:– Change one variable at a time while the other

variables are held constant.

– Thus problem is reduced to a sequence of one-dimensional searches

– The search becomes less efficient as you approach the maximum. (Why?)

Page 11: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

11

Univariate Search – Example

• f(x, y) = y – x – 2x2 – 2xy – y2

• Start from (0, 0)

Iteration #1 • Current point: (0, 0)

• Direction: Along the the y-axis (i.e., x stays unchanged)• Objective: Find y that maximizes f(0, y) = y – y2

• Let g(y) = y – y2 .

Solving g'(y) = 0 => 1 – 2y = 0 => ymax = 0.5

• Next point: (0, 0.5)

Page 12: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

12

Univariate Search – Example

• f(x, y) = y – x – 2x2 – 2xy – y2

Iteration #2• Current point: (0, 0.5),

• Direction: Along the the x-axis (i.e., y stays unchanged)• Objective: Find x that maximizes

f(x, 0.5) = 0.5 – x – 2x2 – x – 0.25

• Let g(x) = 0.5 – x – 2x2 – x – 0.25.

Solving g'(x) = 0 => -1 – 4x – 1 = 0 => xmax = -0.5

• Next point: (-0.5, 0.5),

Page 13: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

13

Univariate Search – Example• f(x, y) = y – x – 2x2 – 2xy – y2

Iteration #3• Current point: (-0.5, 0.5),• Direction: Along the the y-axis (i.e., x stays unchanged)• Objective: Find y that maximizes

f(-0.5, y) = y – (-0.5) – 2(0.25) – 2(-0.5)y - y2

= 2y – y2

• Let g(y) = 2y – y2.

Solving g'(y) = 0 => 2 – 2y = 0 => ymax = 1• Next point: (-0.5, 1)

… Repeat until xi+1 = xi or yi+1 = yi or ea < es.

Page 14: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

14

General Optimization Algorithm (Revised)

Select an initial point, x0 = ( x1, x2 , …, xn )

for i = 0 to Max_Iteration

Select a direction Si

Find h such that f (xi + hSi) is maximized

xi+1 = xi + hSi

Stop loop if 21

11

1

1)(

or )(

)()(s

i

iis

i

ii ef

ef

ff

x

xx

x

xx

Page 15: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

15

Direction represented as a vector (Review)

5.0

11S

1

22S

direction" same"

therepresent , 21 SS

(x1, y1)

(x3, y3)

(x2, y2)

21

11

1

1

3

3

21

11

1

1

2

2

)1(or )2(

or 2

SS

SS

y

x

y

x

y

x

y

x

y

x

y

x

11

1

as drepresente be

can line thisalong Points

Shy

x

Page 16: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

16

Finding optimal point in direction S

• Current point: x = ( x1, x2 , …, xn )

• Direction: S = [ s1 s2 … sn ]T

• Objective: Find h that optimizesf(x + hS) = f (x1 + hs1, x2 + hs2, …, xn + hsn)

Note: f is a function of one variable – h.

Page 17: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

17

Finding optimal point in direction S (Example)

• f(x, y) = y – x – 2x2 – 2xy – y2

• Current point: (x, y) = (-0.5, 0.5)

• Direction: S = [ 0 1 ]T

• Objective: Find h that optimizes

f (-0.5, 0.5 + h)

= (0.5 + h) – (-0.5) – 2 (-0.5) 2 – 2 (-0.5)(0.5 + h) – (0.5 + h)2

= 0.5 + h + 0.5 – 0.5 + 0.5 + h – 0.25 – h – h2

= 0.75 + h – h2

• Let g(h) = 0.75 + h – h2

• Solving g'(h) = 0 => 1 – 2h = 0 => h = 0.5

• Thus the optima in the direction of S from (-0.5, 0.5) is (-0.5, 1)

Page 18: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

18

Univariate Search AlgorithmLet Dk = [ d1 d2 … dn ]T where dk = 1, dj = 0 for j ≠ k and j, k ≤ n.

e.g.: n = 4, D2 = [ 0 1 0 0 ]T, D4 = [ 0 0 0 1 ]T

Univariate Search AlgorithmSelect an initial point, x0 = ( x1, x2 , …, xn )

for i = 0 to Max_Iteration

Si = Dj where j = i mod n + 1

Find h such that f (xi + hSi) is maximized

xi+1 = xi + hSi

Stop loop if x converges or if the error is small enough

Page 19: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

19

Pattern Search MethodsObservation: Lines connecting alternating points (1:3, 2:4, 3:5, etc.) give better indication where the peak is (as compared to the lines parallel to the coordinate axes).

The general directions that point toward the optima is also known as the pattern directions.

Optimization methods that utilize the pattern directions to improve convergent rate are known as pattern search methods.

Page 20: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

20

Powell’s method (a well-known pattern search methods) is based on the observation that if points 1 and 2 are obtained by one-dimensional searches in the same direction but from different starting points, then, the line formed by 1 and 2 will be directed toward the maximum. The directions represented by such lines are called conjugate directions.

Powell's Method

Page 21: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

21

How Powell’s method selects directions **

• Start with initial set of n distinct directions, S[1], S[2], …, S[n] • Let counter[k] be the number of times S[k] is used.• Initially, counter[k] = 0 for all k = 1, 2, …, n

Si = S[j] where j = i mod n + 1

xi+1 = optimum point traveled from xi in the direction Si

counter[j] = counter[j] + 1if (counter[j] == 2)

S[j] = direction defined by xi+1 and xi+1–n

counter[j] = 0

i.e., Each direction in the set, after being used twice, is replaced immediately by a new conjugate direction.

Page 22: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

22

Quadratically Convergent• Definition: If an optimization method, using exact

arithmetic, can find the optimum point in n steps while optimizing a quadratic function with n variables, the method is called a quadratically convergent method.

• If f(x) is a quadratic function, sequential search along conjugate directions will converge quadratically. That is, in a finite number of steps regardless of the starting points.

Page 23: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

23

Conjugate-based Methods• Since general non-linear functions can often be

reasonably approximated by a quadratic function, methods based on conjugate directions are usually quite efficient and are in fact quadratically convergent as they approach the optimum.

Page 24: 1 Optimization Multi-Dimensional Unconstrained Optimization Part I: Non-gradient Methods

24

Summary• Random Search• General algorithm for locating optimum point

– Guess direction– Find optimum point in the guessed direction

• How to find h such that f (xi + hSi) is maximized

• Univariate Search Method• Pattern Search Method