Making the value approaches to 0 as K increases.

5 views (last 30 days)
Hi, I have this one line in my code for the value of Epsilon (Epsilon Greedy Algorithm) which i want to approach to zero as k increases (1.2.3......10000), but by doing so as in the following line, it gets below 1 even when k = 2, so i want the epsilon value to approach to 0 but a little bit slowly. Thank you so much.
epsilon = 1/k;

Accepted Answer

Geoff Hayes
Geoff Hayes on 8 Oct 2014
Aftab - If you want to slow down epsilon's approach to zero as k increases, then you could do something like the following
% create an array of linearly spaced numbers
epsilonVector = fliplr(linspace(eps,1,10000));
So the linspace function will create a vector of 10000 numbers that are linearly spaced between eps and 1. We then flip the vector from right to left so that epsilonVector(1) is 1, and epsilonVector(10000) is eps. If you want different lower and upper bounds on epsilon, then you can change the inputs to linspace.
I'm not sure how you want to use epsilon in your algorithm; perhaps an alternative approach is needed if you don't want linearly spaced points.
  1 Comment
Aftab Ahmed Khan
Aftab Ahmed Khan on 8 Oct 2014
Hi Geoff, I think your approach will work for me, i will test it tomorrow morning. I think it is according to my requirement. i will let you know tomorrow.

Sign in to comment.

More Answers (0)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!