You are on page 1of 16

WATER RESOURCES SYSTEMS

ENGINEERING
WEEK8

Doosun Kang, Kyung Hee University


Nonlinear Optimization

2
One-dimensional Optimization
3

Global maximum
f(x)
Local maximum
Obj.
func.

X
(D.V.)

Local minimum
Global minimum
One-dimensional grid search
4

f(x)

Min.f(x)

xmin xbest xmax


Stuck on the local optimum
5

f(x)

Local minimum
Global minimum
fail to find global minimum!!
2-D Optimization - Hosaki function
6
7 3 1 4
𝑓 𝑥1, 𝑥2 = 1 − 8𝑥1 + 7𝑥12 − 𝑥1 + 𝑥1 ∗ 𝑥22 ∗ exp(−𝑥2)
3 4

4.5
4
0.5

3.5
0
3

-0.5
2.5

Global minimum Local minimum x1


-1
2

Local minimum
1.5

-1.5
1

-2
0.5

Global minimum 5
-2.5
x1
0

5
4.5

3.5

2.5

1.5

4.5 4 3.5 3 2.5 2 0


1.5 1
x2 x2
Multi-dimensional Grid Search
7

Compute the objective

4.5
function at each point while
keeping track of the best

4
value so-far

3.5
Number of function

3
evaluations = 49

2.5
2
1.5
1
0.5
0
4.5

3.5

2.5

1.5

1
2-D Optimization - Hosaki function
8
7 3 1 4
𝑓 𝑥1, 𝑥2 = 1 − 8𝑥1 + 7𝑥12 − 𝑥1 + 𝑥1 ∗ 𝑥22 ∗ exp(−𝑥2)
3 4
function f = hosaki(x1,x2) clear all;
close all;
f = (1-8*x1+7*x1^2-
7/3*x1^3+1/4*x1^4)*x2^2*exp(-x2); minp1=0; maxp1=5;
minp2=1; maxp2=5;

np1=10; delp1=(maxp1-minp1)/np1;

4.5
np2=10; delp2=(maxp2-minp2)/np2;
4
for i=1:np1
3.5

Par1(i)=minp1+(i-1)*delp1;
3

for j=1:np2
2.5

x1 Par2(j)=minp2+(j-1)*delp2;
Resp(i,j)=hosaki(Par1(i),Par2(j));
2

end
1.5

end
1

Optimum = min(min(Resp));
0.5

% contour(Par1, Par2, Resp, 20);


0
4.5

3.5

2.5

1.5

% surf(Par1, Par2, Resp);


x2 % mesh(Par1, Par2, Resp);
Nonlinear Optimization Approach
“Local Search”

9
Grid Search
10

Compute the objective


function at each point while
keeping track of the best
value so-far

Number of function
evaluations = 63
Simple Pattern Search
11

Follow the track based on the


simple pattern to reach the
optimum

Number of function
evaluations = 24
More-complex Pattern Search
12

Follow the track based on the


advanced pattern rules to
reach the optimum

Number of function
evaluations = 18
Strategies for Local Search
13

1. Select initial point


2. Choose direction to move
3. Choose distance to move
4. Evaluate function value at new point
5. Accept or reject step
6. Evaluate termination criteria
7. Adapting search procedure
based on information gained
8. Stop OR return to step 2
Homework #5 – Local Search
14

Program your OWN search strategy in MATLAB and


test on Rosenbrocks function and Hosaki function

Rosenbrocks Function (Minimum at [X1, X2] = [1,1])


f = 100 * [ x(2)-x(1)2 ] 2 + [ 1-x(1) ] 2

Hosaki Function (Minima at [X1 X2]=Local [1,2] and Global [4,2])

f = [ 1 – 8 x(1) + 7 x(1)2 - (7/3) x(1)3 + .25 x(1)4 ] x(2)2 exp{-x(2)}


15
16

You might also like