Feed forward design in MPC J.A. Rossiter and G. Valencia-Palomo
Abstract— Simple MPC algorithms produce a feed forward compensator that may be a suboptimal choice. This paper gives some insights into this issue and simple means of modifying the feed forward to produce a more systematic and optimal design. In particular it is shown that the optimum procedure depends upon the underlying loop tuning and also that there are, as yet under utilised, potential benefits with regard to constraint handling procedures. Keywords: Predictive control, tracking, feed forward, performance.
I. I NTRODUCTION This paper aims to look at some areas of model predictive control (MPC) [6], [8], [2] that have been somewhat neglected in the mainstream literature, albeit themes that occur in many places. Specifically consideration is given to tracking, especially where the set point trajectory is other than a straightforward step. This is of interest for several reasons: • One potential benefit of MPC is the ability to include, systematically, information about the future set point [3], however it is known that the original claims were severely flawed [10] due to prediction mismatch [8] whereby the class of predictions with a low control horizon n u is unable to match closely the desired closed-loop behaviour (constraints could have a similar impact). • Recent work built MPC around the unconstrained optimal [12], [5], [11] thus avoiding prediction mismatch, but could encounter difficulties with feasibility for low numbers of degrees of freedom (d.o.f.). Also this work did not discuss feed forward or trajectories that were not piecewise constant. • Where the set point is not a simple step, the paradigm of [12] is not optimal as this is based on steady-state assumptions and no advance knowledge of set point changes. A formal extension to include the set point dynamics and redo the ‘optimal control’ aspects is possible in some cases, but may not extend well to most cases and could be computationally intractable and/or impractical in general. • The amount of advance knowledge available has a significant impact on what is the best feed forward compensator during constraint handling, but little if any consideration has been given to this in the literature. The paper will be organised to first demonstrate clearly where existing algorithms have weaknesses and then several All authors are with the Department of Automatic Control and Systems Engineering, Mappin Street, University of Sheffield, South Yorkshire, UK. S1 3JD.
[email protected],
[email protected].
different approaches will be proposed for specific scenarios, along with some analysis of the corresponding strengths and weaknesses. The key point is that it may be fruitful to think of the optimisation d.o.f. and the feed forward (FF) compensator in a different way to that usually adopted in the literature. For example, it is common to adopt the closedloop paradigm [11] and treat perturbations to the nominal loop as the d.o.f., but in this case there is a significant overlap between the role of the FF and the d.o.f.; could one therefore equally consider perturbations to the FF? Another vital issue is the time duration of the d.o.f. [15], [13], [14]; where the set point is changing over a significant duration, there must be d.o.f to match this and thus the usual choice of input perturbations may not be efficient or viable. For the sake of clarity and brevity, this paper will not consider the impact of disturbances and parameter uncertainty, although future work will discuss these. Moreover, it is assumed that all steady-states are feasible and strictly inside any associated admissible sets [4] and that constraints are not time varying. So first, an overview is given of some different approaches and scenarios: 1) What potential to improve tracking is there in designing the feed forward compensator separately from the default choice within the MPC optimisation? Can this approach take systematic account of constraints, different set point trajectories and different amounts of advance knowledge? 2) What potential is there in the structure of the d.o.f. in the control predictions and thus are there preferred structures for different scenarios? The paper first revisits the basics and thus section 2 gives an overview of a conventional MPC algorithm while section 3 discusses the impact of including the feed forward as a separate design parameter. Section 4 introduces issues related to constraint handling and section 5 gives some conclusions. II. M ODELLING , PREDICTIVE CONTROL AND TRACKING This section will introduce the basic algorithms [3], [12] underneath the proposals in the paper and background information. A. Model, constraints and integral action Assume a standard state space model of the form: xk+1 = Axk + Buk ; yk = Cxk + dk
(1)
with dk the disturbance, x k ∈ Rnx , yk ∈ Rny and uk ∈ Rnu which are the state vector, the measured output and the plant input respectively. This paper adopts an independent
model approach to prediction and disturbance estimation so defining w as the output of the independent model (given by simulating model (1) in parallel with the plant), then the disturbance estimate is dˆk = yk − wk . Disturbance rejection and offset free tracking (for constant set points) will be achieved using the offset form of state feedback [7], [9], that is: uk − uss = −K(x − xss )
(2)
where x is the state of the independent model and x ss , uss are estimated values of the steady-states giving no offset; these depend upon the model parameters, the set point r and the disturbance estimate. However, where →k r = T T T T , rk+2 , ..., rk+n ] is time varying, the control law will [rk+1 a in general also have a term: Pr →k r
(3)
Pr is the FF compensator and n a is the number of samples of advance knowledge. In this paper there is an implicit assumption that rk+na +i = rk+na , ∀i ≥ 0 (this term is used to compute x ss , uss ), which may not be true for more general set point trajectories [15] but is good enough when na ≥ Ts , Ts the settling time. If n a < Ts , this is equivalent to driving in foggy conditions, thus with a restricted view of the road ahead, and clearly suboptimal performance must result. For simplicity (for details T 1 , T2 see references) define: ˆ uss = T2 (rk+n − d) ˆ xss = T1 (rk+n − d); (4) a
a
Let the system be subject to constraints of the form u ≤ uk ≤ u ∆u ≤ ∆uk ≤ ∆u ∀k y ≤ yk ≤ y
(5)
B. GPC/DMC algorithms: IMGPC In conventional MPC [3], the optimum FF arises from the optimisation. Thus if one were to consider that the prediction matrices take the form: y = P x + H∆u + Ldˆ (6) →
→
Then the performance index takes the form y )T Q( r − y ) + λ∆uT ∆u J = (→ r −→ → → → → and the unconstrained optimal IMGPC control law is: ˆ ∆u = (H T H + λI)−1 H T ( r − P x − Ld) →
→
(7) (8)
(9)
Where there are constraints, satisfaction of these over the prediction horizon implies inequalities of the form: + Fx ≤ f E∆u →
The key idea in [12], [11] is to embed into the predictions the unconstrained optimal behaviour and handle constraints by using perturbations about this. Hence, assuming K is the feedback, the input predictions are defined as follows: uk+i − uss = −K(xk+i − xss ) + ck+i ; uk+nc +i − uss = −K(xk+nc +i − xss );
(10)
Thus, the control law for the constrained case, minimising J s.t. (10), has a less clear dependence on the set point trajectory.
i = 0, ..., nc − 1 i≥0 (11)
where the perturbations c k are the d.o.f. for optimisation; conveniently summarised in vector C k = [cTk , ..., cTk+nc −1 ]T . Steady-state values corresponding to a given disturbance/set point can be computed as in (4). It is known that for suitable M, N, f (e.g. [8]), the input predictions (11) and associated state predictions for model (1) satisfy constraints (5) if: M xk + N Ck ≤ f (k)
(12)
A typical performance index is based on a 2-norm and is computed over infinite horizons for both the input and output predictions. So in the regulation case: J= ∞ (xk+i+1 − xss )T Q(xk+i+1 − xss ) i=0 (13) +(uk+i − uss )T R(uk+i − uss ) with Q, R positive definite state and input cost weighting matrices. Note that the terms in J are equivalent to that used by GPC in that one could equally find Q such that y 22 (for constant (xk+i+1 − xss )T Q(xk+i+1 − xss ) ≡ → r −→ r or time varying x ss ). In practice, the unconstrained optimal predictions may violate constraints (5), so prediction class (11) is used instead. It is easy to show [8] that optimisation of J over input predictions (11) is equivalent to minimising J = C T W C (W = B T ΣB + R, Σ − ΦT ΣΦ = Q + K T RK, Φ = A − BKi ) and thus, in the absence of constraints, the optimum is C = 0. Where the unconstrained predictions would violate constraints, non-zero C would be required to ensure constraints are satisfied. Algorithm 2.1: The OMPC algorithm is summarised as [12], [11]: C = arg min CkT W Ck
and learly the dependence upon future set point information is through the FF Pr Pr = eT1 (H T H + λI)−1 H T ; eT1 = [I, 0, 0, ...]
C. Optimal MPC
C
s.t. M xk + N Ck ≤ f (k) (14)
Use the first element of Ck in the control law of (11), with K. This algorithm will find the global optimal, with respect to (13), whenever that is feasible and has guaranteed convergence/recursive feasibility in the nominal case. Remark 2.1: There is no explicit discussion in standard references of how advance knowledge of the set point would be taken into account by algorithm 2.1, or for that matter input predictions (11). Hence, the default assumption is the simple gain which is implicit in the estimate of u ss (eqn.(4)).
Outputs with n = 1
Inputs with n = 1
u
u
1
time position of the set point moves and the algorithm has to come with a compromise. Clearly a logical algorithm has to ensure that d.o.f. are available coincident with the set point changes. In this case n u ≥ na achieves such a requirement.
0.6
0.8 0.4 0.6 0.4
0.2 IMGPC OMPC IMGPCA Set point
0.2 0 −0.2
0
5
10
15
20
25
30
E. Summary
0 −0.2
0
5
Outputs with n = 10
10
15
20
25
30
25
30
Inputs with n = 10
u
u
1
0.6
0.8 0.4 0.6 0.4
0.2
0.2 0 0 −0.2
0
5
10
Fig. 1.
15
20
25
30
−0.2
0
5
10
15
20
Closed-loop responses with various choices of nu .
D. Illustrations of poor feed forward design: no constraints This section will demonstrate briefly the weakness of standard IMGPC/OMPC algorithms with regard to handling advance knowledge of set point changes. Specifically two types of plot are given: 1) Standard behaviour of IMGPC/OMPC when there is no feed forward of set point changes; that is, the feed forward is a simple gain. 2) Standard behaviour of IMGPC when the default feed forward compensator of (9) is adopted. This is denoted IMGPCA. Figure 1 shows how the responses to some simple trajectories (step changes, ramped step) vary with: (i) the control horizon n u and (ii) the advance knowledge n a (given as 10 samples). It is clear that there are two problems: • IMPGPC/OMPC do not react until after the set point has occurred; there is no anticipation. • If na nu and nu is small, the FF causes a slow drift with IMGPCA (anticipation) before moving quickly near the time of significant set point movements. This is clearly suboptimal. Thus, the feed forward may be poorly chosen in that the advance movement of the input is far from ideal with n u = 1 • With larger nu the drift problem is less pronounced. Indeed, if n u is sufficiently large, IMGPCA gives reasonable closed-loop dynamics (close to OMPC) but more critically, the synergy with the feed forward is much improved. • The default FF of (9) is clearly suboptimal and in some cases, very suboptimal. Remark 2.2: Conceptually the problem is clear. If the IMGPC algorithm is given just n u moves, starting now, with which it has to track a set point which may not begin changing until several samples in the future. Thus the time position of the input moves available does not overlay the
Standard predictive control algorithms such as IMGPC often come with a poor default feed forward design [10] because nu is small and therefore one cannot satisfy the logical requirement that n u > na . OMPC algorithms seem to have ignored discussion of this altogether. Although it is implicit in LQR theory where there are no constraints and the set point is known and included in the relevant Ricatti equations; these assumptions are impractical in general. Nevertheless, in cases where set points are not simple steps and advance information of desired trajectories is known (e.g. automobile, UAVs, power generation), there is a need to propose better ways of including advance information and the MPC literature seems largely to have ignored this issue. III. U SING THE FEED FORWARD AS A DESIGN PARAMETER : CONSTRAINT FREE CASE This section builds on the early ideas in [10] to demonstrate that: (i) in the unconstrained case one can easily define a much better feed forward than the default; (ii) this approach is easily extended to OMPC and (iii) it can also be extended to the constraint handling case. However, the section finishes with useful insights which implicitly contain warnings about the limitations of the approach. A. FF design with OMPC algorithms The difficulty with OMPC algorithms [12], [11] is the use of infinite horizons in the performance index assumes that the set point trajectory is known and in fact it is typically assumed constant beyond the control horizon. If one assumes that the set point is constant throughout then the optimal feedback law can be determined from an unconstrained optimal control problem and takes the form of eqn. (11). where uss|k , xss|k are estimates of the steady-state values (at sample k) giving no steady-state offset. Remark 3.1: In the absence of constraints, predictions (11), with ck+i = 0, ∀i, are clearly suboptimal except for the case where rk = rk+1 = rk+2 , .... B. Two stage design It is common practice to design the FF after the control loop. Consequently one could ignore the default P r of (9) and instead find a better P r by a separate optimisation. A simplistic but effective algorithm is as follows. Algorithm 3.1: Simulate the model and control law for an arbitrary FF and known set point. The responses take the form: y(z) = Gc (z)Pr (z)r(z);
∆u(z) = Gcu (z)Pr (z)r(z); (15)
where Gc , Gcu are closed loop transfer functions. In time domain form, up to a given horizon, these can be represented as (see appendix) y = Hy Sr P; →
T
(16)
−1
P = (Hy Sr ) (Hy Sr ) + (Hu Sr ) λ(Hu Sr )
r →
1
0.6
0.8 0.4 0.4
0.2 OMPCA IMGPCA IMGPCA2 Set point
0.2 0 −0.2
0
10
20
30
40
50
0
60
−0.2
0
10
Outputs with n = 10
20
30
40
50
60
50
60
u
1
0.6
0.8 0.4 0.6 0.4
0.2
0.2 0 0 −0.2
0
10
20
30
40
50
60
−0.2
0
10
20
30
40
Fig. 2. Closed-loop behaviour with optimised feed forward compensators of order 10. Outputs with n = 1
Inputs with nu = 1
u
1
0.05
0.8 0
0.6 0.4 set point IMGPCAo IMGPCA2
0.2 0
Figure 2 gives simulations for the same scenario as figure 1 but for algorithms IMPGCA, IMGPCA2 and OMPCA ultising default and optimal feed forward designs respectively. In order to emphasise the potential of the two stage design, IMGPCA2 deploys just n u = 1 and thus the loop tuning has relatively poor dynamics compared to OMPC. However, the reader should note in particular that: • The feed forward (IMGPCA2) leads to overall performance that is close to that possible with OMPCA, despite the poor loop dynamics. • The disturbance response (around sample 40) shows that IMGPCA and IMPGPCA2 have the same loop dynamic, but very different feed forwards as evident in the initial part of the step responses. • Figure 2 gives good evidence for the potential improvement in behaviour with the FF parameters of (17). • If nu is sufficiently large, IMGPCA and IMPGCA2 closed-loop dynamics are similar to OMPCA. In summary, the literature rather neglects the issue of what to do when the set point is time varying within the immediate prediction horizon. Also, one might argue that resorting to the optimal control literature (which assumes knowledge of the entire horizon) does not adequately deal with the issue of advance knowledge of set point changes being restricted to na at all points in time, although, with some patience, one may be able to create an equivalent state space model
Inputs with n = 10
u
C. Numerical examples
also ignores issues linked to initial conditions.
u
(17)
It should be noted that a different FF is implied for each control law and set point as the matrices H y , Hu depend on the control law and the matrix S r depends upon the set point. The IMPGPC algorithm with this choice of FF is denoted IMPGPCA2 to distinguish from the algorithm IMGPCA which uses the default (9). OMPC with this optimal FF is denoted OMPCA. Remark 3.2: A major weakness of this two stage design is that the FF is optimised, offline, for a specific scenario. If the set point trajectory is a different shape to that within (16), then optimisation of (17) needs to be recomputed, because Sr will be different 1. Of course being a simple least squares and assuming n a is not large, one might argue this is straightforward. There is also an assumption (for optimality) that the FF is used for the whole time span over which the predictions (16) are computed and the initial conditions are known, for instance steady-state.
1 This
Inputs with n = 1
u
0.6
∆→ u = Hu Sr P;
where P is a vector of the coefficients of P r . Minimise the predicted performance J wrt to P to give: T
Outputs with n = 1
20
40
60
80
100
−0.05
−0.1
20
Outputs with nu = 5
40
60
80
100
80
100
Inputs with nu = 5
1
0.05
0.8 0
0.6 0.4
−0.05
0.2 0 20
40
60
80
100
−0.1
20
40
60
Fig. 3. Closed-loop behaviour with optimised feed forward compensators of order 10 for different trajectories.
(potentially with very large state dimensions) including all this information. Thus, once again there is need to look at how the set point information is brought into the control law. D. Other set point trajectories Of course the weakness of the design used in figure 2 is that it was set up for a step change. Consider next a scenario where the set point changes in a more varied fashion, say as may be the case for a vehicle or cutting machine. Figure 3 gives plots which demonstrate comparisons between: (i) optimised FF for a step (IMGPCA2o) and (ii) optimised FF for given set point (IMGPCA2). Unsurprisingly, a FF optimised for a specified trajectory is always best on that trajectory but in practice this would
require the optimisation of eqn. (17) to be done online. As this is a simple least squares one could argue that this is a tractable and sensible proposition. However, as the size of nu increases, the loop tuning improves and the difference in FF for different set point trajectories seems to reduce as the FF is doing less work to overcome poor default behaviour. For figure 3, with n u = 1, the optimised FF parameters for step Pstep and the full set point trajectory P f ull are: Pstep = [0.1340 − 0.4725 0.1634 0.1403 0.0921 . . .] Pf ull = [−0.1237 − 0.0561 0.0845 0.0866 0.0655 . . .] These are clearly quite different. Conversely, when n u = 5, the FF parameters are the same to within a few percent, regardless of the choice of set point (that is matrix S r ). Conjecture 3.1: If the order of the FF is greater than the settling time of the closed-loop and the loop is optimally tuned, then the best FF is largely independent of the set point trajectory. However, if the loop is not optimally tuned, the FF will seek to improve the dynamic behaviour and this is highly dependent upon the shape of the set point trajectory and na . Corollary 3.1: If the loop is well tuned, the optimum FF can be computed with a relatively small least squares optimisation based on any closed-loop step response over the system settling time. Remark 3.3: 1) By its very nature, the impact of the FF will also be sensitive to parameter uncertainty but this effect is not considered here. 2) One might also note that it is implicit in this whole section that the set points settle to a steady-value at some point. Tracking of cyclic signals requires a more complex re-design of the MPC algorithm [15]. IV. U SING THE FEED FORWARD AS A DESIGN PARAMETER : CONSTRAINED CASE The unconstrained case is relatively straightforward, but the best choice of FF is not so straightforward where constraints are present because the unconstrained optimal will often be infeasible. Typical MPC formulations concentrate on step responses, but here it will be shown that where the set point has a more complex evolution, standard feasibility/performance results and intuition break down. The most obvious issue that will be demonstrated is the location of the d.o.f. in the input trajectory. If these are not matched to the major dynamic changes in the set point, then the input is not able to deal with the set point properly and infeasibility may be almost inevitable. A properly designed FF can help to some extent, but this will always be sensitive to requiring precise knowledge of the set point and initial conditions and thus would be useful only where a scenario was known to occur regularly, such as in batch processing or a particular vehicle manoeuvre that always began from the same initial condition.
Outputs with n = 2
Inputs + limits
u
0.1 1
0.05
0 0.8 −0.05
−0.1
0
10
20
30
40
50
0.6
Input increments + limits 0.05
0.4
0.2 0 Set point Constrained Unconstrained
0 −0.05
0
10
20
30
40
50
0
10
20
30
40
50
Fig. 4. Closed-loop behaviour for IMGPCA2 with optimised feed forward compensators improving tracking and constraint handling.
A. Constraint handling via feed forward When the FF is optimised, as in the previous section, this optimisation can be augmented to take account of constraints so that, in the nominal case, the combination of FF, loop control law and set point gives feasible trajectories which minimise the predicted cost J. An illustration of this is given in figure 4 where the the only difference from earlier figures is that the figure shows closed-loop responses with optimised FF: (i) unconstrained case and (ii) constrained case; both for IMGPCA2 with nu = 2. The advantage of such an approach is that, in the nominal case, no on-line optimisation is required for the constraint handling. Moreover, one can choose to do this around OMPC thus getting optimal nominal performance. If one were to take the nominal OMPCA algorithm, then it may easily become infeasible for n a > nc . For example, consider a scenario where, with n a = 1, non-zero c was required to maintain feasibility. If n a nc , the d.o.f. c k are not situated in the right place in time to help deal with a sudden change in u ss . B. Allowing for uncertainty The online optimisation is able to focus solely on dealing with uncertainty and does not have to cater for the effects of set point changes, which are accommodated through the FF. This greatly reduces the computational load or d.o.f. required to maintain feasibility while allowing high performance and thus improves the applicability of the overall algorithm. In the figure 5, a disturbance is added which causes the nominal loop to lose feasibility, and this is handled with just nu = 2 d.o.f., despite the tracking problem being challenging already. V. C ONCLUSIONS This paper has highlighted several issues which are not really discussed in the literature and could cause difficulties
Outputs with n = 2
Inputs + limits
u
R EFERENCES
0.1
0.05 1 0
0.8
−0.05
−0.1
0
10
20
30
40
50
60
0.6
Input increments + limits 0.05 0.4
0.2
0
Set point Constrained Unconstrained
0 −0.05
0
10
20
30
40
50
60
0
10
20
30
40
50
60
Fig. 5. Closed-loop behaviour for IMGPCA2 with optimised feed forward compensators improving tracking, constraint handling and disturbance rejection.
with naive implementations of MPC. First it has reinforced the message that the default FF from a GPC type of algorithm is often very poor unless n u is large; however typical recommendations used in industry would deploy a small n u . It has demonstrated that a two stage design whereby the FF is selected once the loop controller is known, perhaps unsuprisingly, ensures a proper synergy exists and therefore gives better performance. However, of particular note is that this paper has high lighted some further insights. One might expect the best FF to depend upon the set point trajectory. For GPC/DMC algorithms with small n u , and thus sub-optimal closed-loop performance (with respect to the chosen performance index), the FF arising from a two stage design attempts to overcome some of the poor tuning, for the specific set point provided. Consequently the best FF is closely linked to the trajectory and should be modified for different trajectory shapes. Where the user has adopted a dual mode MPC approach such as [11], so that the default tuning is good, then the optimum FF is no longer dependent on the set point shape, as long as the order of the FF is greater than or equal to the loop settling time. Further consideration is needed for the case where the order of the FF is small. Finally, the paper has explored briefly the links between the FF and the d.o.f. used for constraint handling, as these impact on the closed-loop in a similar way. It has been shown that for repeated set point trajectories it is possible and probably advantageous to use the FF design to deal with constraints, thus shifting the major computational load to an off line problem. The optimisation d.o.f. then need only focus on feedback aspects such as arise from parameter uncertainty and disturbances. This approach as strong analogies with parametric approaches [1]. Future work will investigate this issue more rigorously and thus aim to produce systematic guidelines.
[1] A. Bemporad, M. Morari, V. Dua, and E.N. Pistikopoulos. The explicit linear quadratic regulator for constrained systems. Automatica, 38(1):3–20, 2002. [2] E.F. Camacho and C. Bordons. Model predictive control. Springer, London, 2003. [3] D.W. Clarke, C. Mohtadi, and P.S. Tuffs. Generalised predictive control - Part II. Extensions and interpretations. Automatica, 23(2):137– 160, 1987. [4] E.G. Gilbert and K.T. Tan. Linear systems with state and control constraints: The theory and application of maximal output admissable sets. IEEE Trans AC, 36:1008–1020, 1991. [5] B. Kouvaritakis, J.A. Rossiter, and M. Cannon. Linear quadratic feasible predictive control. Automatica, 34:1583–1592, 1998. [6] D.Q. Mayne, J.B. Rawlings, C.V. Rao, and P.O.M. Scokaert. Constrained model predictive control: Stability and optimality. Automatica, 36:789–814, 2000. [7] K.R. Muske and J.B. Rawlings. Model predictive control with linear models. AIChE J., 39(2):262–287, 1993. [8] J.A. Rossiter. Model-based predictive control, a practical approach. Prentice Hall Int., 2003. [9] J.A. Rossiter. A global approach to feasibility in linear mpc. In Proc. ICC, 2006. [10] J.A. Rossiter and B.G. Grinnell. Improving the tracking of generalised predictive control controllers. Proc. IMechE, 210:169–182, 1996. [11] J.A. Rossiter, B. Kouvaritakis, and M.J. Rice. A numerically robust state-space approach to stable predictive control strategies. Automatica, 34:65–73, 1998. [12] P.O.M. Scokaert and J.B. Rawlings. Constrained linear quadratic regulation. IEEE Trans AC, 43(8):1163–1168, 1998. [13] L. Wang. Continuous time model predictive control using orthonormal functions. IJC, 74(16):1588–1600, 2001. [14] L. Wang. Discrete model predictive control design using laguerre functions. Journal Process Control, 14:131–142, 2004. [15] L. Wang and J.A. Rossiter. Disturbance rejection and set-point tracking of sinusoidal signals using generalized predictive control. In Proc. CDC, 2008.
VI. A PPENDIX - O UTPUT OF FF The output of the FF is given from p(z) = P r (z)r(z) or in long hand: p(z) = [P1 z + P2 z 2 + · · · + Pna z na ]r(z) = p1 z + p2 z ⇓ pk = Pna rk+na + Pna −1 rk+na −1 + · · · P1 rk+1 (18) Hence rk+na P1 rk+1 rk+2 · · · pk pk+1 rk+2 rk+3 · · · rk+na +1 P2 pk+2 = rk+3 rk+4 · · · rk+na +2 .. . .. .. .. .. .. . . . . . Pna Sr P p → (19) Assuming zero initial conditions.