Non-linear Fractal Interpolating Functions
R. Kobes, H. Letkeman
We consider two non-linear generalizations of fractal interpolating functions generated from iterated function systems. The first corresponds to fitting data using a Kth-order polynomial, while the second relates to the freedom of adding certain arbitrary functions. An escape-time algorithm that can be used for such systems to generate fractal images like those associated with Julia or Mandelbrot sets is also described.
1,2]. The simplest such system defines an IFS 1], the attractor of the IFS is a graph that passes through the data points. In this particular case, the IFS of Eq. (1) uses a linear (in t) function between adjacent points to interpolate the data.
Various generalizations of fractal interpolating functions have been considered, including those for higher dimensional functions, the use of hidden variables, and extensions to certain non-linear distortions [3,4,5,6,7]. In this note we describe a generalization whereby the transformation incorporates a Kth-order polynomial (in t) interpolation. We also discuss certain classes of non-linear functions that can arise in such interpolating functions, and show how such functions can, with the use of a particular escape-time algorithm, be used to generate fractal images.1) and impose, for n = 1, 2,..., N, 1) can be written as
Thus, Wn(x) x is determined by a linear (in t) interpolating function constructed between the points ( tn - 1, xn - 1) and (tn, xn). Assuming that the corresponding IFS transformation is contractive, so that the distance d (t, x) between any two points in the range of interest satisfies d (Wn(t), Wn(x))sn d (t, x),where 0 < sn1 is the contractivity factor, graphs of fractal interpolating functions can be made by applying the standard random iteration algorithm to the IFS:
A generalization of this type of fractal interpolating function can be
found by considering an IFS of the form
where gn(x) is, at this stage, an arbitrary function (Ref.  has considered the cases gn(x) = dnx and gn(x) = dnx2). Imposing the conditions (2) leads to the same expressions for an and en as in Eq. (3) but cn and fn given by
and impose the conditions, for n = 2, 3,..., N,
With this, the transformation can be written as
which thus uses a quadratic (in t) interpolating function between the points (tn, xn), ( tn - 1, xn - 1), and ( tn - 2, xn - 2).
As in the previous section, including an arbitrary function
gn(x) in the IFS transformation via
is straightforward. The conditions (9) leads to determination of the point tm of Eq. (10) as before, together with the accompanying point xm. The transformation itself has the same form as Eq. (12) with the following replacements:
From these considerations, the pattern to constructing a Kth-order fractal
interpolating function is apparent. Start with a transformation of the
and impose the conditions, for n = K, K + 1,..., N, 15), as well as the K - 1 intermediate points tmj, j = 1, 2,..., K - 1 and corresponding xmj points. The resulting transformation will be of the form given by Lagrange's formula for a Kth-order polynomial interpolating function constructed from K + 1 points:
The inclusion of an arbitrary function gn(x) in the transformation Wn(x) of Eq. (15), as was done for the linear and quadratic transformations of Eqs. (5) and (13) respectively, is straightforward. As might be expected, the use of these higher-order interpolating functions can increase the accuracy of the interpolation significantly, at least for smooth functions. As an informal example, consider the interpolation of the function x4exp(- x)cos(x) - a comparison of the relative error using a linear vs. a quadratic interpolation function appears in Fig. 1, where it can be seen that the a quadratic interpolation offers an order-of-magnitude improvement in the fit over most of the range.
Suppose we have an IFS transformation Wn(t,
x), generated by some data points (xi,
yi), i = 0,
1,..., N, which includes a non-linear function
gn(x), as was done for the linear and quadratic
transformations of Eqs. (5) and (13)
respectively. We now continue the real variable x of this
transformation to complex values: xz =
(zR, zI), in effect defining a complex
for n = 0, 1,..., N. We can then, in analogy with the algorithm used for Julia sets, define the following escape-time algorithm to generate a fractal pattern:
The arbitrariness of the function gn(x) and the data set (ti, xi) used to fix the IFS leads to a wide variety of possible fractal images. An interesting class of functions gn(x) to consider are those for which, when continued to the complex plane xz = (zR, zI), lead to a map having a fixed point zI* = 0 = Imgn(zR, zI*). In such a case one could augment the usual condition of the escape-time algorithm to cease iteration: > , where is some suitably large value, to also cease iteration when | zI| < , where is a suitably small value. The coloring algorithm used to plot a pixel, which depends on the number of iterations attained when this break-out condition was met (if at all), will then lead to structure in the region where the break-out condition on the magnitude of z is not met.
We give two examples of fractal images generated this way for the choice gn(x) = - 0.4x + 0.5x2 + 0.2x3, with the data generated from the logistic map xn + 1 = 3.4xn(1 - xn), with n = 0, 1,...60. The first one, appearing on the left in Fig. 2, corresponds to the generalization Eq. (5) of a linear (in t) fractal interpolating function, while the second image on the right of Fig. 2 corresponds to the generalization Eq. (13) of a quadratic (in t) interpolating function. A coloring algorithm that simply mapped a color to the number of iterations attained when the break-out condition became satisfied was used in both cases.
These figures illustrate, in the interior of the fractal object, the richer structure arising from the quadratic over the linear interpolation function. In this region the break-out condition | zI| < is satisfied, which numerically for 10-5 is attained after a relatively small number (10-30) of iterations.
This work was supported by the Natural Sciences and Engineering Research Council of Canada.