optimizeWithTrace: One Dimensional Optimization with Tracing
Description
Find the minimum or maximum of a function over an interval
of real numbers, keeping track of the function arguments and
function values that were evaluated.
Numeric vector of length 2 containing the end-points of the interval
to be searched.
lower, upper
The lower and upper endpoints of the interval to be searched.
…
Other arguments passed to optimize,
including arguments to the function f.
Value
A list with components
minimum (or maximum), the location in the
search interval which yielded the optimum value;
objective, the value of the function at this
location;
x, the sequence of locations in the interval that
were considered (in the order considered);
y, the function values corresponding to x.
Details
This is a simple wrapper for the optimization routine
optimize. The function f will be
optimized by computing its value at several locations in the interval,
as described in the help for optimize.
This wrapper function stores the locations and
resulting function values, and returns them along with the
result of the optimization.
# NOT RUN { f <- function (x, a) (x - a)^2 result <- optimizeWithTrace(f, c(0, 1), tol = 0.0001, a = 1/3)
result
curve(f(x, 1/3))
with(result, points(x, y, pch=16))
# }