1. Introduction
The progressive iterative approximation (PIA) is an important iterative method for fitting a given set of data points. Due to its clear geometric meaning, stable convergence and simple iterative scheme, the PIA has intrigued researchers for decades. In particular, said methodology has achieved great success in geometric design [
1,
2], data fitting [
3,
4], reverse engineering [
5] and NURBS solid generation [
6,
7,
8]. For more detailed research on this topic, we refer the reader to read a recent survey [
9]. However, the PIA converges very slowly, especially when the number of interpolating points increases to some extent. This is because the collocation matrices resulting from some normalized totally positive (NTP) bases are usually ill-conditioned; see [
10,
11]. Therefore, much more attention was paid to accelerating the convergence rate of PIA; see the weighted progressive iteration approximation (WPIA) (also named modified Richardson method) in [
12,
13]; the QR-PIA in [
11]; the Jacobi-PIA in [
14]; the Chebyshev semi-iterative method in [
15]; the progressive iterative approximation with different weights (DWPIA) in [
16]; the GS-PIA in [
17]; the PIA with mutually different weights in [
18]; the Schulz iterative method in [
19]; and a lot literature therein.
There are other remedy strategies, such as locally interpolating, i.e, interpolating partial points selected from the total given points, which results in the local progressive-iterative approximation format [
20], the extended progressive-iterative approximation format [
21] and the progressive iterative approximation format for least square fitting [
22].
Let
be an NTP basis, such as the Bernstein basis [
23] or the Said–Ball basis [
24]. Given a set of data points
in
or
, we assign a parameter value
to the
i-th point
. For PIA, the initial interpolating curve is given by
and the
-th interpolating curve can be generated by
where
Equation (
1) can be rewritten as the following form
which generates a sequence of control polygons
, for
.
Let
,
,
. Then the matrix form of Equations (
1) and (
2) is
where
,
,
I is the identity matrix and
B is the collocation matrix resulting from the basis
at
,
. We note in [
23] that the collocation matrix
B resulting from any NTP basis is a stochastic totally positive matrix.
If
, then the sequence of curves
is said to have the PIA property and Equation (
2) is referred to as the PIA format. It is shown in [
25] that the PIA property holds for any NTP basis.
In fact, the PIA is mathematically equivalent to the Richardson iteration for solving the collocation matrix equation
see [
15,
26]. Therefore, the state-of-the-art iterative method, the generalized minimal residual (GMRES) method for solving general linear systems of equations, was suggested in [
26] for solving (
4). It is known that the GMRES method works efficiently when the coefficient matrix
B is positive definite. It is true that the GMRES has better convergence behavior than PIA in the same required precision when fitting 19 points on the helix. However, we found that the collocation matrix
B resulting from some NTP bases is not always positive definite, even if
B is a totally positive matrix. This led us to further study the PIA. Obviously, the convergence of PIA depends on the spectral radius of the iteration matrix
. The smaller the spectral radius is, the faster the PIA converges. This motivated us to use the preconditioning techniques to reduce the spectral radius of the iteration matrix
. The PIA consists of the interpolatory PIA and the approximating PIA [
9]. In the first case, the number of the control points is the same as that of the given data points. In the second case, the number of the selected control points is less than that of the given data points. In this paper, we focus on preconditioning the interpolatory PIA. The proposed preconditioning technique can be extended straightforwardly to the approximating PIA.
The paper is organized as follows. In
Section 2, we first exploit the diagonally compensated reduction of the collocation matrix
B to construct a class of preconditioners for
B; then we establish the PPIA (preconditioned PIA) format and analyze its convergence. In order to improve the computational efficiency of the PPIA, we further propose an IPPIA (inexact PPIA) format and analyze its convergence in
Section 3. Finally, some numerical examples are given to illustrate the effectiveness of our proposed methods in
Section 4.
3. The Inexact Preconditioned Progressive Iterative Approximation (IPPIA)
As mentioned in Remark 1, we need to compute or equivalently solve at the k-th iteration. This is very costly and impractical in actual implementations for large n. To reduce the computational complexity, we propose an IPPIA format in which we inexactly solve by employing a state-of-the-art iterative method, that is, the conjugate gradient (CG) method for solving the related system of normal equations.
3.1. The Inexact Solver
Denote by the iteration sequence generated from IPPIA format defined below. Since the sequence is an approximation of , in should be replaced by .
Now, let
be the
l-th approximation of the solution of
which can be obtained by employing the CG method to solve the system of normal equations
The CG method used here can be thought of as an inner iterative format and terminates if
where
is the prescribed stopping tolerance and
is the Frobenius norm.
Once the approximation
to (
13) satisfies (
15), we can form
by the following outer iteration
We refer to (
16) as the IPPIA format.
Very often, to ensure the computational efficiency, the iteration (
16) can also be terminated if the stopping criterion,
is satisfied, where
defined by
is the interpolation error of the
k-th interpolating curve
.
Since the term
in (
10) is replaced by an inexact solution
, the iterative sequence
does not necessarily converge to the exact solution
. Clearly, the selection of
will affect the convergence of iterative sequence
. If
equals to zero, the solution obtained by the CG method is the exact one for the system (
14). In this case, the IPPIA format is reduced into the PPIA format. Therefore, one can expect that the iterative sequence has a good convergence rate if
is chosen to be small enough. The selection of
is discussed in the following subsection.
3.2. Convergence Analysis of IPPIA
Theorem 1. Let P be the preconditioner defined as in (
8)
for B and be the exact solution to (
4).
Suppose that the CG method starts from an initial guess , terminates if (
15)
is satisfied and produces an inner iterative sequence for each outer iterative index k, where is an approximation of . Then, for the iterative sequence generated by IPPIA, we havewhere . In particular, ifthen the iterative sequence converges to , where . Proof. Note that
,
, from (
10), we have
Let
be the exact solution of (
4). Then
According to (
16), (
20) and (
21), we have
Due to the nonsingularity of
P, (
22) can be transformed into
Since
, from the hypothesis (
15), we have
Combining (
23) with (
24), we have
Since
, we have from (
25) that
for small enough
. The proof is thus complete. □
Theorem 1 tells us that the error of the IPPIA iteration consists of two parts: and . The first part is the error upper bound for PPIA iteration. The second part is the error upper bound resulting from the CG method, depending on the choice of the stopping tolerance . This is hard to be optimally determined between the convergence rate and computational costs in practice.
The following theorem presents one possible way of choosing the tolerance .
Theorem 2. Let the assumptions in Theorem 1
be satisfied. Suppose that is a nondecreasing and nonnegative sequence satisfying , and , and that χ is a real constant in the interval satisfyingwhere c is a nonnegative constant. Then we havei.e., the convergence rate of IPPIA is asymptotically the same as that of PPIA. Proof. From (
25) and (
26), we have
Since , the result follows straightforwardly. □
Remark 3. Theorem 2 tells us that the convergence rate of IPPIA is asymptotically the same as that of PPIA if the tolerance sequence approaches 0 as k increases. To reduce the computational complexity, it is not necessary for to approach zero in actual implementations, which will be shown numerically in the next section.
5. Conclusions
In this paper, we have exploited the properties of collocation matrix B, resulting from an NTP basis, to design an efficient preconditioner P for PIA. The main tool to derive our preconditioner is the diagonally compensated reduction. By applying that P to PIA, we have developed a novel version of PIA, called the PPIA. By both convergence theory and numerical experiments, we have shown that the PPIA outperforms the WPIA and DWPIA, in the sense of convergence rate and elapsed CPU time. In particular, to reduce the computational complexity of PPIA, we have also proposed an inexact variant of PPIA (i.e., IPPIA) and shown its effectiveness, especially when the number of interpolating points is large.
As mentioned in
Section 1, the PIA has extensive successful applications. Therefore, we can expect that our methods have a wide range of potential applications.