Model predictive control (MPC) is an advanced method of process control that is used to control a driving process while satisfying a set of constraints.
Model predictive controllers rely on dynamic models of the process, most often linear empirical models obtained by system identification. The main advantage of MPC is the fact that it allows the current timeslot to be optimized, while keeping future timeslots in account. This is achieved by optimizing a finite time-horizon, but only implementing the current timeslot and then optimizing again, repeatedly, thus differing from Linear-Quadratic Regulator (LQR).
Also MPC has the ability to anticipate future events and can take control actions accordingly. PID controllers do not have this predictive ability.