X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=optimization%2Fsteepest_descent.m;h=c0e88dd4e37f0989992dd98c119e611701df21ef;hb=a253483b81f5302103142955dda782089cb5624d;hp=0a6475e4614c37822be1c36ce891c003aae6ca55;hpb=8ff5cc31794c0f0d2e7c4c5e8c9cb9552c4719d2;p=octave.git diff --git a/optimization/steepest_descent.m b/optimization/steepest_descent.m index 0a6475e..c0e88dd 100644 --- a/optimization/steepest_descent.m +++ b/optimization/steepest_descent.m @@ -58,14 +58,15 @@ function [x, k] = steepest_descent(g, ... dk = -gk; alpha_k = step_size(xk); - xk = xk + (alpha_k * dk); - gk = g(xk); + x_next = xk + (alpha_k * dk); % We potentially just performed one more iteration than necessary % in order to simplify the loop. Note that due to the structure of % our loop, we will have k > max_iterations when we fail to % converge. k = k + 1; + xk = x_next; + gk = g(x_next); end x = xk;