control//controller design//MPC//offset-free MPC

Offset-free MPC is the arrangement that lets a model predictive controller bring its controlled variables exactly to their setpoints despite model errors and constant unmeasured disturbances, by estimating those disturbances as extra states and correcting the plan with them; it is how every industrial MPC removes the steady offset that a plain predictive controller would leave. A nominal MPC trusts its model: if the real column has 5% more heat loss than the model, or a drone carries a payload the model ignores, the plan converges to where the model says the setpoint is, and the plant settles a little beside it.


Offset-free MPC is the arrangement that lets a model predictive controller bring its controlled variables exactly to their setpoints despite model errors and constant unmeasured disturbances, by estimating those disturbances as extra states and correcting the plan with them; it is how every industrial MPC removes the steady offset that a plain predictive controller would leave. A nominal MPC trusts its model: if the real column has 5% more heat loss than the model, or a drone carries a payload the model ignores, the plan converges to where the model says the setpoint is, and the plant settles a little beside it.

A PID removes such offsets with an integrator, which keeps pushing while any error remains (integral action). An MPC gets the same effect from its estimator. The model is augmented with a disturbance ddd that is assumed constant (it changes only through noise), entering the outputs or the inputs:

xk+1=Axk+Buk+Bddk,dk+1=dk,yk=Cxk+Cddk.x_{k+1}=Ax_k+Bu_k+B_d d_k,\qquad d_{k+1}=d_k,\qquad y_k=Cx_k+C_d d_k .xk+1​=Axk​+Buk​+Bd​dk​,dk+1​=dk​,yk​=Cxk​+Cd​dk​.

A Kalman filter or observer on this augmented model (state augmentation) estimates d^\hat dd^ from the persistent gap between predicted and measured outputs. At each period a target calculation finds the steady state and input that put the outputs on their setpoints given d^\hat dd^, and the MPC steers toward that target instead of the nominal one. When the plant settles, the estimator has absorbed all the mismatch into d^\hat dd^, and the outputs sit exactly on the setpoints.

The integrator moves from the controller into the estimator.

Any constant mismatch, whatever its physical cause, is explained by d^\hat dd^, and the plan compensates it. The design rule that guarantees it (Pannocchia and Rawlings, 2003) is to estimate as many integrating disturbances as there are measured outputs, placed so the augmented system stays observable (observability).

Where the disturbance is assumed to enter leaves the final value alone and shapes the transient. Disturbances at the outputs (the classic bias correction of the first industrial MPCs, DMC among them) are simple and respond slowly to load changes inside the process; disturbances at the inputs react faster to a real load. The choice is tuned like the estimator's noise levels, and the estimator's speed sets how fast an offset is removed.

It is the predictive cousin of the disturbance observer, which cancels a lumped push in the command; here the estimate enters the plan, so the controller can also respect constraints while compensating it.

It removes offsets to constant disturbances only. A disturbance that ramps (a filter fouling steadily) leaves a residual error unless the model includes a second integrator, the same counting rule as the steady-state error of classical loops.