0% found this document useful (0 votes)
49 views

Fibonacci Search: Observation On Unimodal Functions

The document describes the Fibonacci search algorithm for finding the minimum of a unimodal function. It works by iteratively reducing the length of the interval containing the minimum point using Fibonacci numbers. At each step, it evaluates the function at one or two points to determine if the minimum is in the left or right subinterval. In the final step, it takes the midpoint of the last interval as the estimate for the minimum point. When applied to an example function, it finds an estimate that is within 0.25 of the actual minimum.

Uploaded by

aleemsalman
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
49 views

Fibonacci Search: Observation On Unimodal Functions

The document describes the Fibonacci search algorithm for finding the minimum of a unimodal function. It works by iteratively reducing the length of the interval containing the minimum point using Fibonacci numbers. At each step, it evaluates the function at one or two points to determine if the minimum is in the left or right subinterval. In the final step, it takes the midpoint of the last interval as the estimate for the minimum point. When applied to an example function, it finds an estimate that is within 0.25 of the actual minimum.

Uploaded by

aleemsalman
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

11/13/2009

Fibonacci Search
MATH MODELING II FALL 2009 DR. XIN LI

Observation on Unimodal Functions


A unimodal function on [a,b] has a unique minimum point x* x If a<b, then
f(a)<f(b) f(a)>f(b) f(a)=f(b) x* is in [a,b] x* is in [a,b] x* is in [a,b]

The third case is usually combined witht eh second y case for convenience

Fall2009,MathModelingII(Dr.Li)

11/13/2009

The Basic Ideas


Trapping the minimum point using smaller and smaller intervals Need two function values to reduce the interval length At each iteration, use only one new evaluation and use an old one Reduce the length by a fixed ratio Golden Ratio Search Reduce the length with variable ratio Fibonacci Search

Motivating Fibonacci Search


Need to know the total number of iteration (so that a global strategy can be planned at each step the best strategy is to pick two points close to the midpoint of the interval, but this leads to bad performance for the next iteration, for example) LN=t1t2tNL0

Fall2009,MathModelingII(Dr.Li)

11/13/2009

Fibonacci Search Algorithm


F0=1,F1=1 Fn=Fn-1+Fn-2, n>1 F 1 2 The length of the last interval is LN:
(b-a)/FN

The estimate x^ (of x*) is the midpoint in the last interval IN For k=N,N-1,,3: routine For k=2: take a point near the midpoint For the final step take the midpoint of the interval as the estimate of x*

16.1.5(a) 1st Step


N=4: Del=F2/F4(b a)=2/5*(10 0)=4 (b-a)=2/5 (10-0)=4 a=a+Del=4 b=b-Del=6 f(a)=-6 f(b)=2 f(a) < f(b). Set [a,b]=[0,6]

Fall2009,MathModelingII(Dr.Li)

11/13/2009

16.1.5(a) 2nd Step


N=3: Del=F1/F3(b a)=1/3*(6 0)=2 (b-a)=1/3 (6-0)=2 a=a+Del=2 b=b-Del=4 f(a)=-6 f(b)=-6 f(a) >= f(b). Set [a,b]=[2,6] (You may use [2,4] but you have to consider one more case)

16.1.5(a) 3rd Step


N=2: This is the 2nd to last iteration a=midpoint=4 Take b=midpt+2*delta=4+0.5=4.5 f(a)=-6 f(b)=-4.75 f(a) < f(b). Set [a,b]=[2,4.5]. This is the final interval.

Fall2009,MathModelingII(Dr.Li)

11/13/2009

16.1.5(a) Final Step


Take the midpoint =3.25 as the estimate for x* The exact minimum point is at 3 3. The error is |3-3.25|=0.25

Notes:
FN-2/FN <1/2 for N>1 The ratio between the lengths Lk-1 and Lk of intervals g after the kth iteration is equal to Fk-1/Fk The last two steps/iterations must be treated separately since the second to the last step has the midpoint as the existing point. So, we stay close to the midpoint and only check a point nearby (within 2*delta). The length of the interval g LN-1=LN-2/2 or LN-2/2+2*delta Take the midpoint of this interval in the last step (no further evaluation) as the estimate of x*. |error|<(1/2)LN-1+delta.

Fall2009,MathModelingII(Dr.Li)

You might also like