When do I Use MPC instead of PID for Advanced Regulatory Control - Tips?
If a dynamic model is not possible and the advanced control is rule based, you are better off with Fuzzy Logic Control as noted last week's blog and pursuing the given link in the blog to the Control Talk Column with Michel Ruel.
If you have models and multiple disturbance variables, multiple constraints, multiple simultaneous manipulated variables, or multiple optimums on a continuous process, you have the classic MPC multivariable control application that is beyond the traditional realm of PID control in my book.
The word "simultaneous" is added above to make sure one understands that the MPC excels at simultaneous manipulation and also to alert the user to the fact the MPC does not enforce the split ranging of manipulated variables that is important for process efficiency. Cooling and heating, nitrogen and vent, and acid and base valves must not be open at the same time. Conventional PID control with splitter bocks ensure split range enforcement. Adaptive tuning scheduled as a function of PID output is used to take care of the differences in the dynamics. The process dead time and lag time can change besides the process gain with manipulated variables (e.g. heating and cooling).
Stick with PID if you have any of the factors listed in last week's blog for "When do you need to stay with PID?" For example a justifiably high PID gain or high rate time setting indicates the need for minimizing peak error and possibly preventing a runaway condition (e.g. exothermic reactor temperature control) for unmeasured disturbances that is best done by aggressive anticipatory action of a well tuned PID.
Let's move on to cases of advanced regulatory control where the choice between MPC and PID is not so clear. To make better decisions, we need an understanding of what is of capability and effort required for effective advanced regulatory control applications.
The dynamic relationship of feedforward and decoupling signals to controlled variables is inherently handled by Model Predictive Control. For PID control this compensation has been a hit or miss story. Manual computations of the feedforward gain, delay, and lead-lag are typically required. Users may not have a tool for finding the process gains, lags, and delays needed for the calculations. Some have figured out how to use auto tuners and adaptive tuners to find the first order plus dead time relationship between a feedforward signal and controlled variable. In some cases this requires tricking the tuner by creating a dummy loop with the same process variable as the PID loop but with an output that is the feedforward variable. Normally, the dummy controller stays in manual or remote output and step changes are made to the feedforward variable. Hopefully, the dead time in the PID process variable model is less than the dead time in the dummy PID feedforward model in which case a delay is simply added to the feedforward signal. The feedforward gain is the ratio of the dummy to original PID model open loop gains. The setting of the lead-lag gets more complicated. You can set the feedforward lead to cancel out the lag in the dummy model and then set the feedforward lag to match the process PID model lag but the resulting large lead setting can amplify noise and cause erratic movement. I tend to use a less accurate but more forgiving approach of getting the initial ramp rates of the models identical by adjusting the feedforward lead-lag. This is particularly useful for loops with a large process lag. Either way you can see this requires some expertise.
If the feedforward is a flow signal and you are essentially doing ratio control, the job of the PID is a lot less and is relegated to trimming the result via a feedforward summer. Here, patience is in order and an enhanced PID developed for wireless with a threshold sensitivity limit can ignore short term mismatches in the dynamic response. The use of flow ratio control can be extended to help move the whole plant in unison to maintain the ratios seen in a process flow diagram. The plant wide feedforward ratio control concept was described in the InTech Article "Feedforward control enables flexible, sustainable manufacturing".
Sometimes unknown disturbances can be driving the process variable in the opposite direction as the measured disturbance used for feedforward control. Feedforward control does more harm than good in this case. Intelligence is added to the PID to suppress the feedforward if the feedforward correction would make the excursion worse.
Decoupling in PID controllers is normally done on a steady state basis by the use of relative gain arrays (RGA). You can visualize the same dummy controller technique described may be useful for figuring out dynamic decoupling if the feedforward signal is the other controller output. Half decoupling by the addition of one controller output as feedforward signal is doable. Half-coupling will break the interaction but the loop without the feedforward is still upset. The decoupling feedforward is added to the most important loop for this reason.
Override control involves the simple signal selection of several controller outputs. The use of external reset feedback offered by the positive feedback implementation of integral mode makes the implementation more effective if the external reset signal is connected properly. Configuration problems are common causing a loss of this signal. The tuning of the override controllers determines the degree of anticipation in honoring a constraint. At any rate, only one constraint is active at a time. MPC eliminates override configuration complexity, can handle multiple constraints simultaneously and by virtue of a constraint model can take into account future violations.
If you need to minimize the rise time giving the fastest possible time to reach setpoint, then the PID bang-bang logic as described in "Full Throttle Batch and Startup Response" is useful.
If there is a simple minimization or maximization of a PID output or setpoint, a PID valve position controller (VPC) may suffice. The use of an enhanced PID for wireless and setpoint rate limits provides directional move suppression and suppression of limit cycles and simplification of the configuration and tuning per the article "Don't Over Look PID for APC." However, as with override control applications, MPC offers less configuration complexity, and simultaneous optimization and constraint prediction.
Dead time compensation can be accomplished by the simple addition of a dead time block in the external reset feedback. The PID can be tuned as if there was essentially no dead time. The dead time block can be updated based on computed transportation delays keeping the dead time compensation more accurate. Most MPC do not presently allow the dead time to be updated online. Over estimates of dead time as small as 25% can cause an oscillatory behavior. One of the big myths is that PID dead time compensation is more effective on dead time dominant processes. Both Shinskey and I have found the benefit to be greater on lag dominant processes. The misconceptions are discussed in the demo-seminar (Deminar) "PID Deadtime Compensation." If the deadtime is due to an analyzer cycle time, the enhanced PID provides greater performance and stability. The situation is similar for MPC. Dead time dominance is not a justification for MPC.
To summarize, if you can identify models you don't have to use FLC. For multivariable continuous control applications, MPC is the normal solution. Additionally, if you do not have factors requiring you to stick with PID and you are doing more than flow feedforward (ratio control) and simple half decoupling and special intelligence is not extensively needed to deal with abnormal conditions, startups, batch operations, and transitions, then you are better off using MPC for advanced regulatory control applications. If you don't have an auto tuner or adaptive tuner or external reset feedback, you are better off with MPC instead of PID override or valve position control for even simple one point optimization. If you don't have extensive PID expertise, MPC becomes the more viable solution for borderline cases. I have more PID expertise than MPC expertise, so I lean towards PID as seen in my presentation "The Effective Use of PID Features for Loop Performance and Optimization" but I realize there are many effective uses of a small MPC as seen in my Advanced Application Note "MPC Implementation Methods for Optimization of a Slow MV with Good Load Rejection by a fast MV"