An approach for minimizing tracking errors in linear time-invariant (LTI) single-input single-output (SISO) discrete-time systems with nonminimum phase (NMP) zeros using filtered basis functions (FBF) is studied. In the FBF method, the control input to the system is expressed as a linear combination of basis functions. The basis functions are forward filtered using the dynamics of the NMP system, and their coefficients are selected to minimize the error in tracking a given desired trajectory. Unlike comparable methods in the literature, the FBF method is shown to be effective in tracking any desired trajectory, irrespective of the location of NMP zeros in the z-plane. The stability of the method and boundedness of the control input and system output are discussed. The control designer is free to choose any suitable set of basis functions that satisfy the criteria discussed in this paper. However, two rudimentary basis functions, one in time domain and the other in frequency domain, are specifically highlighted. The effectiveness of the FBF method is illustrated and analyzed in comparison with the truncated series (TS) approximation method.

## Introduction

There are two general classes of motion control tasks; they are: point-to-point control and tracking control. Point-to-point control focuses primarily on the beginning and the end states of the motion, with little or no concern about the motion states in between. However, in tracking control, the output of the controlled system is expected to follow the desired trajectory as closely as possible at every time instant. Tracking control is critical in several applications, including manufacturing, robotics, and aeronautics. The focus of this paper is on tracking control of LTI SISO discrete-time systems, representing open-loop or feedback-controlled plants.

Perfect tracking control (PTC) can be achieved, in theory, by model inversion (i.e., pole-zero cancellation) [1]. PTC results in zero gain and phase errors between the desired and output trajectories, if the system model is accurate and has a stable inverse. However, when applied to systems with NMP zeros, PTC gives rise to highly oscillatory or unstable control trajectories which are unacceptable. NMP zeros are prevalent in practice. For example, they occur in systems with fast sampling rates [2], as well as in systems with noncollocated placement of sensors and actuators [3]. Hence, a lot of research has been done on developing methods for tracking control of systems with NMP zeros. Available approaches can be classified into two categories: approximate model inversion [1,4–13] and direct model inversion with bounded control trajectories [14–23].

The most-straightforward way to implement approximate inversion is to cancel all the poles and cancelable zeros while ignoring the NMP and poorly damped zeros (hereinafter referred to as uncancelable zeros). This technique is called stable pole-zero canceling or NMP zeros ignore (NPZ-ignore) [8,9], and it results in a controlled system that exhibits magnitude and phase errors between its desired and output trajectories. Zero magnitude error tracking control (ZMETC) [8,10,12] focuses on canceling magnitude errors across all the frequencies at the expense of phase errors, whereas zero-phase error tracking control (ZPETC) [1] focuses on canceling phase errors across all the frequencies at the expense of magnitude errors. Depending on the system and the performance specifications, NPZ-ignore, ZMETC, and ZPETC may not yield satisfactory tracking performance due to the approximations involved. Various methods have been suggested to improve the tracking performance of approximate inversion methods [5–7,11,13]. The most notable is extended bandwidth zero-phase error tracking control (EBZPETC) [5], which is based on the power series expansion of ZPETC. The tracking performance of EBZPETC gets progressively better compared to ZPETC as more terms are added to the power series, provided that the series is convergent [7]. The problem is that the series is not convergent for NMP zeros on the right half *z*-plane, in which case the performance of EBZPETC becomes worse compared to that of ZPETC [7]. As an improvement to EBZPETC, the truncated series (TS) approximation method [4] uses the power series of the inverse of the uncancelable dynamics to improve the tracking accuracy of the system. The TS method always results in a convergent series. However, it fails completely (i.e., is undefined) when the uncancelable zeros lie on the unit circle. Moreover, as the uncancelable zeros approach the unit circle, the number of terms required to achieve a desired level of tracking accuracy increases drastically.

Direct inversion techniques [14–17] can achieve perfect tracking with infinite preview (i.e., knowledge of future desired trajectories) and pre-actuation (i.e., actuation applied before a time interval without affecting the output during the time interval). Methods with finite preview and pre-actuation have been developed, to achieve tracking with reasonable accuracy [18–20,22]. Similar to the TS method, the pre-actuation needed for direct inversion techniques [16,18–20,22] tends to increase as the uncancelable zero approaches the unit circle in the *z*-plane and is infinite for zeros on the unit circle (i.e., for nonhyperbolic systems) [21]. Methods have been proposed to solve this problem [21,23–25]. However, such methods are applicable to only a restrictive set of systems [24] or desired trajectories [21,25]; alternatively, stable inversion is achieved by perturbation of the unstable inverse system, at the cost of tracking accuracy [23].

One therefore observes a major problem with the discussed methods: they are not effective in tracking arbitrary desired trajectories regardless of the location of NMP zeros in the *z*-plane.

In Ref. [26], the first three authors proposed FBFs method for tracking control of NMP systems and showed through comparative simulations that the FBF method outperforms popular methods like NPZ-ignore, ZPETC, and ZMETC in tracking examples. The FBF method assumes that the desired trajectory to be tracked is fully known, and that the control trajectory can be expressed as a linear combination of basis functions having unknown coefficients. The basis functions are forward filtered using the modeled dynamics of the system and the coefficients selected to minimize the errors in tracking a given desired trajectory. A similar idea was presented by Frueh and Phan [27], in the context of iterative learning control, as the inverse linear quadratic learning (or inverse LQL) solution. Moreover, Lunenberg et al. [28] presented a tracking control method based on inverting the convolution matrix of the system to be tracked; this method [28] can be viewed as a special case of FBF that uses a set of basis functions that completely span the desired trajectory space. Jetto et al. [25] employed another special case of FBF, based on spline segments as basis functions, in determining the transient portion of a tracking control signal for tracking NMP systems. However, as noted earlier, their method is applicable to only a restrictive class of desired trajectories [25]; furthermore, it requires the use of feedback control to be effective.

The goal of this paper is to provide a thorough theoretical treatment of the FBF approach in the context of tracking control of SISO discrete-time systems with NMP zeros. Specifically, the original contributions of this paper in relation to the FBF method are in: (i) providing conditions for existence of a solution; (ii) providing conditions for bounded input bounded output (BIBO) stability; (iii) analyzing effects of the number and type of basis functions; and (iv) demonstrating its effectiveness in tracking arbitrary desired trajectories, with or without feedback, regardless of the location of NMP zeros in the *z*-plane.

Section 2 presents the FBF method and answers fundamental questions related to the existence of a solution, stability, and the effect of the number of basis functions on performance; it also discusses the limiting case when the number of basis functions is equal to the number of discrete points in the desired trajectory, resulting in perfect tracking. Section 3 introduces two rudimentary basis functions—one in the time domain and the other in the frequency domain. They are then employed in Sec. 4 to illustrate the theoretical concepts discussed in Sec. 2, using simulation-based examples, followed by conclusions and future work in Sec. 5.

## Problem Statement and Overview of Filtered Basis Functions Approach

Consider the LTI SISO discrete-time system (with transfer function *G*(*z*)) shown in Fig. 1, controlled by a tracking controller *C*(*z*). The system *G*(*z*) could represent the model of an open-loop plant or that of a closed-loop controlled system. Given a desired trajectory, *y _{d}*(

*k*), where 0 ≤

*k*≤

*E*,

*k*∈ ℤ, and

*E*+ 1 is the number of discrete points in the trajectory, the objective of tracking control is to design

*C*(

*z*), such that its output (i.e., the control trajectory)

*u*(

*k*), after passing through

*G*(

*z*), results in an output trajectory

*y*(

*k*) that is sufficiently close to

*y*(

_{d}*k*). Ideally,

*C*(

*z*) =

*G*(

*z*)

^{−1}should be selected, such that the overall dynamics

*L*(

*z*) =

*C*(

*z*)

*G*(

*z*), from

*y*(

_{d}*k*) to

*y*(

*k*), is unity over the entire range of frequencies, resulting in perfect tracking. However,

*C*(

*z*) =

*G*(

*z*)

^{−1}is unrealizable if

*G*(

*z*) contains uncancelable zeros. Let

*A*(

*z*),

*B*(

*z*),

*B*(

_{s}*z*), and

*B*(

_{u}*z*) are the polynomials in

*z*with constant coefficients. The polynomial

*B*(

_{s}*z*) contains the stable and sufficiently damped zeros of

*G*(

*z*), while

*B*(

_{u}*z*) contains its uncancelable zeros which prevent

*C*(

*z*) =

*G*(

*z*)

^{−1}from being realized. The state-space representation (minimal realization) of the system is given by

**x**(

*k*) is the state vector of length

*n*

_{o}(equal to the order of the system), while

**A**

*,*

_{d}**B**

*,*

_{d}**C**

*, and*

_{d}*D*are the system's state, input, output, and feedforward matrices, respectively. (Note that

_{d}*D*is a scalar because the system is SISO.) The state-space representation of the system can be converted to its transfer function representation using the relationship

_{d}where $Ino$ is the identity matrix of order *n _{o}*. It is assumed in this paper that the entire desired trajectory,

*y*(

_{d}*k*), is known a priori, which is reasonable in many practical tracking control applications, like those in manufacturing, robotics, and aeronautics.

### Filtered Basis Functions (FBF) Approach.

*φ*(

_{i}*k*)},

*i*= 0, 1,.,

*n*, is a set of

*n*+ 1 linearly independent basis functions, and {

*γ*} is a set of coefficients,

_{i}*γ*∈ ℝ. Based on Eq. (4), the output trajectory can be expressed as

_{i}*G*(or an accurate model of it). Let us define

*U*and

*Y*, the input and output vector spaces (with an inner product defined as the vector dot product), respectively, as

The vector spaces *U* and *Y* are subspaces of ℝ^{E}^{+1} because any trajectory defined over *E* + 1 discrete-time points belongs to ℝ^{E}^{+1}. Note that the input vector space *U* is *n* + 1 dimensional but the output vector space *Y* may not be *n* + 1 dimensional because the filtered basis functions $\phi \u0303i(k)$ are not necessarily linearly independent.

*y*(

*k*) =

*y*(

_{d}*k*) for all

*k*), the coefficients {

*γ*} should satisfy the relation

_{i}The approximation is equivalent to the minimization of $\Vert e\Vert 22$, where $e=[e(0)e(1)\u2026e(E)]T$ is the tracking error vector, based on the definition *e*(*k*) = *y _{d}*(

*k*) −

*y*(

*k*). Note that the solution to Eq. (9) exists and is unique, if and only if the rank of $\Phi \u0303$ is

*n*+ 1, i.e., if and only if the filtered basis functions are linearly independent. Section 2.2 discusses conditions for linear independence of filtered basis functions. Figure 2 provides a pictorial representation of the FBF method. The coefficients

**γ**depend on the given desired trajectory

**y**

*and the filtered basis functions $\Phi \u0303$ and hence, on the system*

_{d}*G*(

*z*) and the basis functions

**Φ**selected by the user.

**L**is a projection matrix from the desired trajectory to the output trajectory [30], functionally equivalent to

*L*(

*z*) =

*C*(

*z*)

*G*(

*z*) in Fig. 1 (i.e.,

**L**is the convolution matrix or lifted system representation [28] of

*L*(

*z*)). It is a square matrix of order

*E*+ 1, symmetric and idempotent (i.e.,

**L**

^{2 }=

**L**), with rank and trace both equal to

*n*+ 1, i.e., the number of basis functions. Similarly, the relationship between the control vector $u=[u(0)u(1)\u2026u(E)]T$ and the desired vector

**y**

*can be expressed as*

_{d}**C**is a projection matrix from the desired trajectory to the control trajectory, i.e., the convolution matrix of

*C*(

*z*) defined in Fig. 1.

Every digital filter can be expressed as a matrix over a finite time duration (for more details, refer to Appendix A). Hence, each row *k* of matrices **L** and **C** represents a finite impulse response (FIR) filter which acts on **y*** _{d}* to generate the corresponding

*y*(

*k*) and

*u*(

*k*), respectively. Note that

**L**and

**C**are not necessarily Toeplitz matrices [31] (i.e., matrices having constant entries along their diagonals).

*Remark 1*. The fact that **L** and **C** for the FBF method are non-Toeplitz implies that *L*(*z*) and *C*(*z*) are both equivalent to time-varying FIR filters (for more details, see Appendix A). This constitutes a fundamental difference between the FBF method and techniques like NPZ-ignore, ZPETC, ZMETC, EBZPETC, and TS, whose **L** and **C** matrices are always Toeplitz because their corresponding *L*(*z*) and *C*(*z*) are LTI filters (for more details, see Appendix A). It is also interesting to note that the *L*(*z*) (or **L**) of NPZ-ignore, ZPETC, ZMETC, EBZPETC, TS, etc., depends solely on *B _{u}*(

*z*), whereas for the FBF method, the elements of

**L**depend on the entire system dynamics,

*G*(

*z*), as well as the selected basis functions, {

*φ*(

_{i}*k*)}.

### Linear Independence of Filtered Basis Functions.

*Y*are both equal to

*n*+ 1 [32]. The linear dependence of filtered basis functions ${\phi \u0303i(k)}$ implies the existence of nonzero {

*η*}, such that

_{i}implying that a nonzero *u*(*k*) belongs to the null space of the system.

*y*(

*k*) is composed of a zero input response (ZIR) and a zero state response (ZSR) [29], i.e.,

*E*+ 1 equations and

*E*+ 1 +

*n*

_{o}unknowns) with infinitely many solutions. The solutions to Eq. (16) form a vector space (denoted as $U\u2322$) which is

*n*

_{o}dimensional. If

**x**

_{0}(0),

**x**

_{1}(0),.,

**x**

*(0) represent the initial states used to forward filter basis functions*

_{n}*φ*

_{0}(

*k*),

*φ*

_{1}(

*k*),.,

*φ*(

_{n}*k*), respectively, then the filtered basis functions are linearly dependent if there exists nonzero {

*η*} and $[u\u2322Tx\u2322T(0)]T\u2208U\u2322$, such that

_{i}Note that $u\u2322$ and $x\u2322(0)$ are dependent on the dynamics of a given system, whereas **Φ** and **X** can be freely selected by the user.

*Remark 2*. The rank condition given by Eq. (19) is very hard to satisfy, meaning that linear dependence of filtered basis functions is highly improbable. Nonetheless, should Eq. (19) be satisfied by a given **Φ** and **X**, the control designer can easily modify either **Φ** or **X** to establish linear independence of the filtered basis functions, as is demonstrated using an example in Sec. 4.1.

### Stability.

*y*(

_{d}*k*), be given by

**L**as

*l*(

*j*,

*k*) (0 ≤

*j*≤

*E,*0 ≤

*k*≤

*E*) and hence any row

*j*of Eq. (10) can be expressed as

*y*(

_{d}*k*), results in output,

*y*(

*k*), and control trajectories,

*u*(

*k*), which are bounded by the infinity norms of

**L**and

**C**, respectively. The bounds on the trajectories depend on matrices

**L**and

**C**, and hence on the system and the selected basis functions. This implies that, for BIBO stability, the infinity norms of

**L**and

**C**should be bounded. The projection matrices

**L**and

**C**defined by Eqs. (10) and (11), respectively, are quite cumbersome to analyze due to the presence of $(\Phi \u0303T\Phi \u0303)\u22121$. As discussed in Ref. [27], the analysis can be simplified by use of decoupled filtered basis functions ${\psi \u0303i}$ in place of filtered basis functions ${\phi \u0303i}$, where $\phi \u0303i$ is the

*i*th column of $\Phi \u0303$. For more details on decoupled filtered basis functions, see Appendix B. Based on the discussion in Appendix B (Eq. (B11)), the matrix

**L**can be expressed in terms of decoupled filtered basis functions, as [33]

*G*(

*z*) (with a time-domain representation $g(k\xaf)$) as follows:

The implication of Eqs. (32) and (33) is that $\Vert \psi i\Vert 1$ (and hence $\Vert \phi i\Vert 1$, where $\phi i$ is the *i*th column of $\Phi $.) should be bounded for BIBO stability, i.e., the basis functions should be absolutely summable.

*Remark 3*. The results of this section demonstrate that the LTV system resulting from the FBF method is BIBO stable for any finite number of absolutely summable basis functions; basis functions with finite length (i.e., for which $E<\u221e$) will always satisfy these criteria.

### Effect of Number of Basis Functions on Tracking Performance.

*n*increases, the dimension of the output vector space

*Y*increases and the overdetermined system of equations described by Eq. (8) tends toward a determined system of equations. Similarly, as

*n*increases, the overdetermined system of equations given by Eq. (17) tends toward a determined system of equations, thus increasing the probability of linear dependence of filtered basis functions, as is demonstrated using an example in Sec. 4. It is instructive to examine the limiting situation when

*n*=

*E*. Following the procedure outlined in Appendix A, if the convolution matrix (i.e., lifted system representation [28]) of

*G*(

*z*) is denoted as

**G**(an order

*E*+ 1 square matrix), then

For a causal LTI system, **G** is a lower triangular Toeplitz matrix [31], if the initial state is zero. For a biproper system, **G** is an invertible matrix. Therefore, when *n* = *E*, the matrices **L** and **C** represent time-invariant FIR filters. The condition **L** = **I**_{E}_{+1} is equivalent to *L*(*z*) = 1. For a strictly proper system (i.e., number of poles exceeds the number of zeros by *r*, *r* > 0), the filtered basis functions are linearly dependent. In this case, the tracking error can be defined as *e*(*k*) = *y _{d}*(

*k*) −

*y*(

*k*+

*r*) [36] (i.e.,

*r*zeros can be added at

*z*= 0 to make the system biproper), such that the matrix

**G**becomes invertible [28]. For specific applications, modifications to the system might not be possible nor desirable; in such cases, the user can reduce

*n*slightly to achieve near-perfect tracking (given that perfect tracking is rarely required in practice).

*Remark 4*. Equation (40) implies that, irrespective of the basis functions employed, the FBF method with *n* = *E* theoretically results in perfect tracking, provided $E<\u221e$. Perfect tracking is not theoretically achievable by comparable methods like EBZPETC and TS because they require an infinite number of terms.

*Remark 5*. It is well known that if *G*^{−1}(*z*) contains NMP zeros, it is not BIBO stable, but, as demonstrated in Sec. 2.3, the FBF method is BIBO stable for $E<\u221e$. This is because the FBF equivalent of *C*(*z*), i.e., $C=G\u22121$, represents the finite series expansion of *G*^{−1}(*z*), which is bounded because of the finite time duration considered.

Note, however, that **G** has been shown to become ill-conditioned as *E* → ∞, meaning that, even though bounded, its inverse could yield undesirably large control signals [28,37]. A number of approximations have been proposed to improve the condition number of **G** at the expense of tracking accuracy [28,38,39]. However, the same goal can be achieved using the FBF method by selecting *n* < *E*.

## Basis Functions

There is a wide range of basis functions available for use with the FBF method, e.g., pulses [40], Laguerre functions [41], wavelets [42], Legendre polynomials [43], discrete cosine transform (DCT) [36], nonuniform rational B-spline (NURBS) [26], etc. The previous work of the authors [26] has illustrated the method using NURBS basis functions. This section introduces two rudimentary basis functions, which are used to elucidate the importance of the choice of basis functions on the performance of the FBF method.

### Pulse Basis Functions.

*u*(

*k*) is confined to ℝ

^{n}^{+1}. Hence, in this paper, the block pulse function (BPF), which can represent

*u*(

*k*) in ℝ

^{E}^{+1}, is adopted; it is defined as [40]

*E*among

*n*+ 1 basis functions in a uniform manner. However, some pulses may be lengthier than others if

*E*+ 1 is not an integer multiple of

*n*+ 1.

### Discrete Cosine Transform (DCT) Basis Functions.

*β*is used to preserve the energy of the signal during transformation (i.e., DCT is a unitary transform) [46,47]. The DCT definition given by Eq. (44) results in energy compaction. For most signals, the DCT has its coefficients concentrated at lower frequencies when compared, for example, to the discrete Fourier transform [36,47]. Hence, the first

_{i}*n*+ 1 terms in Eq. (44) can be used to approximate

*u*(

*k*) with little loss of information [36,46,47], as follows:

Figure 3 compares the 3 dB bandwidths [48] of BPF and DCT basis functions. The 3 dB bandwidths are computed based on Fourier transforms of BPF and DCT basis functions [47]. For both BPF and DCT, the 3 dB bandwidth increases with increase in *n*. At *n* = 0 and *n* = *E*, both basis functions have the same 3 dB bandwidth, i.e., 0 and *F _{N}* (Nyquist frequency), respectively, whereas for 0 <

*n*<

*E*, DCT has a higher 3 dB bandwidth compared to BPF, for the same

*n*.

*Remark 6*. Note from Eq. (43) that with BPF, the addition of a new basis function alters existing basis functions because the time interval [0 *E*] has to be redivided to accommodate the new basis function. However, one observes from Eq. (47) that DCT basis functions are not altered by the addition of new basis functions. As a result, BPF does not satisfy the monotonic convergence property of Eq. (36), while DCT does, as is demonstrated in Sec. 4.2.

*Remark 7*. Observe from Fig. 3 that except at *n* = 0 and *n* = *E*, BPF requires more basis functions to achieve the same 3 dB bandwidth as DCT. The implication is that, while both basis functions achieve perfect tracking when *n* = *E*, DCT results in more accurate (approximate) tracking than BPF when $n\u2208(0,E)$ (for a general desired trajectory, *y _{d}*(

*k*), which is not spanned by the filtered BPF basis functions)—as is demonstrated using examples in Sec. 4.

## Illustrative Examples

### Tracking Comparison.

where *K*, *a*, and *p* are the gain, zero, and pole of the system, respectively. Note that the gain *K* is defined such that the direct current (DC) gain of the system is unity. The previous work of the authors [26] compared the FBF method with NPZ-ignore, ZMETC, and ZPETC for the system defined by Eq. (48).

*z*-plane; therefore, it is selected for comparison with the FBF method. Using the TS method, the controller

*C*(

*z*) for

*G*(

*z*) defined by Eq. (48) can be expressed as

*n*

_{1}is the number of terms in the series), whereas the last term ensures unity DC gain for the overall dynamics,

*L*(

*z*). As $n1\u2192\u221e$, $C(z)\u2192G\u22121(z)$, thus achieving perfect tracking. However, in practice $n1$ cannot reach infinity, hence a finite series approximation is used, resulting in the overall dynamics

*L*(

*z*), given by

The implication is that, as $|a|$ decreases, a higher value of $n1$ is required to achieve the same level of tracking accuracy. Note also from Eq. (49) that the TS method cannot be applied to zeros on the unit circle (i.e., $|a|$ = 1).

To demonstrate the versatility of the FBF method with regard to handling uncancelable zeros anywhere on the *z*-plane, three values of the uncancelable zero, *a*, are examined: *a* = 2 (i.e., zero far from the unit circle), *a* = 1.001 (i.e., zero close to the unit circle), and *a* = −1 (i.e., zero on the unit circle). The three systems have the same pole *p* = 0.5 and sampling frequency 10 kHz. Table 1 provides the state-space parameters for each case; note that **A*** _{d}*,

**B**

*, and*

_{d}**C**

*are scalars because the system is first-order. For the systems under consideration, $u\u2322(k)$ and $x\u2322(0)$ can be determined from Eq. (16) as*

_{d}implying linearly independent filtered basis functions for the three systems.

Figure 4 shows the position, velocity, and acceleration profiles of a desired trajectory used for tracking error comparisons. The acceleration profile is generated using a pseudorandom binary sequence [49] (with band = [0 1] and limits = ±10^{5 }mm/s^{2}) in MATLAB 8^{®}. The velocity and position profiles are obtained by integration and double integration of the acceleration profile, respectively. The sampling frequency is 10 kHz, and the total duration is 0.01 s (i.e., *E* = 100). Figure 5 compares the tracking errors and control input signals of FBF (using BPF and DCT as basis functions) and TS for the case where *n* = *n*_{1} = 50 (i.e., *E*/2). Table 2 shows their RMS tracking errors. With *a* = 2, TS shows much better tracking performance than the two cases of FBF. However, with *a* = 1.001, the tracking performance of TS becomes worse than both FBF cases because it requires more terms to accurately track systems with zeros close to the unit circle. When *a* = −1, the TS method fails but the FBF method works very well, indicating its versatility. Note that in all the cases, FBF using DCT is slightly better than FBF using BPF. While it is possible to select the desired trajectory, *y _{d}*(

*k*), such that BPF outperforms DCT (for example, by defining

*y*(

_{d}*k*) as a linear combination of the filtered BPF basis functions), the frequency characteristics of DCT (discussed in Sec. 3) make it in general better than BPF in tracking an arbitrary desired trajectory. The implication is that a judicious choice of basis functions could help in improving the tracking performance of the FBF method.

*n*. Let us consider the limiting case where

*n*=

*E*= 100 for tracking the desired trajectory given by Fig. 4. The corresponding limit for TS is $n1\u2192\u221e$, which is unrealizable; therefore,

*n*

_{1}= 100 is selected. As discussed in Sec. 2.4, for

*n*=

*E*, the initial states are crucial. For example, for

*a*= 2 and

*n*= 100, the rank test for $X=0n+1T$ gives

i.e., linearly independent filtered basis functions. Figure 6 compares the tracking errors and control inputs for FBF (using BPF and DCT) with TS for the three systems. Table 3 compares their RMS tracking errors.

*Remark 8*. Note that in all the three cases, FBF (irrespective of the basis functions used) achieves perfect tracking (to the extent that is numerically possible). However, achieving perfect tracking comes at the cost of higher or more oscillatory control signals, which may be problematic. Therefore, it makes sense to select the value of *n* that provides the needed level of tracking accuracy rather than opting for perfect tracking, which is often not necessary in practice.

### Effect of Number of Basis Functions on Tracking Accuracy.

To corroborate the discussion in Secs. 2.4 and 3, regarding the convergence of the FBF method as *n* increases, Fig. 7 shows the effect of *n* on $\Vert e\Vert 22$ in tracking the desired trajectory of Fig. 4 for the three systems under consideration. As *n* increases, $\Vert e\Vert 22$ decreases and at *n* = *E* = 100, BPF and DCT achieve perfect tracking with $\Vert e\Vert 22$ ≈ 0. The decrease in $\Vert e\Vert 22$ for DCT is monotonic, while that for BPF (specifically in Fig. 7(c)) is not necessarily monotonic, as noted in Remark 6. Note that for all the three cases, DCT results in lower errors compared to BPF, which follows the general observation made in Remark 7.

As discussed in Sec. 2.3, the bound on control trajectory *u*(*k*) is proportional to ||**C**||_{∞}. Figure 7 shows the variation of ||**C**||_{∞} with *n*. Note that as *n* increases, the bounds on the control trajectories increase, indicating the control effort penalty associated with improving tracking accuracy. Figure 8 shows the effect of *n* on elements of **L**, using DCT basis functions. As *n* increases, the contribution of diagonal terms in matrix **L** increases. At *n* = *E* = 100, **L** = **I**_{101} results in perfect tracking. A similar pattern can be observed for BPF.

## Conclusions and Future Work

This paper has presented a theoretical study of the FBF approach in the context of tracking control of discrete-time LTI SISO NMP systems. In the FBF method, it is assumed that the desired trajectory to be tracked is entirely known. Accordingly, the control input is expressed as a linear combination of linearly independent basis functions which are forward filtered using the system model, and their coefficients are selected to minimize the norm of the tracking error. It is shown that the FBF solution exists and is unique if the FBF are linearly independent. A rank test is established to ascertain linear independence of FBFs, based on the unfiltered basis functions, filter initial states, and system parameters. It is shown that the linear independence of FBFs can be easily achieved by properly selecting the basis functions and filter initial states.

The analyses in this paper show that the FBF method generally results in a linear time-varying system, indicating its fundamental difference from methods like ZPETC which always result in LTI systems. The concept of decoupled filtered basis functions is used to study the stability of the FBF method and the effect of the number of basis functions on its tracking accuracy. It is shown that any set of finite duration bounded basis functions results in a BIBO stable implementation of the FBF method. Moreover, its tracking accuracy improves (monotonically in some cases) as the number of basis functions increases, converging to perfect tracking when the number of basis functions equals the number of discrete points in the desired trajectory.

Two rudimentary basis functions are introduced and used in simulations to evaluate the tracking performance of the FBF method in comparison with the truncated series (TS) method. The tracking performance of the FBF method is shown to depend on a judicious selection of basis functions, as well as the number of basis functions. Most notably, however, the FBF method is shown to be effective for tracking any given trajectory irrespective of the location of the uncancelable zeros in the *z*-plane, while other methods do not demonstrate such levels of flexibility.

## Acknowledgment

This work was partially funded by the National Science Foundation's CAREER Award No. 1350202 and the second author's Rackham Centennial Award. Both awards are gratefully acknowledged.

### Appendix A: Matrix Representation of a Digital Filter

*p*

_{0}) represents the influence of the current input on the current output; the first upper diagonal element (

*p*

_{−1}) represents the influence of the succeeding input on the current output and the second upper diagonal element (

*p*

_{−2}) represents the influence of the second succeeding input on the current output. Similarly, the first (

*p*

_{1}) and second lower (

*p*

_{2}) diagonal elements represent the influence of first and second preceding inputs on the current output, respectively. Hence, the

*z*-transform of

*p*obtained from Eq. (A4) is given by

which is in accordance with the time-domain definition given by Eq. (A1). In this manner, any digital filter can be expressed as a matrix and vice versa. Also, note that an LTI filter has a Toeplitz matrix representation (i.e., diagonal-constant matrix).

### Appendix B: Decoupled Filtered Basis Functions

The approximate solution to Eq. (8) is obtained by projecting the desired trajectory, **y*** _{d}*, onto the vector space,

*Y*. As is evident from Eq. (9), the coefficients corresponding to any basis function depend on all the filtered basis functions, which implies that the filtered basis functions are coupled. Hence, Eqs. (9)–(11) require the inversion of an order

*n*+ 1 matrix, $\Phi \u0303T\Phi \u0303$, which is cumbersome numerically and analytically, especially as

*n*increases. The analyses and numerical efficiency of the FBF method are therefore facilitated by decoupling the filtered basis functions.

**L**and

**C**are invariant under decoupling, because the input (

*U*) and output (

*Y*) vector spaces are not changed by transformations [29]. The approximate solution to Eq. (B7) is

The elements of **L** (*l*(*j*,*k*)) and **C** (*c*(*j*,*k*)) are given by $\u2211i=0n\psi \u0303i(j)\psi \u0303i(k)$ and $\u2211i=0n\psi i(j)\psi \u0303i(k)$, respectively. This clearly shows that the diagonal elements of the two convolution matrices are necessarily not constant and hence, they are non-Toeplitz.

Note that decoupling has replaced the inversion of $\Phi \u0303T\Phi \u0303$ with the inversion of **α**. The conditions for the existence of **α**^{−1} are the same as those for the existence of $(\Phi \u0303T\Phi \u0303)\u22121$, as discussed in Sec. 2.2. Moreover, the upper triangular form of **α** enables Eq. (B8) and the decoupled equivalents of Eqs. (10) and (11) to be computed recursively [27], thereby eliminating the need for the inversion of an order *n* + 1 matrix.