Bernstein Polynomial Approximation
This module illustrates Bernstein polynomial approximation. The
Weierstrass approximation theorem states that for any continuous
function f on a closed interval, say [0, 1], and
any ε > 0, there is a polynomial p such that
for any x in [0, 1], | f (x)
− p(x) | < ε. Russian
mathematician Serge Bernstein gave a constructive proof of this theorem
in 1912 by explicitly producing a sequence of polynomials
that converge uniformly to f as n increases,
where the binomial coefficient
is the number of distinct ways a set of k objects can be chosen
from a set of n objects (“n choose
k”). By shifting and scaling, the Bernstein polynomials
Bn(x) can be used to approximate a
function f on any closed interval [a,
b]. The convergence of Bernstein polynomials is too slow
for many practical approximation purposes, but they enjoy certain
monotonicity and shape-preserving properties that make them useful, for
example, in computer graphics. One such application is a compact
representation of Bezier curves.
The user begins by selecting a function f(x)
from the list of available functions, and the graph
of the selected function is drawn in black. Repeatedly clicking
Next causes Bernstein polynomial approximations of increasing
degree to be added to the graph. The color of the approximating
polynomials changes from blue to red as the degree increases, and the
polynomial written below the graph is updated to reflect the
coefficients of the highest degree Bernstein polynomial shown.
Reference: George M. Phillips, Interpolation and
Approximation by Polynomials, Springer, New York, 2003. See Chapter
7, pages 247-290.
Developers: Evan VanderZee and Michael Heath