So, I am continuing with our treatment of
single variable searches, we will now look
at
the Fibonacci search method. It basically
works on the Fibonacci series.
If you recall in the last class, we wrote
the algorithm for any number F of n in the
Fibonacci series, the first number 
is 1, right. So, we use the Fibonacci series
in order to
divide the interval and choose two points.
Please remember that always in a single
variable search, we use a 2 point test. We
find out whether Y of X 1 is less than or
greater than Y of X 2 and accordingly a portion
of the interval is eliminated. So,
Fibonacci search method is yet another elimination
method where a portion of the
interval is eliminated; it is called an elimination
method or a region elimination method.
Please recall that in all these elimination
methods we are just looking at whether Y of
X
1 is less than Y of X 2 or Y of X 1 is greater
than Y of X 2, regardless of how much
these values have changed with respect to
the previous iteration. Obviously, you can
conjure up with visions of coming out with
some algorithm which can do better than this;
that is if you take into account the nature
of variation of the objective function also,
how
these vary, then it is possible to come out
with better single variable search algorithms,
but that is not the intent of the treatment
at least in today and tomorrow’s class.
Without
having to worry about between two iterations
how Y of X changes, we are always
looking at the two pointers and seeing whether
Y of X 1 is greater than or less than Y of
X 2 and remaining certain position of the
interval.
So, it comes with certain efficiency and it
comes with a certain price, right. The price
is
the computational cost. Now what is the strategy?
And I think in the last class I told you
I took an interval where X varies from 0 to
8 and we divided the interval such that X
1
equal to 5 and X 2 equal to 3 or whatever,
and then we subdivided and we figured out
that one of the 2 points in every new iteration
is already an old point in the sense that
it
was a point in the previous iteration. So,
in the execution of the Fibonacci search,
every
time you have a 2 point evaluation there is
only one new point, the second point is
already an old point. Therefore, even though
the interval is not reduced by 50 percent,
because you are evaluating only one at a time
asymptotically it has a convergence rate
which is far superior compared to the dichotomous
search method.
Now what is the strategy? So, needless to
say, we are considering a unimodal function.
As usual we start with an original interval
of uncertainty of I naught, X equal to a,
X
equal to b which use two points I 1 and this
is also I 1. Correct, should I use different
chalk or is it fine? I meant different colored
chalk differently colored chalk.
This is a simple 2 point test where we are
having 2 points which are symmetric about
the
end points. Now what is this I 1? So, there
should be a strategy for getting I 1 from
I
naught I 1 is equal to I naught by 2 approximately
if epsilon tends to 0; that is the
dichotomous search. But what is the relationship
between I 1 and I naught; that is the
algorithm; For the Fibonacci search the algorithm
is. So, you choose a particular n. How
will you choose a particular n? Finally, we
will have to figure out what is the reduction
ratio of the algorithm? For the reduction
ratio of the algorithm which relates the I
naught
to I n you know the original I naught.
So, suppose we specify the final accuracy
level of the interval of uncertainty you will
also know what is I n. So, knowing I naught
and I n you know the reduction ratio. The
reduction ratio should be a function of n
or should be a function of F of n. So, you
will
be able to get F of n or n. If you are able
to get only F of n in the first place from
F of n
you will get back your n; you start backwards
and work like this because in a computer
when you are writing a computer program you
will not do like. So, purposes of exam or
for purposes of class I say 6 evaluations,
8 evaluations, 10 evaluations, we do not do
like
that in a computer program. You do not say
do I equal to 1 to 100 iterations and stop
a
program that is for starters; to check whether
your program is working, who has told you
that within 100 iterations the solution would
have converged.
You will see whether it works for 50, 100,
200, whether there is math overflow, blah,
blah, then you put your convergence criteria.
Like that when I say do 6 evaluations, 8
evaluations it is for demonstration purpose
in the class. When you actually write a
program you will work backwards. For this
system I want an accuracy of this much.
Then you start backwards and find out and
then you will find out how many evaluations
are required. I 1 is equal to I naught, so
this is equal to. So, it is lighting up, so
I naught b
minus a.
So, can we write X 1 and X 2? X 1 is equal
to a plus with dynamical adjustment of to
find out whether Renu, Rohith, and all these
people are. This is the algorithm devised
by
Web studio. So, X 1 is a plus b minus a into
F of n minus 1 divided by F of n. X 2 equal
to b minus, correct. Vikram is it alright?
So, early morning you should be up on your
feet; immediately you should not wait for
me, oh, if F of n is on denominator you have
to
cross multiply a into F of n.
F of n can be written as F of n minus 1 plus
n minus 2, b minus a you can subtract certain
things and simplify. Alright, you can do that.
So, X 1 equal to a. Can you tell me, can
you simplify this? a F n minus 1 goes off,
right. So, X 1 equal to a f n minus 2 plus
b;
you are just exploiting the property of the
Fibonacci sequence, let us call it 3. Similarly,
is this step clear? I rewrote F n as F n minus
1 plus F n minus 2 that is the property of
the
Fibonacci sequence of the particular number
F n in the sequence.
Similarly, minus. So, fortunately X 2 is b
F n minus 2 plus a F n minus 1; otherwise,
you
have to go home. If X 1 is equal to X 2 there
is no 2 point test. So, if you get the same
expression for X 1 and X 2, go back and check
your algebra. This may happen
eventually when the 2 points coincide, then
you get r g. So, finally when it reaches there
is only 1 point; that is ok but not when n
is sufficiently large. You should have X 1
should be different from X 2.
So, X 1 and X 2; then you do the 2 point test
depending upon whether the function has to
be minimized or maximized, you will eliminate
the region to the left of X 2 or the region
to the right of X 1, right nothing great so
far. It is like any other algorithm, right.
No
great shakes till now, the beauty comes in
the next iteration. Now, for purposes of
demonstration, we have to take a call on whether
region to the left of X 2 or the right of
X 1, I always like the left hand side. So,
we will eliminate we will assume some Y such
that the region to the left of X 2 is eliminated
and we will go to the next round; that is
we
will go to I 2. So, shall we retain this fellow?
Shall we go to the other portion of the
board?
Now conduct the 2 point test. Let us say the
region to the left of X 2 can be eliminated.
Now we are left with X 2 X equal to b, right.
Correct, what is this interval now? I 1,
correct, this fellow is I 1. The new interval
of uncertainty is I 1. Now we chose two
points X 3, X 4 such that they are at a distance
of I 2 from the two new ends. What is our
friend I 2 himself. I 2 is I 1 into, right.
You remember in the last class we took 5 by
8, the
next one was 3 by 5, next will be 2 by 3;
you have to go backwards. So, now we do not
have to leave him like that, we can simplify
further.
So, I2 is it correct; alright. Now so I2,
so what is the equation number we stopped
with?
Four; so, we will make this 5, 6, 7. Now the
time has come to erase this portion of the
board I think.
So, X3 equal to X2 plus I2, X4 equal to b
minus I2. Please watch carefully. Is it fine;
Vivek is it fine? So, X3 is the point from
this end is the original point X2 plus I2,
X4 is
at the same distance I2 but from the other
side. It is b minus, okay. Now this is equation
number 8 and 9. All this labor is to prove
that one of the 2 points is already there.
I
already demonstrated with numerical example,
but I wanted to do that with algebra so
that the proof is clean. So, it is good to
have this in the notes.
It is very difficult to find it in text books.
So, people will say it can be some asymptotic
convergence, right. X4 is X3 is equal to X2
plus I2. Now let us substitute for X3. What
is
X2? What is X2?
a.
No, no we simplified know a F n minus 1
Plus b F n.
Plus b minus a, so something gets cancelled.
No hope, this is not the point. I am
interested in X4, I do not like him. So, I
just leave him. So, I will go to X4. Anyway
it is
a new point, right. X4 is b minus I2; X4 is
fun, so b minus, right. Now I can substitute
again for F n. What is happening now? X4 is
b F n minus 2 is equal to X1.
b F n minus 2.
Plus a F n minus 2. Yeah b F n minus 2 gets
cancelled. So, this is X1, alright.
Therefore, out of 
the 2 points X3, X4 only one is really new,
this happen iteration after
iteration that contributes to the power of
the method. 1953 it was figured out. It was
a big
rage; it must have been a big rage at that
time, now it is so obvious to us. What is
obvious to us now may not have been obvious
in the past, okay. And what is obvious at
8
am may not be obvious at 1 pm after lunch
when you attend the same lecture.
So, what is the reduction ratio of the algorithm?
What is the reduction ratio of Fibonacci
search method? What is the RR of the algorithm?
I naught is b minus a, correct. Will it
become one in the end? It should become because
the first and the second number of the
Fibonacci series is 1.
Therefore, RR the Fibonacci number itself
is the reduction ratio of the algorithm. So,
how do you start with? Suppose you want to
find out for the cylindrical water storage
problem, solar water heater storage problem
if the original interval of uncertainty is
3
meter, you want to have an uncertainty of
point 0.15 meter, the reduction ratio is 20.
If
you have a reduction ratio as 20 you have
to look for the nearest possible number for
the
Fibonacci sequence. What is the nearest number?
You should take the next higher
number not the lower number, 21, okay.
So, if you start with if it is 21, this n
also approximately gives you an idea of the
number
of functional evaluations. I think you will
have to do n plus 1 evaluations. Can you
correct me if I am wrong? Correct. So, you
have to do n plus 1 not n because the first
time you are doing two. So, you will get an
idea how many evaluations are required,
what is the final accuracy; this is the way
algorithm works and you can compare now. I
have given you 3 algorithms exhaustive search,
dichotomous search and Fibonacci
search. For a good number n equal to 14 or
16, you can see that the Fibonacci will just
whiz past all the others.
What is the sixteenth number of the Fibonacci,
some crazy number? So, this fellow will
X1, X2, X3, X4 exhaustive search and you will
see all the things and then finally reduce
it to one sixteenth or one-eighth; you will
reduce to one-eighth of the original interval.
So, revisit the solar water heater problem.
Now why I am doing that is there is some self
consistency check to the same method. We will
change the problem after we move out to
the 2 variable problems; for single variable
search techniques we will stick to the solar
water heater problem, right. So, Monday is
the quiz, right. So, we will have 3 questions;
the paper as usual is very long, I already
set is yesterday. So, all the best; it took
7 hours
for me to set the paper not to solve the paper.
I wanted to ensure that that any of the
algorithms you develop to beat the system,
do not work. So, what is the problem
number? 35. It should be n plus 1 man, Vikram.
34.
Cylindrical solar, okay. So, for the cylindrical
solar water heater storage problem how do
we give this n because I want you to do the
same thing as what I have done so that we
can compare. So, execute the Fibonacci, execute
the Fibonacci search, execute the
Fibonacci search algorithm for the cylindrical
solar water heater storage problem.
Execute the cylindrical execute the Fibonacci
search algorithm for the cylindrical solar
water heater storage problem with the original
interval of uncertainty being 0.5 to 3.5
meters. Choose perform 7 functional evaluations.
No, this is for class room, right, do not
worry. Perform 7 functional evaluations; that
means F of n you have to perform 7
functional evaluations. So, I will also say
that perform 7 functional evaluations; start
with F of 8, understood.
Start with 21 by 34 on both sides because
you can compare with, after 7 evaluations
you
will hit the center. If you do not like you
remove that do 7 evaluations, start with F
of n
equal to 34; that also is alright. Start with
F of n is equal to 34. So, take the original
interval 3 meter, F of n minus 1 by F of n
is 21 by 34. So, 3 meters into 21 by 34 will
be
your I1. Take I1 from both the ends 2 points.
Calculate the value of A at both the points.
See which portion of the interval can be eliminated.
So, first step please write the series so
that you do not forget it, right. So, you
have to go
backwards, right. Please first write the series
and then draw the original interval of
uncertainty and it is not X, it is r. So,
r equal to 0.5 meter, r equal to 3.5 meter,
I naught
equal to 3 meters, I1 how much is this? 1.
85. So, choose 2 points X1 is 2.35. X2, X2
is
how much? Is it 1.15?
1.65.
1.65, correct; do not worry that X1 is more
than X2, you do not worry about this, we
have this thing. Our notation is whatever
point is chosen from the left interval is
X1,
whatever is chosen from the right interval
X2. Is Use your common sense; do not get
worried about whether X2 can be on the left
of X1, do not worry about it. If it is
confusing, you change it; change X1, X2 accordingly,
right, but be consistent. Vaibhav,
is it okay, fine. So, now get A of X 1.
Now we should not say X1, right, what is it?
It is not X it is r or we should change the
radius itself to X in the original first place,
right. So, we will stick to r1; A of r 1.
I have
the solutions with me, but I want you to solve
along with me. So, A of r 1 is 38.1 meter
square, correct, A of r 2 21.95 meter square.
A of r 1 is greater than. So, region to the
right of r 1 can be eliminated, is that right?
Therefore, region to the right of r 1 can
be
eliminated. Abhishek is it fine, okay. What
is the new interval now? Yeah, what is the
new interval to the right of. So, r equal
to 2.35, right. What is I 1; 1.85 meter, right.
So,
we now take two points X 3, X4. These two
are at a distance I2 from the two ends.
I2 equal to I1 1.85, 13 by 21, yeah. So, first
we took 21 by 34, now we took 13 by 21.
So, you move from the right to the left till
you hit this; now towards the end when you
reach the end, the two points X n and X n
plus 1 will be at the center, right. That
is where
you stop the Fibonacci search, clear? Now
how much is this? 1.15. We will adjust this
such that one of the 2 points is equal to.
There may be some small problem with your
decimals but do not recalculate, I mean because
originally the algorithm tells you that
one of the 2 points must be an old point.
So, why I am writing X, Why am I doing this?
r
1. Please tell me r 3 equal to r 2 plus I
2. r 4, what is this? r 1, right, r 1. 0.5
plus this is
1.65, this is?
1.2.
1.2, 1.21, 1.20, then we will leave it like
that, 1.20. No, sorry this is correct know
a plus.
This is correct r 1 minus I2, correct. So,
now r 3 is equal to r 2, right. Is it correct
r 3 is
equal to r 2? So, that point we already know.
So, A of r 3 equal to 21.95, correct. A of
r 4
must be smaller.
15.7.
15.7, where is r 3 now? The region to the
right of r 3 can be eliminated. Babu is it
correct? Region to the right of r 3 can be
eliminated.
So, r equal to 0.5; I stay with this. r 3
is1.65, I 2 is equal to 1.15. So, I now take
two
points r 5, r 6. So, r 5 0.5 8 by 13; r 6,
what are the 2 values? r 5 is 1.15.
1.2.
1.2. This is?
0.94.
0.94. We know the solution is 0.866. So, I
know that A of r 6 is less than A of r; I
do not
have to do but you have to do. We know what
the answer is.
Whether you do it as a part of a project or
exam it is very easy but you have to be
systematic and methodical. You cannot get
impatient. You have to do it patiently. It
is
not such a brain teaser that you cannot solve
or something. If you are systematic you will
get it. Do not be in a hurry. You do it slowly
without making mistakes; you will be
home, right.
So, A of r 5 he is already there 15.7 but
now I have A of r 6 which is lower than him,
I
hope so, 14.1. Therefore region, see you will
keep on eliminating to the right because the
answer is close to the left interval. You
will keep on chopping off from the right side
region to the right of. Now r equal to 0.5,
r equal to 1.2; I 3 equal to 0.7, correct.
Yes.
Now take two points 7 and 8.
So, r 7 0.5 into 5 by 8, right, 0.94, okay.
Please note that in every iteration one of
the
points is already the previous point. So,
though you seem to be working out a lot, your
functional evaluation is; in this case it
so happens that the functional evaluation
is easy
and the other step seem to be as difficult
or as laborious or as time consuming as a
functional evaluation. Sometimes the functional
evaluations may require the solution of a
Naiver-Stokes equation or you have to solve
some using COMSOL multiphysics. In this
case it was so simple 2 pi r square plus 8
by r. Then the other steps will be ridiculously
less time consuming compared to the functional
evaluation, okay.
Now A of r 7 we know that 14.1, I know A of
r 8 will be greater than this fellow. He will
be some 16, 17, 18, 14.2. Oh, now you have
to be careful. Now region to the left, region
to the left is eliminated. Therefore, for
a change we got rid of the 0.5, right. I 
expect you
to solve a problem like this in 15 minutes
if it is 7 or 8 evaluations. 10 to 15 minutes,
you
can do it if the evaluation is not painful,
okay
So, now what is this, left side?
0.76.
0.76, what is the value r? r 6, r 7, what
is it? r 8. This fellow is r 5; he is 1.2,
I4 0.44, r 9,
r 10, 3 by 5. Yeah, tell me 1.02.
0.95.
0.94. A of r 9?
14.38.
14.1. Region to the right of r 9 can be eliminated.
We are close to the final point. How
many have you done so far? 6? 6 evaluations
are done, only one more.
So, region to the right of; I hope all of
you are able to follow why am I trimming region
to the right of r 9 because 14.3 it is more
than 14.1, we are solving a minimization
problem. Now what do we have now? r 9 is 1.02,
you have already came, is it. What is
it? Okay, I cannot ditch that r 8, yeah, r
9, right. How much is this? 1.02. So, I have
I 5
0.26. So, I have two points r 11 and r 12.
So, r 11 equal to 0.76 plus 0.26 into 2 by
3, r 12
equal to 1.02 minus 0.26 into 2 by 3, 0.94,
0.84. I hope everybody is following this.
So, what is A of r 11, 14.1, A of r 12 should
be more.
13.9.
Okay, that is closer to the answer, 13. 9.
The region to the right of r 11 can be eliminated.
So, we have 0.76 to r 11, right. Is that right?
What is the r 11? 0.94. 0.18 I 6, the next
point will be the center. We cannot do much
with that. The buck stops here. So, the next
point is 0.85, r 13 equal to r 14 equal to.
So, the final interval of uncertainty is 0.18
meter, the solution is now lying between 0.76
meter and 0.94. With just 7 functional
evaluations you are able to reduce the final
interval of uncertainty to 18 centimeter from
300 centimeter. So, you got a remarkable reduction
ratio which is how much? You got an
RR now, so final interval of uncertainty.
So, RR is this is how much? 16. What is theoretical
RR? 34. What is n?
21.
Theoretical RR is how much?
24.
F n, so what is the problem now?
In fact you stopped with 6 evaluations, right.
We stopped it; we can go for one more. We
can go for one more and have a 3 point test
or you can go for one more have a 2 point
test between these two 2 point tests. It is
equivalent to the 3 point test if f of X1
is greater
than F of X2 but is less than. So, you can
still the bracket the interval and bring it
to half
which will make it 32. So, you have to go
to the last step, right. Are you getting the
point? Except that instead of 2 points you
will get 1 point, so you have a 3 point test,
right. 3 point test also I told you, right;
otherwise you can stop here. So, you will
get
something which is smaller than, what is predicted
by the reduction ratio theoretical
reduction ratio the algorithm but which is
much much superior to what you will get using
exhaustive search. If you use exhaustive search,
your final interval of uncertainty will be
1 meter, right, after 7 evaluations.
N plus 1 by 2, how much is it? 8 by 2 is 4.
So, you will have a final interval of
uncertainty of 75 centimeter; it will be superior
even to the dichotomous search. But now
there are some higher order searches which
can do better. For example, after you have
reached the center point it is possible for
you to get r 3 is equal to r 14 which is already
there. r 13 is equal to r 14 was already one
of the points. If you have these three points,
now if you are pretty confident that you have
bracketed the minimum and it is indeed
lying between 0.76 and 0.94, it is possible
to use the Lagrange interpolation formula
and
have a local polynomial connecting these 3
points and then make that fellow stationary.
d
y by d, d a by d r equal to 0 and then he
will give you the correct answer. But so much
it
is overkill for us for a stupid problem like
this, but it is possible.
When we are writing the program how do we
define that till a date or till?
I have to do that. If I take F n is equal
to 34 I have to do that last iteration. So,
let us say
that if both the points coincide we do the
evaluation and take the 3 point test.
Assuming we have some desirable accuracy required
in the problem.
Here desirable accuracy required you take
n plus 1 go to the next. If you have desirable
accuracy required, go to the next nearest
Fibonacci number, so that this half problem
does not arise. Then you will land; you can
work out your problem that way. What is
your desired level of accuracy for this problem?
Suppose, you declare that the desired
level of accuracy is 0.15 meter then you divide;
then you divide 3 meters divided by
0.15, 20 reduction ratio; for that calculate
the corresponding F n. And since you now
know the Fibonacci, the last 2 points will
give you trouble, go to the next Fibonacci
number; that is all. Because the Fibonacci
it seems finally ends up with 1 point where
you have to use something other than the 2
point test to reduce the length of the interval.
It is possible still; it is not illegal for
us. You can do 1 evaluation. You can do 1
evaluation and decide where it will lie. So,
you will decide either it is lying here or
here
right, fine. So, we will stop with this.
