114 ROOTFINDING FOR NONLINEAR EQUATIONS
Figure 2.8 Illustration
of
steepest
descent method.
directions related in an optimal way to the function
f(x)
being minimized.
In
Chapter 8, the conjugate gradient method
is
used for solving systems of
linear equations.
There are many other approaches to minimizing a function,
but
they are too
numerous to include here.
As
general references to the preceding ideas, see
Dennis
and
Schnabel (1983), Fletcher (1980), Gill et al. (1981), and Luenberger
(1984).
An
important and very different approach to minimizing a function
is
the
simplex method given in Neider and Mead
(1965), with a discussion given in Gill
et
al. (1981, p. 94) and Woods (1985, chap.
2).
This method uses only function
values (no derivative values), and it seems to
be
especially suitable for noisy
functions.
An
important project to develop programs for solving optimization problems
and nonlinear systems
is
under way at the Argonne National L::,boratory. The
program package
is
called MINPACK, and version 1
is
available [see More et al.
(1980)
and
More et al. (1984)].
It
contains routines for nonlinear systems and
nonlinear least squares problems. Future versions are intended to include pro-
grams for both unconstrained and constrained optimization problems.
Discussion of the Literature
There
is a large literature on methods for calculating the roots of a single
equation. See the books by Householder
(1970), Ostrowski (1973), and Traub
(1964) for a more extensive development than has been given here. Newton's
method
is
one
of
the most widely used methods, and its development
is
due to
many
people.
For
an historical account of contributions to it by Newton,
Raphson, and Cauchy, see Goldstine
(1977, pp. 64, 278).
For
computer programs, most people still use and individually program a
method that is especially suitable for their particular application. However, one
should strongly consider using one of the general-purpose programs that have
been developed in recent years and that are available in the commercial software
libraries. They are usually accurate, efficient,
and
easy to use. Among such
general-purpose programs, the ones based on Brent
(1973) and Dekker (1969) has