Quiz on Model Predictive Control


1. What describes an objective of Model Predictive Control? Select two answers.

A. Minimize the error between a reference trajectory and the measured future output
Incorrect. MPC plans an optimized future trajectory by comparing a reference trajectory with a predicted output
B. Minimize the error between the reference trajectory and the predicted future output
Correct. The model is a digital twin to the process that anticipates the effect of current actions on a future outcome
C. Minimize the control action needed to drive the controlled variable to a setpoint or range
Correct. A secondary objective of the controller is often expressed as a move suppression factor that limits Manipulated Variable (MV) movement by giving up a little control performance to not wear out the actuator or stress the equipment
D. Maximize the cost of operation
Incorrect. Economic Model Predictive Control has an objective function that maximizes profitability and minimizes cost of operation.

2. What is the purpose of an estimator?

A. Predict the optimal control path
Incorrect. The estimator provides an update of the current state of the process while the control uses that to calculate future move plans
B. Align the predictive model with current measurements
Correct. The role of the estimator is to make corrections to the model based on the most recent measurements. This may include updates to parameters or unmeasured states.
C. Minimize the gap between the reference trajectory and the predictions from the model
Incorrect. The estimator aligns the model predictions to measured data, not the reference trajectory.
D. Sends commands to the actuator
Incorrect. The controller sends commands to the actuator as the first action in the move plan

3. What is an `l_1`-norm objective function?

$$l_n\mathrm{-norm\,objective} = ||x_{tr}-x_{m}||_n = \sqrt[n]{\left(x_{tr}-x_{m}\right)^n}$$

where `x_{tr}` is the reference trajectory and `x_m` is the model prediction.

A. Minimize the absolute value
Correct. This is an `l_1`-norm objective

$$l_1\mathrm{-norm\,objective} = ||x_{tr}-x_{m}||_1 = |x_{tr}-x_{m}|$$

B. Minimize the maximum value
Incorrect. This is an `l_\infty`-norm objective

$$l_\infty\mathrm{-norm\,objective} = ||x_{tr}-x_{m}||_\infty = \sqrt[\infty]{\left(x_{tr}-x_{m}\right)^\infty}$$

C. Minimize the sum of squared error
Incorrect. This is a common objective function, especially in academic applications

$$SSE = \left(x_{tr}-x_{m}\right)^2$$

D. Minimize the square root of the sum of squared error
Incorrect. This is an `l_2`-norm objective

$$l_2 \mathrm{-norm\,objective} = ||x_{tr}-x_{m}||_2 = \sqrt[2]{\left(x_{tr}-x_{m}\right)^2}$$


4. PID and MPC are both potential controllers. When is MPC needed over PID control?

A. Single Input Single Output (SISO) control
Incorrect. MPC is rarely used for SISO control unless there are challenging dynamics, delay, or nonlinear response
B. Multiple Input Multiple Output (MIMO) control that cannot be decoupled
Correct. Multivariate problems are best handled with MPC. MPC coordinates Manipulated Variable moves by considering how each of them affect the Controlled Variables.
C. Fast cycle time
Incorrect. MPC is typically cycled at minute or second intervals. It is difficult to go faster, especially if the MPC requires an iterative optimizer each time new measurements are received. PID control often a better choice for fast control systems, such as stabilization of a drone during flight where micro-second delay is important.
D. Cascade control
Incorrect. PID is often a secondary controller with MPC as the primary controller that sends a setpoint to the underlying PID. PID is easy to maintain and tune with control algorithms built into Programmable Logic Controller (PLC) and Distributed Control System (DCS) hardware.