Model Predictive Control (MPC) is an advanced control technique in various industrial and engineering applications. It is a control algorithm that uses mathematical models to predict future system behavior and optimizes control actions to achieve a desired outcome.

MPC works by formulating the control problem as an optimization problem, where the objective is to minimize a cost function over a finite prediction horizon. The cost function The optimization problem is solved at each control interval, and the optimal control actions are applied to the system. The system's response is then measured and repeated for the next control interval. This closed-loop feedback control process is repeated at a fast enough rate to achieve the desired control performance.

How is it implemented?

Untitled

For MPC, we need a fast-processing onboard computer and a lot of memory. We can then simulate and predict the trajectory of a car with a set of inputs to the car model. This process is simulated several times, and the control inputs that result in the least cost are taken. The first step in this series of control is executed, and the above step is repeated.

Two important concepts in MPC are:

  1. Prediction Horizon: The prediction horizon is the length of the time horizon used to predict the system's behavior. The prediction horizon is the number of time steps into the future for which the system's behavior is predicted. The predictions are used to formulate the optimization problem that MPC solves.
  2. Control Horizon: The control horizon is the length of the time horizon over which the control inputs are optimized. The control horizon is a subset of the prediction horizon, defining the period over which the control inputs are determined. The control inputs are applied to the system, and the process is repeated at each control interval.

Design Parameters:

Untitled

To have a robust MPC controller, we require the following:

  1. Prediction horizon
  2. Control horizon
  3. Sample time
  4. Constraints
  5. Weights

In Model Predictive Control (MPC), the weights and control plots are important tools for understanding and tuning the control performance.

  1. Weights: Weights are scalar values used to assign relative importance to different terms in the cost function that MPC optimizes. The cost function represents the objective of the control system. It includes terms that describe the desired control behavior, such as tracking a reference signal, minimizing control effort, and preventing constraint violations. The weights are used to balance the trade-off between different objectives and to ensure that the control system behaves in the desired way.
  2. Control Plot: The control plot is a graph that shows the control inputs determined by MPC as a function of time. The control plot can visualize the MPC algorithm's control actions and evaluate the control system's performance. The control plot can also be used to diagnose problems with the control performance, such as oscillations, overshoot, and control saturation, and to fine-tune the MPC algorithm by adjusting the weights and other control parameters.

Untitled