$25
Selected Topics in Engineering Science
Model Predictive Control
.
Make a small modification to the discrete-time MPC code provided by the instructor
(MPCdlqrNoTerminal.m) to include a terminal equilibrium constraint. Simulate the constraintfree and the equilibrium terminal constraint cases under the same cost function, horizon and initial conditions. In each case, show time plots of the predicted trajectories and the closedloop trajectories. Comment on the results.
Make a small modification to the continuous-time MPC code provided by the instructor
(CTdoubleIntMPCNoTerm.m) to include a terminal equilibrium constraint. Simulate the constraint-free case with T = 0.5 and δ = 0.05 (N = 10), with Q = I and R = 1, using the provided initial condition. Then simulate the terminal equilibrium case under the same conditions. Comment on the results.
For the continuous-time double-integrator plant with input constraints U = [−1 1], use the linear method described in class to find an ellipsoidal terminal region and a terminal cost. Use Q = I and R = 1 and δ = 0.1. Then implement MPC with terminal set constraints and terminal cost. Tune the horizon for a compromise between initial feasibility and optimization speed (i.e., you may allow some infeasibility for the first few OPC runs, using fmincon’s maximum iteration limit to keep going). Use T = 1.5 initially.
It is recommended to use an initial guess based on a simulation of the plant with some arbitrary control input (such as a constant). Provide a phase plot of the predicted and actual closed-loop trajectories and show the terminal set. Experiment with α smaller than the maximum allowed for Umax.
Use ACADO to simulate an MPC controller according to Problem 5.8 in Gru¨ne and Pannek (N = 2). Use the supplied discrete-time example and make small modifications. Verify that the closed-loop system is asymptotically stable.
(Extra credit, due with the final project)
Investigate a way to use a terminal cost and a terminal set constraint for an OPC solved with ACADO. Then simulate Problem 4 above using this package. Comment on any computational speed advantages.