Double-layered nonlinear model predictive control based on Hammerstein–Wiener model with disturbance rejection. (September 2018)