Quiz on Model Predictive Control
1. What describes an objective of Model Predictive Control? Select two answers.
- Incorrect. MPC plans an optimized future trajectory by comparing a reference trajectory with a predicted output
- Correct. The model is a digital twin to the process that anticipates the effect of current actions on a future outcome
- 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
- 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?
- Incorrect. The estimator provides an update of the current state of the process while the control uses that to calculate future move plans
- 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.
- Incorrect. The estimator aligns the model predictions to measured data, not the reference trajectory.
- 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.
- Correct. This is an `l_1`-norm objective
$$l_1\mathrm{-norm\,objective} = ||x_{tr}-x_{m}||_1 = |x_{tr}-x_{m}|$$
- 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}$$
- Incorrect. This is a common objective function, especially in academic applications
$$SSE = \left(x_{tr}-x_{m}\right)^2$$
- 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?
- Incorrect. MPC is rarely used for SISO control unless there are challenging dynamics, delay, or nonlinear response
- Correct. Multivariate problems are best handled with MPC. MPC coordinates Manipulated Variable moves by considering how each of them affect the Controlled Variables.
- 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.
- 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.