Chapter 08

Minimum Variance Control

The course's last task, and its heaviest exam topic. Given an ARMAX plant, the controller that minimises the variance of the tracking error is a short formula built from one polynomial division — but it only exists if seven hypotheses hold, and half the marks in the archive are awarded for checking them, repairing the ones that fail, and knowing which failure cannot be repaired at all.

Reading: ~52 min Interactive: 1 widgets Source: Polimi MIDA2 2025/26 — Lecture 9 (Ch. 2.6 — minimum variance control) · Polimi MIDA2 2025/26 — Lecture 11 (MVC performance, GMVC, and the discretization appendix) · Polimi MIDA2 2025/26 — Lecture 16 (Appendix — discretization, sampling, aliasing) · Polimi MIDA2 2025/26 — Lecture 19, slides 4–8 (MVC exercises, part 1) · Polimi MIDA2 2025/26 — Lecture 20 (MVC exercises, part 2) · Polimi MIDA2 2025/26 — Lecture 23 (MVC exercises, part 3)
Q

This is the chapter the exam is built around

Nineteen questions in the archive are graded against this chapter — 128 of the 396 recorded marks, and at least one question in every one of the 12 sittings. No other chapter in the course comes close. If you revise one thing, revise the checklist in §03 and the stability result in §08; between them they account for over half of these marks.

01 · Where the problem comes from

Discretization, sampling, and the zeros it invents

Everything in this course is written in discrete time, but the plants being controlled are physical and continuous. Something has to convert one into the other, and that conversion is not neutral: it moves the poles by a known rule, and it invents zeros that were never in the plant. Those invented zeros are what will break the central assumption of this chapter, which is why the story starts here.

The layout is always the same. A digital algorithm — control, prediction, monitoring — sits between two converters. The A/D samples the plant output; the D/A drives the plant input. Box the D/A, the continuous system, and the A/D together and what you have, from the input/output point of view, is a discrete-time system. The question is what its model is.

The A/D discretizes in time and in amplitude. Time discretization is the sampling interval ΔT\Delta T — 10 ms, say, giving a sampling frequency fs=1/ΔT=100f_s=1/\Delta T=100 Hz. Amplitude discretization is the number of available levels: a 10-bit converter has 210=10242^{10}=1024 of them. Cost and quality track both. The D/A is called a holder, and in practice always a zero-order hold — its output is a staircase, constant between samples. Higher-order holds exist and are not used. If ΔT\Delta T is small enough relative to the plant’s dynamics, the staircase is negligible and the plant sees what is effectively a continuous signal — which is the assumption every formula below rests on.

The state-space conversion

There are two honest routes to a discrete-time model. Either run an experiment and identify one directly from sampled data — which is chapters 2 and 3 of this course, and gets you a discrete model by construction — or start from a continuous white-box model and convert it. This section is the second route.

Continuous to discrete, exactly
{x˙=Ax+Buy=Cx+Du    ΔT    {x(t+1)=Fx(t)+Gu(t)y(t)=Hx(t)+Du(t)\begin{cases}\dot x=Ax+Bu\\ y=Cx+Du\end{cases} \;\xrightarrow{\;\Delta T\;}\; \begin{cases}x(t+1)=Fx(t)+Gu(t)\\ y(t)=Hx(t)+Du(t)\end{cases}
The transformation formulas
F=eAΔT,G=0ΔTeAsds  B=A1(eAΔTI)B,H=C,D=DF=e^{A\Delta T},\qquad G=\int_{0}^{\Delta T}e^{As}\,ds\;B=A^{-1}\big(e^{A\Delta T}-I\big)B,\qquad H=C,\qquad D=D

Note what does not change: H=CH=C and D=DD=D pass through untouched. Only the dynamics matrix and the input matrix are transformed, and both through the same matrix exponential. Under the zero-order hold assumption this is exact at the sampling instants — not an approximation.

Poles map cleanly

The eigenvalues follow the sampling transformation rule z=esΔTz=e^{s\Delta T}:

The eigenvalue map
λF=eλAΔTRe(λA)<0    λF<1\lambda_F=e^{\lambda_A\,\Delta T} \qquad\Longrightarrow\qquad \operatorname{Re}(\lambda_A)<0\iff|\lambda_F|<1

This is the reason the unit circle plays the role in discrete time that the left half-plane plays in continuous time. The open left half-plane maps onto the interior of the unit disc, the imaginary axis onto the unit circle itself, and s=0s=0 onto z=1z=1. Continuous-time stability is preserved exactly.

Zeros do not — and new ones appear

×

Zeros do not obey $e^{s\Delta T}$

There is no transformation rule for zeros. Expecting them to move like poles is the single most common error on this topic, and it is listed as a misconception on the archived question. Poles obey the exponential map; zeros move unpredictably — and sampling manufactures new ones that had no continuous-time counterpart at all.

Count them. A strictly proper continuous transfer function of order nn with hh zeros (h<nh<n) becomes, after discretization, a transfer function with nn poles and n1n-1 zeros. The arithmetic is unforgiving:

Hidden zeros
(n1)zeros of W(z)hzeros of W(s)=  nh1NEW zeros, created by sampling\underbrace{(n-1)}_{\text{zeros of }W(z)}-\underbrace{h}_{\text{zeros of }W(s)} =\;n-h-1\quad\text{NEW zeros, created by sampling}

These are the hidden zeros, and the fact that matters for the rest of this chapter is that they are usually non-minimum-phase — they land outside the unit circle.

key

Why this section comes first

Minimum variance control requires the plant numerator B(z)B(z) to be minimum phase. Section 08 will show that this requirement is the closed-loop stability condition. And this section has just shown that a perfectly well-behaved continuous plant can acquire non-minimum-phase zeros purely by being sampled. A plant that was controllable in continuous time can become un-MVC-able for no reason other than the choice of ΔT\Delta T. That is not a footnote; it is why generalised MVC exists.

Approximate conversions

When eAΔTe^{A\Delta T} is inconvenient, replace the derivative by a finite difference:

Euler backward, Euler forward, and the family between them
EB:    x˙x(t)x(t1)ΔT=z1zΔTx(t),EF:    x˙x(t+1)x(t)ΔT=z1ΔTx(t)\text{EB:}\;\;\dot x\approx\frac{x(t)-x(t-1)}{\Delta T}=\frac{z-1}{z\,\Delta T}x(t), \qquad \text{EF:}\;\;\dot x\approx\frac{x(t+1)-x(t)}{\Delta T}=\frac{z-1}{\Delta T}x(t)
The convex combination, and Tustin
x˙[z1ΔT1αz+(1α)]x(t),0α1,α=12    Tustin\dot x\approx\left[\frac{z-1}{\Delta T}\cdot\frac{1}{\alpha z+(1-\alpha)}\right]x(t), \qquad 0\le\alpha\le1, \qquad \alpha=\tfrac12\;\Rightarrow\;\textbf{Tustin}

α=0\alpha=0 is Euler forward, α=1\alpha=1 is Euler backward, and the widely used case is the midpoint α=12\alpha=\tfrac12 — the bilinear or Tustin transform.

Choosing ΔT\Delta T

This is described in the lectures as the most critical choice in the whole conversion. The vocabulary first:

symbolmeaning
ΔT\Delta Tsampling interval, in seconds
fs=1/ΔTf_s=1/\Delta Tsampling frequency in Hz; ωs=2πfs\omega_s=2\pi f_s in rad/s
fN=12fsf_N=\tfrac12 f_sNyquist frequency; ωN=12ωs\omega_N=\tfrac12\omega_s

The intuitive rule is “the bigger fsf_s, the better”: as ω\omega approaches ωN\omega_N the discrete approximation W(z)W(z) degrades against the true W(s)W(s), so a higher ωs\omega_s buys a wider band over which the discrete model is faithful.

×

Faster sampling is not free — and the worst cost is numerical

Beyond the obvious (more expensive converters, more computation per second, more memory to buffer a given span of signal) there is a failure mode that catches people out. Continuous poles at, say, 3-3 and 2-2 with a very small ΔT\Delta T map to e3ΔTe^{-3\Delta T} and e2ΔTe^{-2\Delta T} — both crowding towards 11, differing in the sixth decimal place. All the poles squeeze against z=1z=1, and implementing the algorithm then demands numerical precision you may not have. The failure is arithmetic, not dynamical, which is exactly why it surprises people.

The balanced compromise taught in the course:

Rule of thumb
fN    10×(desired control-system bandwidth)ωs20ωcf_N\;\approx\;10\times(\text{desired control-system bandwidth}) \qquad\Longrightarrow\qquad \omega_s\approx20\,\omega_c

Aliasing

Shannon's condition
max frequency content of the sampled signal    fN\text{max frequency content of the sampled signal}\;\le\;f_N

The realistic scenario is that the clean signal is narrow-band but the measurement is not. Suppose y~(t)\tilde y(t) carries content up to 2 kHz because of noise, while the signal you care about is far slower, and you would like fs=1f_s=1 kHz (so fN=500f_N=500 Hz). Sample it directly and the 2 kHz content folds down into your band, indistinguishable from real signal. There are two standard fixes:

Analog anti-alias, then sample

y~(t)\tilde y(t)\to analog low-pass with a 500 Hz cutoff \to A/D at fs=1f_s=1 kHz. The filter must be analog: once aliasing has been committed by the converter, no amount of digital filtering can undo it.

Over-sample, filter digitally, decimate

y~(t)\tilde y(t)\to A/D at fs=4f_s=4 kHz \to digital low-pass at 500 Hz \to under-sampling unit down to 1 kHz. No analog anti-alias hardware is needed — at the price of initial digital over-sampling.

Q

One question, three marks — but it feeds everything after it

Discretization is examined directly once in the archive (04/09/2024, 3 marks), asking for the state-space equations and a discussion of how poles and zeros transform. The marks are small; the consequence is not, because the hidden-zero result is what §03’s minimum-phase assumption is protecting against.

2024-09-q52024Q05Discretization and samplingmedium3 pts
Describe the equations of the state-space method for the discretization of a continuous-time dynamical linear system. Discuss the transformation of the poles and zeros of the system from continuous to discrete time.

02 · The plant

The ARMAX setup, and what “minimum variance” minimises

Control completes the list of tasks this course has been working through: model the system (chapter 1), estimate what you cannot measure (chapters 4–5), and now compute the input. The mathematical machinery is deliberately the same as for estimation — a predictor does the work here too.

The plant
y(t)=B(z)A(z)u(tk)+C(z)A(z)e(t),eWN(0,λ2),k1y(t)=\frac{B(z)}{A(z)}\,u(t-k)+\frac{C(z)}{A(z)}\,e(t), \qquad e\sim\mathrm{WN}(0,\lambda^{2}),\qquad k\ge1
The polynomial conventions
B(z)=b0+b1z1++bpzp,A(z)=1+a1z1++anzn,C(z)=1+c1z1++cmzmB(z)=b_0+b_1z^{-1}+\cdots+b_pz^{-p},\quad A(z)=1+a_1z^{-1}+\cdots+a_nz^{-n},\quad C(z)=1+c_1z^{-1}+\cdots+c_mz^{-m}

zkz^{-k} is the plant’s pure delay, and C(z)/A(z)C(z)/A(z) is the noise model. AA and CC are written monic — as §03 will insist, that is not a coincidence but a requirement. If b00b_0\ne0, then kk is genuinely the delay of the system; if b0=0b_0=0 there is a hidden delay lurking in BB, and §04 shows how to extract it.

Minimum phase, and why it will matter

why

What a non-minimum-phase system looks like

Step a minimum-phase system and the output rises monotonically to its final value. Step a non-minimum-phase system and it first moves in the opposite direction before turning round and climbing — the inverse-response signature. Physical examples given in the lectures: steer angle to roll rate on a bicycle or motorcycle, and flap deflection to pitch rate on an aircraft. Controlling such a plant is hard for an intuitive reason: the first thing the output tells you after a control action is a lie, and a controller that reacts to it takes exactly the wrong decision.

The minimum-phase assumption
all roots of B(z) strictly inside the unit circle\text{all roots of }B(z)\text{ strictly inside the unit circle}

MVC cannot be applied to a non-minimum-phase plant. That is not a matter of degraded performance — §08 shows the closed loop is actively unstable. The escape route is generalised MVC, in §10.

The target and the cost

The goal of a control system is to follow a desired target y(t)y^{\circ}(t) — the trajectory of a robot, the speed a driver is asking for. Perfect tracking would mean y(t)=y(t)y(t)=y^{\circ}(t). The optimal control problem is to find the input that minimises the variance of the tracking error:

The performance index
J=E[(y(t)y(t))2]J=\mathbb{E}\Big[\big(y(t)-y^{\circ}(t)\big)^{2}\Big]

It is a variance — hence the name — and the problem is stochastic only because the disturbance e(t)e(t) is. Two further assumptions concern the reference itself:

Uncorrelated with the noise

y(t)e(t)y^{\circ}(t)\perp e(t). In practice always true: the reference comes from a driver, a planner or a setpoint, none of which know anything about the plant’s disturbance.

No preview — the worst case

y(t)y^{\circ}(t) is taken as completely unpredictable, so the best available forecast is the trivial one, y^(t+kt)=y(t)\hat y^{\circ}(t+k|t)=y^{\circ}(t). This is the classical assumption when a human defines the reference in real time. A fully autonomous system whose planner does have a short preview of the desired trajectory is a strictly easier problem.

03 · The checklist

Every hypothesis MVC rests on

Seven conditions, each a one-line check. They look like bureaucratic hygiene on first reading. They are not: §08 proves that two of them are the closed-loop stability condition, stated in advance. Learn them as a list first and understand them as stability later.

Q

Five sittings, 42 marks — and the papers ask for the recitation

“MVC assumptions and canonical form” is the single hottest topic in the course question bank: 5 questions worth 42 marks across 5 of the 12 sittings (15/07/2023, 08/01/2024, June 2024, September 2025, February 2026). The wording matters — several papers say “explicitly mention all MVC hypotheses and check if they are satisfied”. Marks are awarded for the enumeration itself, not only for the arithmetic that follows it. Write all seven down, every time, even the ones that are trivially satisfied.

The system under test
y(t)=B(z)A(z)u(tk)+C(z)A(z)e(t),e(t)WN(μ,λ2)y(t)=\frac{B(z)}{A(z)}u(t-k)+\frac{C(z)}{A(z)}e(t),\qquad e(t)\sim\mathrm{WN}(\mu,\lambda^{2})

① The delay is genuine

b00b_0\ne0, with B(z)=b0+b1z1+B(z)=b_0+b_1z^{-1}+\cdots. If it fails, a delay is hiding inside BB — pull it out and increase kk (§04, step 1).

② $B(z)$ is minimum phase

All roots of BB strictly inside the unit circle. This is the one that cannot be repaired.

③ I — zero relative degree

CC and AA have the same degree.

③ II — coprime

CC and AA share no common factors.

③ III — monic

The highest-order coefficient of each is 1.

③ IV — roots inside

All roots of CC and of AA strictly inside the unit circle.

④ and ⑤ — the reference

y(t)e(t)y^{\circ}(t)\perp e(t), and no preview: y^(t+kt)=y(t)\hat y^{\circ}(t+k|t)=y^{\circ}(t). Technical assumptions; state them and move on.

Conditions ③ I–IV together are the statement that C(z)/A(z)C(z)/A(z) is in canonical representation — the same canonical form used for spectral factorisation elsewhere in the course.

×

Check on the $z$ form, not the $z^{-1}$ form

“Monic” and “roots strictly inside the unit circle” are statements about the polynomial in zz. A ratio like 1+13z1112z1\dfrac{1+\frac13z^{-1}}{1-\frac12z^{-1}} has to be rewritten as z+13z12\dfrac{z+\frac13}{z-\frac12} before you can read off a zero at z=13z=-\tfrac13 and a pole at z=12z=\tfrac12. Reading roots off the z1z^{-1} form is how B(z)=212z1B(z)=2-\tfrac12z^{-1} acquires a phantom root at z=4z=4 — a mistake recorded explicitly against the September 2025 paper, where the true root is z=14z=\tfrac14, comfortably inside.

The checklist applied — the exam’s own format

the 21/05 exercise Worked check

Start from the difference equation

y(t)=12y(t1)+u(t1)+e(t)+13e(t1)y(t)=\tfrac12y(t-1)+u(t-1)+e(t)+\tfrac13e(t-1), with eWN(0,1)e\sim\mathrm{WN}(0,1).

Collect the output terms and divide

(112z1)y(t)=u(t1)+(1+13z1)e(t)\big(1-\tfrac12z^{-1}\big)y(t)=u(t-1)+\big(1+\tfrac13z^{-1}\big)e(t), hence y(t)=1112z1u(t1)+1+13z1112z1e(t)y(t)=\dfrac{1}{1-\frac12z^{-1}}u(t-1)+\dfrac{1+\frac13z^{-1}}{1-\frac12z^{-1}}e(t).

Read off the four objects

B(z)=1B(z)=1, A(z)=112z1A(z)=1-\tfrac12z^{-1}, C(z)=1+13z1C(z)=1+\tfrac13z^{-1}, k=1k=1.

Tick the list

b0=10b_0=1\ne0 ✓ · ② B=1B=1 has no roots at all, trivially minimum phase ✓ · ③ I both z+13z12\dfrac{z+\frac13}{z-\frac12} of degree 1 ✓ · ③ II no common factor ✓ · ③ III both monic ✓ · ③ IV zero at 13-\tfrac13, pole at 12\tfrac12, both inside ✓. Assumptions satisfied — proceed to the predictor.

×

Know which polynomial each assumption constrains

b00b_0\ne0 and minimum phase are conditions on BB, the input path. Canonical representation is a condition on the pair C/AC/A, the noise path. Mixing them up makes an easy problem look unsolvable — and, in the other direction, makes an impossible problem look repairable. A bad root of CC is always fixable (§04). A bad root of BB is never fixable (§08).

2023-07-q32023Q03MVC assumptions and canonical formmedium8 pts
Consider the following process $$y(t)=-\alpha y(t-1)+u(t-1)+\tfrac13 u(t-2)+4e(t)+e(t-1),\qquad e\sim\mathrm{WN}(0,1)$$ a. For which values of $\alpha\in\mathbb R$ are the assumptions of minimum variance control satisfied? If necessary, write the system in canonical representation. b. If the assumptions at the previous point are satisfied, design the minimum variance controller for the system. Discuss the stability of the closed-loop system. c. Write the time equation of $u(t)$ when $y^\circ(t)=4\;\forall t$. d. Compute the values of $y(t)$, $t=0,1,2,3$, when the reference is $y^\circ(t)=0$ for $t<1$ and $y^\circ(t)=4$ for $t\ge1$, and the noise is null.

04 · Making them true

The repair recipe, and the all-pass filter

Most exam systems fail the checklist as handed to you. That is the point of the question: the marks are in the repair, not in the verdict. There are three moves, they are applied in a fixed order, and each one changes something you must carry forward.

Q

Four sittings, 28 marks

“All-pass repair” is examined in 4 questions worth 28 marks across 4 of the 12 sittings (29/01/2024, July 2024, February 2025, June 2026). The stem is always a variant of “are the assumptions satisfied? If not, and if it is possible, manipulate the model so that they are.” The phrase “if it is possible” is load-bearing — see §08 for the case where it is not.

three moves, in order The repair recipe

① Delay the input until $b_0\ne0$ — this is what sets $k$

If the numerator carries a pure delay, factor it out into the zkz^{-k} term. Writing z2u(t)=1u(t2)z^{-2}u(t)=1\cdot u(t-2) gives k=2k=2 and leaves b0=1b_0=1. Fixing b0b_0 and choosing kk are the same operation, not two.

② Factor out the scale factors and redefine the noise

Non-monic polynomials are repaired by pulling the constants out and absorbing them into a new white noise. The variance travels with them: 2z1+4z21213z1e(t)=1+2z1123z1η(t)\dfrac{2z^{-1}+4z^{-2}}{\frac12-\frac13z^{-1}}e(t) =\dfrac{1+2z^{-1}}{1-\frac23z^{-1}}\,\eta(t) with η(t)=4e(t1)\eta(t)=4e(t-1), so ηWN(0,16)\eta\sim\mathrm{WN}(0,16) — the gain and the delay both move into η\eta.

③ Reflect bad roots of $C$ with an all-pass filter

A root of CC outside the unit circle is repaired, not approximated, by multiplying through by a unit-modulus factor that maps a1/aa\mapsto1/a.

④ Re-normalise so both terms share one $A(z)$

After ② or ③ the two denominators frequently no longer match. The ARMAX form requires a single common A(z)A(z); skip this and AA, BB and the whole controller are wrong.

The all-pass filter

The all-pass factor
F(z)=1+az11+1az11a,F(z)z=ejω=1  for every ωF(z)=\frac{1+az^{-1}}{1+\frac1a z^{-1}}\cdot\frac1a, \qquad\big|F(z)\big|_{z=e^{j\omega}}=1\ \ \text{for every }\omega

Because the modulus is exactly 1 at every frequency, multiplying a noise model by F(z)F(z) leaves the output spectrum unchanged:

Spectral equivalence
d(t)=F(z)e(t),  eWN(0,λ2)Γd(ω)=F(ejω)2λ2=Γe(ω)d(t)=F(z)e(t),\ \ e\sim\mathrm{WN}(0,\lambda^2) \quad\Longrightarrow\quad \Gamma_d(\omega)=\big|F(e^{j\omega})\big|^2\lambda^2=\Gamma_e(\omega)
Reflect the bad root |z| = 1 z = −2 ✗ z = −½ ✓ z₀ ↦ 1/z₀ 1 + 2z⁻¹, λ² = 16 → 1 + ½z⁻¹, λ² = 64 The spectrum does not move Γ(ω) before and after — the same curve 0 π Γ non-minimum-phase C reflected C — indistinguishable

Two filters with the same spectrum describe the same process, so nothing is lost — and the entire price of the repair appears in λ2\lambda^2.

key

Why this is legitimate and not a fudge

The noise model is only ever a description of second-order statistics. Any two filters that produce the same spectrum describe the same stochastic process as far as this theory can see. The all-pass factor swaps a non-minimum-phase CC for a minimum-phase one with an identical spectrum — so the process is redefined, not approximated. Nothing is lost. This is the cleverest single idea in the chapter’s exercises, and it is why a bad root of CC is never fatal.

the 25/05 exercise, part 2 Worked repair

The system, and the diagnosis

12y(t)=13y(t1)+u(t2)+2e(t1)+4e(t2)\tfrac12y(t)=\tfrac13y(t-1)+u(t-2)+2e(t-1)+4e(t-2), i.e. y(t)=z21213z1u(t)+2z1+4z21213z1e(t)y(t)=\dfrac{z^{-2}}{\frac12-\frac13z^{-1}}u(t)+\dfrac{2z^{-1}+4z^{-2}}{\frac12-\frac13z^{-1}}e(t). Failures: ① b0=0b_0=0 ✗ · ③ I relative degree ✗ · ③ III not monic ✗ · ③ IV a zero at z=2z=-2 ✗. Only ② and ③ II pass.

Move ① — extract the delay

z2u(t)=u(t2)z^{-2}u(t)=u(t-2), so k=2k=2.

Moves ② — rescale to monic

2(z1+2z2)12(123z1)e(t)=1+2z1123z1η(t)\dfrac{2\big(z^{-1}+2z^{-2}\big)}{\frac12\big(1-\frac23z^{-1}\big)}e(t) =\dfrac{1+2z^{-1}}{1-\frac23z^{-1}}\eta(t) with η(t)=4e(t1)WN(0,16)\eta(t)=4e(t-1)\sim\mathrm{WN}(0,16).

Move ③ — reflect the root at $z=-2$

With a=2a=2, multiply by 1+12z11+2z12\dfrac{1+\frac12z^{-1}}{1+2z^{-1}}\cdot 2. The numerator becomes 1+12z11+\tfrac12z^{-1} and the noise becomes m(t)=2η(t)WN(0,64)m(t)=2\eta(t)\sim\mathrm{WN}(0,64).

Move ④ — one common denominator

The input path still reads 11213z1\dfrac{1}{\frac12-\frac13z^{-1}} while the noise path reads 1123z1\dfrac{1}{1-\frac23z^{-1}}. Rescaling the input path gives 2123z1\dfrac{2}{1-\frac23z^{-1}}, and now

A(z)=123z1,B(z)=2,C(z)=1+12z1,k=2A(z)=1-\tfrac23z^{-1},\quad B(z)=2,\quad C(z)=1+\tfrac12z^{-1},\quad k=2

with every assumption satisfied.

×

Three ways this goes wrong

The reflection rescales the noise. z01/z0z_0\mapsto1/z_0 multiplies the innovation by the reflected factor: 191\to9, 1161\to16, 166416\to64 in the archived papers. The scaling is absorbed into the redefined noise, never discarded — the controller is unchanged but the achievable output variance is not. A root of modulus exactly 1 is unfixable. Reflection maps z0z_0 to 1/z01/z_0, so a root on the circle maps to itself; the June 2024 paper excludes that case rather than repairing it. Coprimality must be rechecked after the reflection, because the reflection moved a root of CC — which is why papers of this type exclude two values of the parameter, not one.

×

The all-pass repairs $C$, never $B$

Spectral equivalence is a statement about a stochastic process, so it is meaningful only on the noise path. B(z)B(z) carries deterministic input dynamics: reflecting a root of BB would change what the plant physically does, not merely how its noise is described. This is the reason a non-minimum-phase BB ends the discussion — and the reason §10 exists.

2024-01-29-q32024Q03All-pass repairhard8 pts
Consider the following process $$y(t)=\tfrac34 y(t-1)+u(t-1)+e(t)+4e(t-1)$$ with $e\sim\mathrm{WN}(0,1)$. a. Are the assumptions for the design of a minimum variance controller satisfied? If they are not, and if it is possible, manipulate the model of the system so that the assumptions of minimum variance control are satisfied. b. Design the minimum variance controller for the system. Discuss the stability of the closed-loop system. c. Draw the block diagram of the closed-loop system. d. Compute the transfer function between the reference $y^\circ(t)$ and the input $u(t)$, using any approach you like.

05 · The engine

The kk-step-ahead predictor

The controller is going to be built by demanding that the predicted output equal the reference. So everything hinges on one object — the kk-step-ahead predictor — and that object comes from a single polynomial long division.

The division identity
C(z)=E(z)A(z)+R(z),R(z)=R~(z)zkC(z)A(z)=E(z)+R~(z)zkA(z)C(z)=E(z)A(z)+R(z),\qquad R(z)=\tilde R(z)\,z^{-k} \qquad\Longleftrightarrow\qquad \frac{C(z)}{A(z)}=E(z)+\frac{\tilde R(z)z^{-k}}{A(z)}

Carry the division of CC by AA for exactly kk steps. The quotient is E(z)E(z), of degree k1k-1; the remainder carries a factor zkz^{-k}, and R~(z)\tilde R(z) is what is left after that factor is stripped off.

The predictor
y^(ttk)=B(z)E(z)C(z)u(tk)+R~(z)C(z)y(tk)\hat y(t|t-k)=\frac{B(z)E(z)}{C(z)}\,u(t-k)+\frac{\tilde R(z)}{C(z)}\,y(t-k)
×

$\tilde R$ and $R$ differ by $z^{-k}$ — and only $\tilde R$ appears

This is the most frequently recorded slip on the whole topic. The identity defines R~(z)zk=C(z)E(z)A(z)\tilde R(z)z^{-k}=C(z)-E(z)A(z); the predictor and the control law use R~(z)\tilde R(z) alone, with the delay already stripped. For k=1k=1 that means R~(z)z1=C(z)A(z)\tilde R(z)z^{-1}=C(z)-A(z), so if CA=16z1C-A=-\tfrac16z^{-1} then R~=16\tilde R=-\tfrac16, not 16z1-\tfrac16z^{-1}. Getting this wrong shifts the entire controller by one step. A fast sanity check: degE=k1\deg E=k-1, always.

The $k=1$ shortcut

When k=1k=1 there is nothing to divide: E(z)=1E(z)=1 and R~(z)z1=C(z)A(z)\tilde R(z)z^{-1}=C(z)-A(z). Most archived instances are k=1k=1, so this shortcut covers most of them. It does not generalise — with k=2k=2 the long division must genuinely be carried two steps, and using R~=CA\tilde R=C-A anyway is a recorded misconception on the 08/01/2024 paper.

One division, every predictor

The tableau after qq steps gives the qq-step predictor, so a single long division answers a question asking for several. For C=1+12z1C=1+\tfrac12z^{-1} divided by A=113z1A=1-\tfrac13z^{-1}:

step qqquotient EqE_qremainderR~q\tilde R_q
11156z1\tfrac56z^{-1}56\tfrac56
21+56z11+\tfrac56z^{-1}518z2\tfrac{5}{18}z^{-2}518\tfrac{5}{18}
key

Why the horizon must equal the delay

A natural question is why the predictor’s horizon qq is locked to the plant’s delay kk. Shift the control law ahead by kk steps and it reads u(t)=1B(z)E(z)(C(z)y(t)R~(z)y(t+kq))u(t)=\frac{1}{B(z)E(z)}\big(C(z)y^{\circ}(t)-\tilde R(z)\,y(t+k-q)\big). If q<kq<k then t+kq>tt+k-q>t and u(t)u(t) depends on future outputs — not causal, so it cannot be built. If q>kq>k then u(t)u(t) leans on older outputs than it needs — causal but suboptimal, throwing away information you already have. Only q=kq=k is both. The kk in every formula in this chapter is therefore forced, not chosen.

Q

One question, eight marks

kk-step predictor and MVC” appears once in the archive (16/07/2026, 8 marks) and asks for the 1-step and 2-step predictors before the controller — exactly the “one division, both answers” structure above. The same paper opens by demanding the assumption recitation from §03.

2026-07-q3a2026Q03k-step predictor and MVCmedium8 pts
Consider the following process: $$y(t)=\tfrac16 y(t-1)+u(t-2)+e(t)-\tfrac14 e(t-1)$$ with $e\sim\mathrm{WN}(0,1)$. a. Manipulate the system to satisfy all MVC assumptions. Explicitly mention all MVC hypotheses and check if they are satisfied. b. Find the 1-step-ahead and the 2-step-ahead predictors for the system in canonical representation. c. Find the Minimum Variance Controller.

06 · Proof requested

Deriving the control law

This is the one place in the chapter where the marks are for the argument rather than the answer. The formula is three lines; the reason it is optimal is an orthogonality argument, and the papers ask for it by name.

Q

The same stem in three sittings — and the proof is the marked content

“Find the general formula (proof is requested) of the optimal Minimum Variance controller for a generic ARMAX system.” This identical prompt appears in three sittings — 08/01/2024, 10/02/2025 and 16/07/2026 — and is deduplicated into a single 3-mark bank entry, which is why the topic table reads “1 question, 1 session” while the papers show three. Both numbers are correct; they count different things. The phrase “proof is requested” means the orthogonality step below is what earns the marks, not the boxed formula.

Deep dive The full derivation

The trick: split the output into predictor plus prediction error.

The split
ε(t)=y(t)y^(ttk)y(t)=y^(ttk)known at tk+ε(t)prediction error\varepsilon(t)=y(t)-\hat y(t|t-k) \qquad\Longleftrightarrow\qquad y(t)=\underbrace{\hat y(t|t-k)}_{\text{known at }t-k}+\underbrace{\varepsilon(t)}_{\text{prediction error}}

Substituting into the cost and expanding the square gives three terms:

The expansion
J=E[(y^(ttk)y(t))2]the only term depending on u+E[ε(t)2]independent of u+2E[ε(t)(y^(ttk)y(t))]=  0J=\underbrace{\mathbb{E}\Big[\big(\hat y(t|t-k)-y^{\circ}(t)\big)^{2}\Big]}_{\text{the only term depending on }u} +\underbrace{\mathbb{E}\big[\varepsilon(t)^{2}\big]}_{\text{independent of }u} +2\underbrace{\mathbb{E}\Big[\varepsilon(t)\big(\hat y(t|t-k)-y^{\circ}(t)\big)\Big]}_{=\;0}

Why the cross term vanishes — this is the proof. Carrying the division identity through gives y(t+k)=y^(t+kt)+E(z)e(t+k)y(t+k)=\hat y(t+k|t)+E(z)e(t+k), where E(z)E(z) has degree k1k-1, so the error term E(z)e(t+k)E(z)e(t+k) involves only e(t+1),,e(t+k)e(t+1),\dots,e(t+k) — noise that has not yet entered the system at time tt. It is therefore uncorrelated with everything measurable at tt, which covers the predictor (built from past data) and the reference (uncorrelated with ee by assumption ④). Predictor and prediction error are orthogonal by construction.

Two consequences follow immediately. The second term is irreducible — no controller can touch noise that has not arrived yet — and the minimisation collapses onto the first:

The optimum
argminu(t)J=argminu(t)E[(y^(ttk)y(t))2]y^(ttk)=y(t)    y^(t+kt)=y(t+k)\arg\min_{u(t)}J=\arg\min_{u(t)}\mathbb{E}\Big[\big(\hat y(t|t-k)-y^{\circ}(t)\big)^{2}\Big] \quad\Longrightarrow\quad \hat y(t|t-k)=y^{\circ}(t) \iff \hat y(t+k|t)=y^{\circ}(t+k)

At time tt, however, y(t+k)y^{\circ}(t+k) is not available. Assumption ⑤ — no preview — says the best substitute is y(t)y^{\circ}(t), giving the identity actually imposed: y^(t+kt)=y(t)\hat y(t+k|t)=y^{\circ}(t). Substituting the predictor and solving for u(t)u(t) finishes it.

The MVC control law
u(t)=1B(z)E(z)(C(z)y(t)R~(z)y(t))u(t)=\frac{1}{B(z)E(z)}\Big(C(z)\,y^{\circ}(t)-\tilde R(z)\,y(t)\Big)

Two routes to the same controller

Method I — apply the formula

Read BB, EE, CC, R~\tilde R off the division and substitute. Fast, and the right choice under exam time pressure.

Method II — invert the predictor

Write the predictor, impose y^(t+kt)=y(t)\hat y(t+k|t)=y^{\circ}(t), shift by kk steps (legitimate precisely because assumption ⑤ says yy^{\circ} carries no preview), and solve for u(t)u(t). Slower, but it shows why the controller is what it is: it drives the predicted output onto the reference.

Both give the same law. Learn Method II first and Method I becomes a shortcut rather than a memorised string. On the worked system of §03 — B=1B=1, C=1+13z1C=1+\tfrac13z^{-1}, A=112z1A=1-\tfrac12z^{-1}, k=1k=1, hence E=1E=1 and R~=56\tilde R=\tfrac56 — both routes land on

The worked controller
u(t)=(1+13z1)y(t)56y(t)i.e.u(t)=y(t)+13y(t1)56y(t)u(t)=\Big(1+\tfrac13z^{-1}\Big)y^{\circ}(t)-\tfrac56\,y(t) \qquad\text{i.e.}\qquad u(t)=y^{\circ}(t)+\tfrac13y^{\circ}(t-1)-\tfrac56\,y(t)
×

Sign and shape of the feedback term

The template subtracts R~(z)y(t)\tilde R(z)y(t). If R~\tilde R is itself negative the term therefore enters with a plus — a control law printed as +815y(t)+\tfrac{8}{15}y(t) means R~=815\tilde R=-\tfrac{8}{15}, not ++. And the controller denominator is the product B(z)E(z)B(z)E(z): divide BB out before reading EE, or you will mistake one for the other.

2024-01-08-q52024Q05MVC derivationhard3 pts
Find the general formula (proof is requested) of the optimal Minimum Variance controller for a generic ARMAX$(n,m,p+k)$ system.

07 · What you get

The closed loop, and its four transfer functions

Close the loop with this controller and the result is startlingly simple — so simple that it is worth pausing over what has been hidden to achieve it.

The block scheme

Several papers ask you to draw this loop, so it is worth being able to reproduce it from memory. It splits into two halves, and every block in it has already appeared in this chapter.

Controller Plant y°(t) C(z) + 1 / B(z)E(z) u(t) z⁻ᵏ B/A + e(t) C/A y(t) R̃(z) R̃(z)z⁻ᵏ = C(z) − E(z)A(z) ⟹ 1 + L(z) = C/(EA) so W_{y°y} = z⁻ᵏ and W_{ey} = E(z)

The reference gets a pure delay; the noise gets E(z)E(z) — the remainder of the division, the part no controller can cancel.

The controller

y(t)y^{\circ}(t) enters through C(z)C(z) into a summing junction. The output y(t)y(t) is fed back through R~(z)\tilde R(z) into the negative input of that same junction. The difference passes through 1B(z)E(z)\dfrac{1}{B(z)E(z)}, and what emerges is u(t)u(t) — which is the control law of §06, drawn instead of written.

The plant

u(t)u(t) passes through the delay zkz^{-k} and then through B(z)A(z)\dfrac{B(z)}{A(z)} into a second summing junction. The noise e(t)e(t) reaches that junction through C(z)A(z)\dfrac{C(z)}{A(z)}. The sum is y(t)y(t), which closes the loop.

When the noise has a non-zero mean there is one extra arrow — see §09.

Reducing it

For a feedback loop with forward F1F_1 and feedback F2F_2, the transfer function from input to output is F1/(1+F1F2)F_1/(1+F_1F_2): the direct path over one plus the loop function. Applying it here, the loop function collapses using the division identity R~(z)zk=C(z)E(z)A(z)\tilde R(z)z^{-k}=C(z)-E(z)A(z):

The loop function collapses
L(z)=1B(z)E(z)zkB(z)A(z)R~(z)=C(z)E(z)A(z)11+L(z)=C(z)E(z)A(z)L(z)=\frac{1}{B(z)E(z)}\cdot z^{-k}\cdot\frac{B(z)}{A(z)}\cdot\tilde R(z)=\frac{C(z)}{E(z)A(z)}-1 \qquad\Longrightarrow\qquad 1+L(z)=\frac{C(z)}{E(z)A(z)}

Everything else follows in one line each:

The four closed-loop transfer functions
Wyy(z)=zk,Wey(z)=E(z),Wyu(z)=A(z)B(z),Weu(z)=R~(z)B(z)W_{y^{\circ}y}(z)=z^{-k},\qquad W_{ey}(z)=E(z),\qquad W_{y^{\circ}u}(z)=\frac{A(z)}{B(z)},\qquad W_{eu}(z)=-\frac{\tilde R(z)}{B(z)}

None of them depends on the particular numbers. The first two carry the standard names: WyyW_{y^{\circ}y} is the complementary sensitivity — how well yy follows yy^{\circ} — and WeyW_{ey} is the sensitivity — how much the noise reaches the output. Their ideal values would be 11 and 00 respectively. Together they give the headline result of the chapter:

The closed-loop behaviour
y(t)=zky(t)+E(z)e(t)y(t)=y(tk)+E(z)e(t)y(t)=z^{-k}y^{\circ}(t)+E(z)e(t) \qquad\Longleftrightarrow\qquad y(t)=y^{\circ}(t-k)+E(z)e(t)

Against the ideal y=y+0y=y^{\circ}+0, exactly two things are lost, and both are irreducible. Tracking is perfect but kk steps late — the plant’s own delay, plus the fact that the reference cannot be previewed. And the noise cannot be driven to zero: the best achievable is E(z)e(t)E(z)e(t), the prediction error itself.

Q

Three sittings, 15 marks

“MVC closed-loop transfer functions” is examined in 3 questions worth 15 marks across 3 of the 12 sittings (September 2024, September 2025, June 2026). These questions usually hand you the plant and its controller and ask for one specific transfer function. The general results above are enough — one recorded misconception is doing the whole block-diagram algebra when Wyu=A/BW_{y^{\circ}u}=A/B already holds for any MVC meeting its assumptions.

The minimum variance itself

At steady state a constant reference satisfies y(t)=y(tk)y^{\circ}(t)=y^{\circ}(t-k), so the tracking error is y(t)y(t)=E(z)e(t)y^{\circ}(t)-y(t)=-E(z)e(t), and its variance is a sum of squares because the noise terms are mutually uncorrelated:

The irreducible variance
E[(E(z)e(t))2]=λ2(1+e12+e22++ek12)\mathbb{E}\Big[\big(E(z)e(t)\big)^{2}\Big] =\lambda^{2}\big(1+e_1^{2}+e_2^{2}+\cdots+e_{k-1}^{2}\big)

For E(z)=1+56z1E(z)=1+\tfrac56z^{-1} with λ2=1\lambda^2=1 that is 1+2536=61361+\tfrac{25}{36}=\tfrac{61}{36}. This number is the point of the whole chapter: it is the noise admitted during the kk steps the controller could not see. It grows with kk, because a longer delay means more unseen noise terms in EE — and it cannot be reduced by any controller whatsoever. Hence minimum variance.

A concrete check that MVC is a pure delay

Set the noise to zero and step the reference: y(t)=0y^{\circ}(t)=0 for t<1t<1 and 11 for t1t\ge1. With k=1k=1, y(t)=y(t1)y(t)=y^{\circ}(t-1), so y(0)=0y(0)=0, y(1)=0y(1)=0, y(2)=1y(2)=1, y(3)=1y(3)=1. The step arrives at the output exactly one sample late and is then perfectly on target forever. Noise-free MVC is a pure kk-step delay — nothing more, and nothing less.

key

What the simplicity is hiding

A closed loop whose behaviour is a pure delay plus a short moving average has almost no dynamics left in it. Those dynamics did not disappear — they became non-observable and non-controllable parts of the closed-loop system, in exactly the sense of the Kalman decomposition from chapter 1. That is precisely why §08 forbids cancelling B(z)B(z) when testing stability: the cancellation would hide modes that are still there, still evolving, and possibly still diverging.

08 · The capstone

χ(z)=B(z)C(z)\chi(z)=B(z)C(z) — and when MVC destabilizes

Two sections of assumptions, one derivation, four transfer functions — and it all converges on a single product. The closed-loop characteristic polynomial of any minimum variance loop is B(z)C(z)B(z)C(z), which means the hypotheses of §03 were never bureaucratic: they are the stability condition, written down in advance.

Q

Two sittings, 12 marks — and both are the failing case

“MVC closed-loop stability” is examined in 2 questions worth 12 marks (July 2024 and February 2025). Both hand you a plant whose B(z)B(z) has a root outside the unit circle and ask you to discuss stability — the answer being that the loop is unstable and the MVC assumptions were never met. The trap in both is the invitation to cancel.

Recall the test. For a loop with forward F1F_1 and feedback F2F_2, form the loop function L(z)=F1F2L(z)=F_1F_2 and the characteristic polynomial χ(z)=LN(z)+LD(z)\chi(z)=L_N(z)+L_D(z) — numerator plus denominator, with a minus for positive feedback. The loop is asymptotically stable if and only if every root of χ\chi is strictly inside the unit circle.

×

Do not cancel $B(z)$ when forming $\chi$

B(z)B(z) appears in both the numerator and the denominator of L(z)L(z), and cancelling it is the single most important procedural error in this chapter. A cancellation removes the mode from the expression while leaving it in the system — and if that mode is unstable, you have deleted the symptom rather than the instability. The July 2024 paper exists to catch exactly this, and says so explicitly. Note the asymmetry with §07: BB may be cancelled when computing a transfer function such as WyyW_{y^{\circ}y}, because there you are describing an input–output map. It may not be cancelled when forming χ\chi, because there you are enumerating the closed-loop modes.

The characteristic polynomial
χ(z)=B(z)R~(z)zk+B(z)E(z)A(z)=B(z)(R~(z)zk+E(z)A(z)=  C(z) by the division identity)\chi(z)=B(z)\tilde R(z)z^{-k}+B(z)E(z)A(z) =B(z)\Big(\underbrace{\tilde R(z)z^{-k}+E(z)A(z)}_{=\;C(z)\ \text{by the division identity}}\Big)
The result
χ(z)=B(z)C(z)\chi(z)=B(z)\,C(z)
key

The whole chapter in one line

Every root of BB is inside the unit circle by assumption ②. Every root of CC is inside by assumption ③ IV. So χ\chi has all its roots inside, and a minimum variance loop is always asymptotically stable — provided the assumptions hold. The two conditions you were asked to check at the very beginning are not preconditions for the algebra to work; they are the closed-loop poles, named in advance. Learn this result and the checklist stops being a list to memorise.

When it fails, it fails loudly

If B(z)B(z) has a root outside the unit circle the controller is still computable — and actively harmful. Take a plant with B(z)=1+2z1B(z)=1+2z^{-1}, whose root sits at z=2z=-2. The control law contains 1B(z)E(z)\frac{1}{B(z)E(z)}, and written as a difference equation that reads

The mechanism of failure, in one line
u(t)=2u(t1)unstable recursion+y(t)+u(t)=\underbrace{-2\,u(t-1)}_{\text{unstable recursion}}+y^{\circ}(t)+\cdots

The controller is inverting a non-minimum-phase numerator, and the inverse of a root outside the unit circle is an unstable pole placed inside the controller itself. The characteristic polynomial confirms it: χ=BC\chi=B\,C keeps the root at z=2z=-2 no matter what the noise model does. In the February 2025 paper the root sits at z=6z=6 and the controller’s 116z1\frac{1}{1-6z^{-1}} is the recursion u(t)=6u(t1)+u(t)=6u(t-1)+\cdots.

×

No parameter can save it, and the noise model is not to blame

A standard exam construction puts a free parameter β\beta in the noise polynomial and asks which values make MVC admissible. The answer is noneβ\beta lives in CC, the offending root lives in BB, and §04 established that the all-pass repairs CC and never BB. Blaming the noise model when C(z)=1C(z)=1 is perfectly canonical is a recorded misconception. The correct conclusion is narrow and important: MVC is always stabilising when its assumptions hold, and a non-minimum-phase BB is the one defect that cannot be repaired at all.

You form the loop function of an MVC design and notice that B(z) appears in both the numerator and the denominator. Under what circumstances may you cancel it?

2025-02-q3b2025Q03MVC closed-loop stabilityhard6 pts
Consider the following process and its minimum variance controller: $$y(t)=\frac{1-6z^{-1}}{1+\tfrac12z^{-1}}u(t-1)+\frac{1-\tfrac12z^{-1}}{1+\tfrac12z^{-1}}e(t)$$ $$u(t)=\frac{1}{1-6z^{-1}}\left(\left(1-\tfrac12z^{-1}\right)y^\circ(t)+y(t)\right)$$ a. Discuss the stability of the closed loop. b. Draw the block diagram of the closed-loop system. c. Compute the transfer function between $u(t)$ and the output $y(t)$.

09 · A common twist

Non-zero-mean noise and de-biasing

Every formula so far assumed eWN(0,λ2)e\sim\mathrm{WN}(0,\lambda^2). Two papers relax that to WN(μ,λ2)\mathrm{WN}(\mu,\lambda^2) with μ0\mu\ne0, and the repair is a change of variable — applied, used, and then undone. Forgetting the last step is what the question is testing.

Q

Two sittings, 17 marks

“De-biasing non-zero-mean noise” is examined in 2 questions worth 17 marks (September 2024 and July 2025). Both flag the non-zero mean explicitly in the stem — “note that the process has a non-zero mean” — so the twist is signposted rather than hidden. The marks are for handling it correctly to the end.

change of variable, then undo it De-biasing

Repair the model first

Run the §04 recipe as usual. Note that the all-pass rescaling hits the mean as well as the variance: if eWN(μ,λ2)e\sim\mathrm{WN}(\mu,\lambda^2) and η=3e\eta=3e, then ηWN(3μ,9λ2)\eta\sim\mathrm{WN}(3\mu,9\lambda^2). Losing the mean here loses the whole question.

Find the output offset — the DC gain at $z=1$

A constant is a signal at ω=0\omega=0, so evaluate the noise filter at z=ej0=1z=e^{j0}=1. With noise path 11+14z1\frac{1}{1+\frac14z^{-1}} and mean 3μ3\mu, the offset is 11+143μ=125μ\frac{1}{1+\frac14}\cdot3\mu=\frac{12}{5}\mu. It is the gain times the mean, not the mean.

Work in de-biased variables

Define η~(t)=η(t)3μ\tilde\eta(t)=\eta(t)-3\mu (zero mean) and y~(t)=y(t)125μ\tilde y(t)=y(t)-\frac{12}{5}\mu. In these variables the model is standard, so the ordinary predictor formula applies unchanged: y~^(tt1)=u(t1)14y~(t1)\hat{\tilde y}(t|t-1)=u(t-1)-\tfrac14\tilde y(t-1).

Undo the change of variable — both branches

Substitute y~^=y^125μ\hat{\tilde y}=\hat y-\frac{12}{5}\mu and y~(t1)=y(t1)125μ\tilde y(t-1)=y(t-1)-\frac{12}{5}\mu. The two corrections partially cancel and leave an explicit constant behind:

y^(tt1)=u(t1)14y(t1)+3μ\hat y(t|t-1)=u(t-1)-\tfrac14y(t-1)+3\mu
×

The bias does not vanish — it reappears in the predictor

De-biasing is a change of variable used to reach the standard formula, not a way of making the mean go away. The final predictor carries an additive constant, and a student who drops it has a predictor that is systematically wrong by that constant forever. Note also that both branches must be un-substituted: the recorded misconception on the July 2025 paper is correcting the prediction but forgetting the feedback term, which is precisely what turns one constant into another.

In the closed-loop block diagram the correction shows up as a constant offset injected at the controller’s summing junction — a feed-forward term sitting outside the feedback path, which is a useful way to remember that it is a bookkeeping correction rather than part of the control law.

2024-09-q3a2024Q03De-biasing non-zero-mean noisehard8 pts
Consider the following process: $$y(t)=\frac{4}{z+\tfrac12}u(t)+\frac{(z+3)z}{z^2+\tfrac56z+\tfrac16}e(t)$$ with $e\sim\mathrm{WN}(1,1)$. **Note that the process has a non-zero mean.** a. Manipulate the system to satisfy all MVC assumptions. Explicitly mention all MVC hypotheses. b. Find the 1-step-ahead predictor. c. Find the MVC controller.

10 · The way out

Generalised MVC

Three limitations have accumulated. Generalised MVC answers all three with one change to the cost function. It is not examined in the archive, so this is a short section — but it is the answer to the question §08 leaves hanging.

MVC applies only to minimum-phase plants; it offers no way to moderate the control effort; and it lets you specify no behaviour at all between yy^{\circ} and yy — you get a pure delay, whether or not that is what you wanted.

MVC and GMVC
MVC:J=E[(y(t)y(t))2]GMVC:J=E[(y(t)P(z)y(t)+Q(z)u(t))2]\textbf{MVC:}\quad J=\mathbb{E}\Big[\big(y(t)-y^{\circ}(t)\big)^{2}\Big] \qquad\qquad \textbf{GMVC:}\quad J=\mathbb{E}\Big[\big(y(t)-P(z)y^{\circ}(t)+Q(z)u(t)\big)^{2}\Big]

P(z)P(z) and Q(z)Q(z) are design transfer functions, and setting P=1P=1, Q=0Q=0 recovers plain MVC. They address the three limits in order. Putting the non-minimum-phase zeros of B(z)B(z) into P(z)P(z) lets GMVC handle plants MVC cannot touch. The term Q(z)u(t)Q(z)u(t) penalises control effort. And P(z)P(z) acts as a reference model, specifying the desired yyy^{\circ}\to y behaviour instead of accepting whatever falls out.

why

Optimal is not the same as desirable

Is P(z)=1P(z)=1 — perfect tracking — always what you want? No. Consider cruise control with a staircase speed reference. With P=1P=1 the car tracks each step as sharply as physics allows, which is optimal and deeply unpleasant to sit in. Choosing P(z)P(z) to be a low-pass filter makes the car ramp smoothly between speeds: worse by the tracking metric, better by the one that matters. The reference model is where you say what “good” means.

Minimum variance control — what to carry out of this chapter

  • Discretization moves poles by λF=eλAΔT\lambda_F=e^{\lambda_A\Delta T} and invents nh1n-h-1 zeros, and those hidden zeros are usually non-minimum-phase. Sampling alone can make a well-behaved plant un-MVC-able.
  • Seven assumptions: b00b_0\ne0; BB minimum phase; C/AC/A canonical (same degree, coprime, monic, roots inside); yey^{\circ}\perp e; no preview. Check them on the zz form.
  • The repair recipe: extract the delay to fix b0b_0 (this sets kk), factor out scale factors into a redefined noise, reflect bad roots of CC with an all-pass, then re-normalise to one common A(z)A(z). The rescaling carries the variance — and the mean.
  • The all-pass repairs CC, never BB. Spectral equivalence is meaningful only on the noise path.
  • One long division does everything: C=EA+R~zkC=EA+\tilde Rz^{-k}, with degE=k1\deg E=k-1, and the tableau after qq steps is the qq-step predictor. Use R~\tilde R, not RR. The horizon must equal the delay — smaller is non-causal, larger is suboptimal.
  • The control law is u=1BE(CyR~y)u=\frac{1}{BE}\big(Cy^{\circ}-\tilde Ry\big), and the proof is the orthogonality of predictor and prediction error.
  • The closed loop is y(t)=y(tk)+E(z)e(t)y(t)=y^{\circ}(t-k)+E(z)e(t), with Wyy=zkW_{y^{\circ}y}=z^{-k}, Wey=EW_{ey}=E, Wyu=A/BW_{y^{\circ}u}=A/B, Weu=R~/BW_{eu}=-\tilde R/B, and an irreducible variance λ2(1+e12++ek12)\lambda^2(1+e_1^2+\cdots+e_{k-1}^2).
  • χ(z)=B(z)C(z)\chi(z)=B(z)C(z). Never cancel BB when forming it. A non-minimum-phase BB makes the MVC destabilize the plant, and no parameter in CC can rescue it — that is what GMVC is for.

Exam radar. This chapter carries 128 of the 396 recorded marks and appears in all 12 sittings. Before the exam, re-derive in this order: the seven-point checklist (§03 — 5 questions, 42 marks, and papers that ask you to recite it), the all-pass repair (§04 — 4 questions, 28 marks), the de-biasing un-substitution (§09 — 2 questions, 17 marks), the four closed-loop transfer functions (§07 — 3 questions, 15 marks) and χ=BC\chi=BC with the cancellation trap (§08 — 2 questions, 12 marks). If you are short of time, §03 and §08 are the two that unlock the rest.