[Math] Looking for numerical methods for finding local maxima and minima of a function

functionsnumerical methodsoptimization

In derivative,

If $f'(x)$ is rising at $f'(x)$ = 0, there's a local minima in $f(x)$.

If $f'(x)$ is falling at $f'(x)$ = 0, there's a local maxima in $f(x)$.

If $f''(x)$ is rising at $f''(x)$ = 0, there's a local minima in $f'(x)$ and $f(x)$ is falling.

If $f''(x)$ is falling at $f''(x)$ = 0, there's a local maxima in $f'(x)$ and $f(x)$ is rising.

We can graph the function out to see whether it's falling or rising, A simple check at the position very close the root may suffice to see whether we got a positive or negative number, and conclude whether a function is falling or rising. Derivative can be used to find roots, maxima, minima, rising slope, and falling slope.

In numerical method, (or more precisely, for a computer program) we can use Bisection method, Newton-Raphson method to approximate roots of a function.

Now, what about other features such as local maxima, minima and whether the function is rising or falling? I am looking for an algorithm for approximating these critical points. What are some of the numerical method names I should be looking for?

Best Answer

For univariate functions you can use golden section search to find the extrema without knowing the derivatives of the function. But beware of its requirements to the function (namely to be unimodal), but maybe you can first narrow the search space to a unimodal interval.