← All notes

Note · Controls

Forward-Backward Linear Predictor (FBLP)

Improving the efficiency of our prediction.

Forward Predictor

Suppose we have series x[t]x[t] and we want to predict the next values using the previous mm observations. This problem is written as

x[t]=−∑i=1maix[t−i]+f[t]\begin{align*} x[t] = -\sum_{i=1}^m a_i x[t-i] + f[t] \end{align*}

where f[t]f[t] is the forward error predictor. Note that aia_i corresponds to the coefficient on the observation that is ii time-steps before x[t]x[t].

This premise leads to the following matrix formulation:

x=Ah+f[x[m+1]x[m+2]⋮x[N]]=[x[m]x[m−1]…x[1]x[m+1]x[m]…x[2]⋮⋮⋱⋮x[N−1]x[N]…x[N−m]][−a1−a2⋮−am]+[f[m+1]f[m+2]⋮f[N−1]]\begin{align*} \pmb x &= A\pmb h + \pmb f \\ \begin{bmatrix}x[m+1] \\ x[m+2] \\ \vdots \\ x[N]\end{bmatrix} &= \begin{bmatrix} x[m] & x[m-1] & \dots & x[1] \\ x[m+1] & x[m] & \dots & x[2] \\ \vdots & \vdots & \ddots & \vdots \\ x[N-1] & x[N] & \dots & x[N-m] \end{bmatrix} \begin{bmatrix}-a_1 \\ -a_2 \\ \vdots \\ -a_m\end{bmatrix} + \begin{bmatrix}f[m+1] \\ f[m+2] \\ \vdots \\ f[N-1] \end{bmatrix} \end{align*}

Backward Predictor

Using the same data as before, we’re now interested in predicting the preceeding values using mm future values. Due flipping the order, we write this problem using the complex conjugate.

x‾[t]=−∑i=1maix‾[t+i]+b‾[t]\begin{align*} \overline x[t] = -\sum_{i=1}^m a_i \overline x[t+i] + \overline b[t] \end{align*}

where b[t]b[t] is the backward error predictor. Note that aia_i corresponds to the coefficients on the observation that is ii time-steps after x[t]x[t] .

Sampling a various values of tt we obtain a system of equations that can be written in matrix form as

x‾=A‾h+b‾[x‾[1]x‾[2]⋮x[N−m]]=[x‾[2]x‾[3]…x‾[m+1]x‾[3]x‾[4]…x‾[m+2]⋮⋮⋱⋮x‾[N−m+1]x‾[N−m+2]…x‾[N]][−a1−a2⋮−am]+[b‾[1]b‾[2]⋮b‾[N−m]]\begin{align*} \overline{\pmb x} &= \overline A \pmb h + \overline{\pmb b} \\ \begin{bmatrix}\overline x[1] \\ \overline x[2] \\ \vdots \\ x[N-m]\end{bmatrix} &= \begin{bmatrix}\overline x[2] & \overline x[3] & \dots & \overline x[m+1] \\ \overline x[3] & \overline x[4] & \dots & \overline x[m+2] \\ \vdots & \vdots & \ddots & \vdots \\ \overline x[N-m+1] & \overline x[N-m+2] & \dots & \overline x[N]\end{bmatrix} \begin{bmatrix}-a_1 \\ -a_2 \\ \vdots \\ -a_m\end{bmatrix} + \begin{bmatrix} \overline b[1] \\ \overline b[2] \\ \vdots \\ \overline b[N-m] \end{bmatrix} \end{align*}

Forward-Backward Linear Predictor

The insight for the FBLP predictor is seeing that we can stack these AA matrices to find a lower variance estimate of h\pmb h. The assumption being that the relationship is symmetrical.

By this, I mean that the coefficient aa in the expression ax[t]+f[t]=x[t+1]a x[t] + f[t] = x[t+1] is the same as the coefficient aa found in the expression ax[t+1]+b[t+1]=x[t]a x[t+1] + b[t+1] = x[t].

Now we simply stack the the two AA matrices and x\pmb x matrices to get

[x[m+1]x[m+2]⋮x[N]x‾[1]x‾[2]⋮x[N−m]]=[x[m]x[m−1]…x[1]x[m+1]x[m]…x[2]⋮⋮⋱⋮x[N−1]x[N]…x[N−m]x‾[2]x‾[3]…x‾[m+1]x‾[3]x‾[4]…x‾[m+2]⋮⋮⋱⋮x‾[N−m+1]x‾[N−m+2]…x‾[N]][−a1−a2⋮−am]+[f[m+1]f[m+2]⋮f[N−1]b‾[1]b‾[2]⋮b‾[N−m]]\begin{align*} \begin{bmatrix}x[m+1] \\ x[m+2] \\ \vdots \\ x[N] \\ \overline x[1] \\ \overline x[2] \\ \vdots \\ x[N-m]\end{bmatrix} = \begin{bmatrix} x[m] & x[m-1] & \dots & x[1] \\ x[m+1] & x[m] & \dots & x[2] \\ \vdots & \vdots & \ddots & \vdots \\ x[N-1] & x[N] & \dots & x[N-m] \\ \overline x[2] & \overline x[3] & \dots & \overline x[m+1] \\ \overline x[3] & \overline x[4] & \dots & \overline x[m+2] \\ \vdots & \vdots & \ddots & \vdots \\ \overline x[N-m+1] & \overline x[N-m+2] & \dots & \overline x[N] \end{bmatrix} \begin{bmatrix}-a_1 \\ -a_2 \\ \vdots \\ -a_m\end{bmatrix} + \begin{bmatrix} f[m+1] \\ f[m+2] \\ \vdots \\ f[N-1] \\ \overline b[1] \\ \overline b[2] \\ \vdots \\ \overline b[N-m] \end{bmatrix} \end{align*}