34
Using MPC in MPC Using MPC in MPC Tim Robinson Tim Robinson

Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

  • View
    233

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Using MPC in MPCUsing MPC in MPC

Tim RobinsonTim Robinson

Page 2: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Using Mehrotra’s Using Mehrotra’s Predictor-Corrector Predictor-Corrector Scheme in Model Scheme in Model Predictive ControlPredictive Control

Tim RobinsonTim Robinson

Page 3: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

What is Model Predicitive Control?What is Model Predicitive Control?

PlantModel

Predictive Controller

Set Point

Control

Action

Output

Page 4: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

How Does MPC Work?How Does MPC Work?

Discrete Time MPC

1. Sample the state of the system

2. Use the computer model of the plant to predict the future state of the system for a given input

3. Formulate an optimisation problem in order to penalise any deviation of the output from the given setpoints

4. Solve the optimisation problem to find the control signal that will drive the system along the setpoints

5. Set the input equal to the starting value of the optimal control signal, discard the rest of the signal and start again

Page 5: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Discrete Time Model Predicitive Discrete Time Model Predicitive ControlControl

k

k

k

k0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

u0(k)

u2(k)

u1(k)

u3(k)

Page 6: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

What’s So Good About MPC?What’s So Good About MPC?

Allows traditional safety margins to be Allows traditional safety margins to be scrapped, so the plant can be operated scrapped, so the plant can be operated near to the constraint boundariesnear to the constraint boundaries

Allows for much greater efficiencyAllows for much greater efficiency

Used extensively in the petro-chemical Used extensively in the petro-chemical industryindustry

Has been of great interest to field of Has been of great interest to field of optimisationoptimisation

Page 7: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

State Space Model of PlantState Space Model of Plant

Page 8: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Velocity Form of State Space Velocity Form of State Space ModelModel

Page 9: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Formulation of Control Signal Formulation of Control Signal TrajectoryTrajectory

Page 10: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Formulation of Control Signal Formulation of Control Signal TrajectoryTrajectory

k

u

. . .

c1

c2

c3

c4

c5

c6

c7

c8

cNc - 2

cNc - 1

cNc

Page 11: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Formulation of Control Signal Formulation of Control Signal TrajectoryTrajectory

Page 12: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Classical Laguerre PolynomialsClassical Laguerre Polynomials

Page 13: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Discrete Laguerre FunctionsDiscrete Laguerre Functions

Page 14: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Discrete Laguerre FunctionsDiscrete Laguerre Functions

The first five discrete Laguerre functions

10 20 30 40 50

-0.4

-0.2

0.2

0.4

Page 15: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Discrete Laguerre FunctionsDiscrete Laguerre Functions

10 20 30 40 50

-0.4

-0.2

0.2

0.4

10 20 30 40 50

-0.4

-0.2

0.2

0.4

10 20 30 40 50

-0.3

-0.2

-0.1

0.1

0.2

10 20 30 40 50

-0.1

0.1

0.2

a=0.5

a=0.9a=0.7

a=0.3

Effect of the scaling parameter a

Page 16: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Why Use Discrete Laguerre Why Use Discrete Laguerre Functions?Functions?

Converge rapidly to a typical control signalConverge rapidly to a typical control signal

Need less coefficients to describe the Need less coefficients to describe the control trajectorycontrol trajectory

Less constraints neededLess constraints needed

Page 17: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Formulation of Cost FunctionFormulation of Cost Function

Page 18: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Unconstrained ControlUnconstrained Control

Page 19: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Constrained ControlConstrained Control

Page 20: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Model Predictive ControlModel Predictive Control

Page 21: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Formulation of Primal-Dual Formulation of Primal-Dual Quadratic ProgramQuadratic Program

Page 22: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Formulation of Primal-Dual Formulation of Primal-Dual Quadratic ProgramQuadratic Program

Page 23: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

KKT Conditions for OptimalityKKT Conditions for Optimality

Page 24: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

What is Mehrotra’s Predictor-What is Mehrotra’s Predictor-Corrector Algorithm?Corrector Algorithm?

Primal-dual interior-point method of solving Primal-dual interior-point method of solving optimisation problemsoptimisation problems

Produces a sequence of feasible iterates which Produces a sequence of feasible iterates which has the optimal solution as the limit pointhas the optimal solution as the limit point

Incorporates a few heuristics for high Incorporates a few heuristics for high performanceperformance

Only just over 10 years old, but has become an Only just over 10 years old, but has become an industry standard for solving linear programsindustry standard for solving linear programs

Also very successful for quadratic programsAlso very successful for quadratic programs

Page 25: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Mehrotra’s Predictor-Corrector Mehrotra’s Predictor-Corrector AlgorithmAlgorithm

central path

t11

t22

infeasible region

affine-scaling step

centering-corrector step

Page 26: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Mehrotra’s Predictor-Corrector Mehrotra’s Predictor-Corrector AlgorithmAlgorithm

Page 27: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Affine Scaling DirectionAffine Scaling Direction

Page 28: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Centering-Corrector DirectionCentering-Corrector Direction

Page 29: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Combined Search DirectionCombined Search Direction

Page 30: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Step Length HeuristicStep Length Heuristic

Page 31: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Optimal TrajectoryOptimal Trajectory

y(k)

u(k)

u(k)

Page 32: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Early Termination (MPC)Early Termination (MPC)

y(k)

u(k)

u(k)

Page 33: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

Early TerminationEarly Termination(Active Set Strategy)(Active Set Strategy)

y(k)

u(k)

u(k)

Page 34: Using MPC in MPC Tim Robinson. Using Mehrotra’s Predictor-Corrector Scheme in Model Predictive Control Tim Robinson

ReferencesReferences

Goodwin, G.C., Graebe, S.F., Salgado, M.E. (2001). Goodwin, G.C., Graebe, S.F., Salgado, M.E. (2001). Control System Control System Design.Design. Prentice-Hall, Upper Saddle River, N.J. Prentice-Hall, Upper Saddle River, N.J.

Mayne, D.Q., Rawlings, J.B., Rao, C.V. (1998). Model Predicitive Control: A Mayne, D.Q., Rawlings, J.B., Rao, C.V. (1998). Model Predicitive Control: A Review. Review. Automatica.Automatica.

Rao, C.V., Wright, S.J., Rawlings, J.B. (1998). Application of Interior-Point Rao, C.V., Wright, S.J., Rawlings, J.B. (1998). Application of Interior-Point Methods to Model Predicitive Control. Methods to Model Predicitive Control. Journal of Optimization Theory and Journal of Optimization Theory and ApplicationsApplications, 99:723-757., 99:723-757.

Wang, L. (2003). Discrete Model Predicitive Control Using Laguerre Wang, L. (2003). Discrete Model Predicitive Control Using Laguerre Functions. Functions. Technical Report, School of Electrical and Computer Technical Report, School of Electrical and Computer Engineering, Royal Melbourne Institute of Technology, Australia.Engineering, Royal Melbourne Institute of Technology, Australia.

Wang, L. (2002). A Tutorial on Model Predictive Control – Using a Linear Wang, L. (2002). A Tutorial on Model Predictive Control – Using a Linear Velocity-Form Model. Velocity-Form Model. Technical Report, School of Electrical and Computer Technical Report, School of Electrical and Computer Engineering, Royal Melbourne Institute of Technology, Australia.Engineering, Royal Melbourne Institute of Technology, Australia.

Wright, S.J. (1997). Wright, S.J. (1997). Primal-Dual Interior-Point Methods.Primal-Dual Interior-Point Methods. Society for Society for Industrial and Applied Mathematics, Philadelphia.Industrial and Applied Mathematics, Philadelphia.