acrobat distiller, job 8

101
© Goodwin, Graebe, Salgado , Prentice Hall 2000 Chapter 23 Chapter 23 Model Predictive Control Model Predictive Control

Upload: others

Post on 18-Dec-2021

25 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Chapter 23

Model Predictive ControlModel Predictive Control

Page 2: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Motivation

All real world control problems are subject to constraintsof various types. The most common constraints areactuator constraints (amplitude and slew rate limits). Inaddition, many problems also have constraints on statevariables (e.g. maximal pressures that cannot beexceeded, minimum tank levels, etc).In many design problems, these constraints can beignored, at least in the initial design phase. However, inother problems, these constraints are an inescapable partof the problem formulation since the system operatesnear a constraint boundary.

Page 3: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Motivation - continued

Chapter 11 described methods for dealing withconstraints based on anti-windup strategies. Theseare probably perfectly adequate for simple problems- especially SISO problems. However, in morecomplex MIMO problems - especially those havingboth input and state constraints, it is frequentlydesirable to have a more formal mechanism fordealing with constraints in MIMO control systemdesign.

Page 4: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Outline

We describe one such mechanism here based onModel Predictive Control. This has actually been amajor success story in the application of moderncontrol. More than 2,000 applications of this methodhave been reported in the literature - predominantlyin the petrochemical area. Also, the method is beingincreasingly used in electromechanical controlproblems.

Page 5: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Advantages of Model PredictiveControl

The main advantages of MPC are:

it provides a one-stop-shop for MIMO control in thepresence of constraints,

it is one of the few methods that allows one to treat stateconstraints, and

several commercial packages are available which giveindustrially robust versions of the algorithms aimed atchemical process control.

Page 6: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Anti-Windup Revisited

We assume that the complete state of a system isdirectly measured. Then, if one has a time-invariantmodel for a system and if the objectives andconstraints are time-invariant, it follows that thecontrol policy should be expressible as a fixedmapping from the state to the control. That is, theoptimal control policy will be expressible as

for some static mapping h(#). What remains is togive a characterization of the mapping h(#).

uox(t) = h(x(t))

Page 7: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

We can think of the anti-windup strategies ofChapter 11 as giving a particular simple (ad-hoc)parameterization of h(#). Specifically, if the controlproblem is formulated, in the absence of constraints,as a linear quadratic regulator, then we know that theunconstrained infinite horizon policy is of the form:

ho(x(t)) = −K∞x(t)

Page 8: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

State Space form of Anti-Windup

The anti-windup form of the above linear controlleris

where

h(x(t)) = satho(x(t))

ho(x(t)) = −K∞x(t)

Page 9: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Example

We illustrate by a simple example.Example 23.1: Consider a continuous-time doubleintegrator plant which is sampled with period ∆=1second. The corresponding discrete time model is ofthe form

where

x(k + 1) = Ax(k) + Bu(k)y(k) = Cx(k)

A =[1 10 1

]; B =

[0.51

]; C =

[1 0

]

Page 10: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

We choose to use infinite horizon LQR theory todevelop the control law. Within this framework, weuse the following weighting matrices

We first consider the case when the control isunconstrained.Then, for an initial condition of x(0) = (-10, 0)T, theoutput response and input signal are as shownbelow.

Ψ = CT C, Φ = 0.1

Page 11: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Unconstrained Responses

0 5 10 15 20 25 30−10

−8

−6

−4

−2

0

2

4

6y(k

)

samples (k)

0 5 10 15 20 25 30−10

−8

−6

−4

−2

0

2

4

6

8

10

u(k

)

samples (k)

−10 −8 −6 −4 −2 0 2 4 6−4

−2

0

2

4

6

8

10

x1

x2

Figure 23.1: Output responsewithout constraints

Figure 23.2: Input response

without constraints

Figure 23.3: Phase plane plotwithout constraints

Page 12: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Constraining the input amplitude

We next assume that the input must satisfy the mildconstraint |u(k)| ≤ 5. Applying the anti-winduppolicy leads to the response shown on the next slide.

Page 13: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Responses with Mild Constraint |u(k)|≤ 5

0 5 10 15 20 25 30−10

−8

−6

−4

−2

0

2

4

6

y(k

)

samples (k)

0 5 10 15 20 25 30−10

−8

−6

−4

−2

0

2

4

6

8

10

u(k

)

samples (k)

−10 −8 −6 −4 −2 0 2 4 6−4

−2

0

2

4

6

8

10

x1

x2

Figure 23.4: Output responsewith input constraint|u(k)|≤ 5

Figure 23.5:Input responsewith constraint

|u(k)|≤ 5

Figure 23.6: Phase plane plotwithout constraint|u(k)|≤ 5

Page 14: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Observations

The various plots indicate that the simple anti-windup strategy has produced a perfectly acceptableresponse in this case.

The above example would seem to indicate that oneneed never worry about fancy methods.

Page 15: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Making the constraint more severe

Example Continued. Consider the same set up asabove, save that the input is now required to satisfythe more severe constraint |u(k)|≤ 1. Notice that thisconstraint is 10% of the initial unconstrained input.Thus, this is a relatively severe constraint. Thesimple anti-windup control law now leads to theresponse shown on the next slide.

Page 16: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

0 5 10 15 20 25 30−10

−8

−6

−4

−2

0

2

4

6

y(k

)

samples (k)

0 5 10 15 20 25 30−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

u(k

)

samples (k)

−10 −8 −6 −4 −2 0 2 4 6−4

−2

0

2

4

6

8

10

x1

x2

Figure 23.7: Output responsewith constraint |u(k)|≤ 1

Figure 23.8:Input response

with constraint |u(k)|≤ 1

Figure 23.9: Phase plane plotwith constraint |u(k)|≤ 1

Page 17: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Observations

We see that the simple anti-windup strategy is notperforming well and, indeed, has resulted in largeovershoot in this case.

Page 18: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Discussion of Example withSevere Constraints

We see that the initial input steps have caused the velocity tobuild up to a large value. If the control were unconstrained,this large velocity would help us get to the origin quickly.However, because of the limited control authority, the systembraking capacity is restricted and hence large overshoot occurs.In conclusion, it seems that the control policy has been tooshortsighted and has not been able to account for the fact thatfuture control inputs would be constrained as well as thecurrent control input. The solution would seem to be to try tolook-ahead (i.e. predict the future response) and to takeaccount of current and future constraints in deriving the controlpolicy. This leads us to the idea of model predictive control.

Page 19: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

What is Model PredictiveControl?

Model Predictive Control is a control algorithmbased on solving an on-line optimal control problem.A receding horizon approach is used which can besummarized in the following steps:(i) At time k and for the current state x(k), solve, on-line, an open-loop optimal control problem over some future interval taking account of the current and future constraints.(ii) Apply the first step in the optimal control sequence.(iii) Repeat the procedure at time (k+1) using the current state x(k+1).

Page 20: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Turning the solution into a closedloop policy

The solution is converted into a closed loop strategyby using the measured value of x(k) as the currentstate. When x(k) is not directly measured then onecan obtain a closed loop policy by replacing x(k) byan estimate provided by some form of observer.

Page 21: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Details for Nonlinear ModelGiven a model

the MPC at event (x, k) is computed by solving a constrainedoptimal control problem:

where

and UN is the set of U that satisfy the constraints over theentire interval [k, k + N - 1]; i.e.

x( + 1) = f(x(), u()), x(k) = x

PN (x) : V oN (x) = min

U∈UN

VN (x, U)

U = u(k), u(k + 1), . . . , u(k + N − 1)

VN (x, U) =k+N−1∑

=k

L(x(), u()) + F (x(k + N))

Page 22: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

together with the terminal constraint

Usually UUUU ⊂ Rm is convex and compact, X ⊂ Rn is convexand closed, and W is a set that can be appropriately selectedto achieve stability.

u() ∈ U = k, k + 1, . . . , k + N − 1x() ∈ X = k, k + 1, . . . , k + N

x(k + N) ∈ W

Page 23: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

In the above formulation, the model and costfunction are time invariant. Hence, one obtains atime-invariant feedback control law.

Then, the actual control applied at time k is the firstelement of this sequence, i.e.

PN (x) : V oN (x) = min

U∈UN

VN (x, U)

U = u(0), u(1), . . . , u(N − 1)

VN (x, U) =N−1∑=0

L(x(), u()) + F (x(N))

Uox = uo

x(0), uox(1), . . . , uo

x(N − 1)

u = uox(0)

Page 24: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Figure 23.10: Receding horizon control principle

Page 25: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

An alternative view of Receding Horizonoptimization is shown on the next slide

Page 26: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Alternative View of RecedingHorizon Control Policy

Page 27: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

The associated literature can be divided into fourgenerations as follows:

First generation (1970’s) - used impulse or step response linearmodels, quadratic cost function, and ad-hoc treatment of constraints.

Second generation (1980’s) - linear state space models, quadraticcost function, input and output constraints expressed as linearinequalities, and quadratic programming used to solve theconstrained optimal control problem.

Third generation (1990’s) - several levels of constraints (soft, hard,ranked), mechanisms to recover from infeasible solutions.

Fourth generation (late 1990’s) - nonlinear problems, guaranteedstability, and robust modifications.

Page 28: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Stability

A remarkable property of MPC is that one canestablish stability of the resultant feedback system(at least with full state information). This is madepossible by the fact that the value function of theoptimal control problem acts as a Lyapunov functionfor the closed loop system.

Page 29: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Assumptions

For clarity of exposition, we make the followingsimplifying assumptions:A1: An additional constraint is placed on the final state

A2: L(x, u) is positive definite in both arguments.

x(N) = 0

Page 30: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Theorem 23.1: Consider the system controlled bythe receding horizon MPC algorithm and subject toa terminal constraint. This control law renders theresultant closed loop system globally asymptoticallystable.

Page 31: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Details of Proof

The value function is positive definite andproper (V(x)→∞ as ||x|| →∞). It can therefore beused as a Lyapunov function for the problem. Werecall that at event (x, k), MPC solves:

subject to constraints.

)(0 ⋅NV

PN (x) : V oN (x) = min

U∈UN

VN (x, U)

VN (x, U) =N−1∑=0

L(x(), u()) + F (x(N))

Page 32: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Proof continued:

We denote the optimal open loop control sequencesolving PN(x) as

We recall that inherent in the MPC strategy is thefact that the actual control applied at time k is thefirst value of this sequence; i.e.

Let x(1) = f(x, h(x)) and let x(N) be the terminal stateresulting from the application of . Note that weare assuming x(N) = 0.

Uox = uo

x(0), uox(1), . . . , uo

x(N − 1)

0xU

u = h(x) = uox(0)

Page 33: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Proof continued:

A feasible solution (but not the optimal one) for thesecond step in the receding horizon computationPN(x1) is then:

Then the increment of the Lyapunov function on usingthe true MPC optimal input and when moving from x tox(1) = f(x, h(x)) satisfies:

Ux = uox(1), uo

x(2), . . . , uox(N − 1), 0

∆hV oN (x)

= V o

N (x(1)) − V oN (x)

= VN (x(1), Uox1

) − VN (x, Uox)

Page 34: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Proof continued:

However, since is optimal, we know that

where is the sub-optimal sequence defined earlier.Hence, we have

01x

U

xU~

VN (x(1), Uox1

) ≤ VN (x(1), Ux)

∆hV oN (x) ≤ VN (x(1), Ux) − VN (x, Uo

x)

Page 35: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Proof continued:

Using the fact that shares (N-1) terms in commonwith , we can see that the right hand side satisfies:

where we have used the fact that leads to x(N) = 0by assumption and hence leads to x(N+1) = 0.Finally we have

When L(x, u) is positive definite in both arguments,then stability follows immediately from the LyapunovStability Theorem.

xU~0xU

0xU

xU~

VN (x(1), Ux) − VN (x, Uox) = −L(x, h(x))

∆hV oN (x) ≤ −L(x, h(x))

!!!

Page 36: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Beyond the issue of stability, a user of MPC wouldclearly also be interested in what, if any performanceadvantages are associated with the use of thisalgorithm. In an effort to (partially) answer thisquestion, we pause to revisit the earlier example.

Page 37: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Example RevisitedConsider again the problem described earlier withinput constraint |u(k)| ≤ 1. We recall that theshortsighted policy led to large overshoot.Here, we consider the MPC cost function with N = 2and such that F(x(N)) is the optimal unconstrainedinfinite horizon cost and is theincremental cost associated with the underlying LQRproblem.Here we consider the constraint on the present andnext step. Thus the derivation of the control policy isnot quite as shortsighted as was previously the case.

))(),(( ll uxL

Page 38: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Results for MPC with constraintsapplied on first two steps

0 5 10 15 20 25 30−10

−8

−6

−4

−2

0

2

4

6

y(k

)

samples (k)

0 5 10 15 20 25 30−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

u(k

)

samples (k)

−10 −8 −6 −4 −2 0 2 4 6−4

−2

0

2

4

6

8

10

x1

x2

Figure 23.11: Output responseusing MPC

Figure 23.12:Input response

using MPC

Figure 23.13: Phase plane plotusing MPC

Page 39: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Observations

Comparing these results with those obtained earlier,we see that the performance has been significantlyimproved. This is because the policy is no longerquite so shortsighted as it previously was. Thus wesee that MPC can indeed over performanceadvantages over the shortsighted anti-windupstrategy

Page 40: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Linear Models with QuadraticCost Function

x( + 1) = Ax() + Bu()y() = Cx()

e() = y() + (d() − ys)

de() = d() − ys

Jo =[x(N) − xs]T Ψf [x(N) − xs]

+N−1∑=0

eT ()Ψe()

+M−1∑=0

[u() − us]T Φ[u() − us]

Model:

Error:

Combined “disturbance”:

Cost:

Page 41: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

It can be shown that, if the design is unconstrained,J0 is minimized by taking

U = -W-1Vwhere W and V are functions of A, B, C matrices.V is also a function of the disturbances and desiredoutput.Magnitude and rate constraints on both the plantinput and output can be easily expressed as linearconstraints on U of the form

LU ≤ K

Page 42: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

QP Solution

Thus the constrained problem takes the form:

This optimization is a convex problem due to thequadratic cost and linear constraints. Also, standardnumerical procedures (called QuadraticProgramming algorithms or QP for short) areavailable to solve this sub-problem.

VW TTU

OPT UUUUKLU

2minarg +=≤

Page 43: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Summary of Key Idea Solve receding horizontal optimal control problem subject

to constraints

kTkk

Tk

N

kNN

TN

xUu

RuuQxxxPxMinV +∑+=+

Ω∈∈ 1

Apply first step of control - move forward one step

Stability can be established - terminal constraint of xcrucial.

Page 44: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Example

12.03)( 2 ++

=ss

sG

Uss = 0.33

4.0<u

Plant:

Desired Output:

Steady State Input:

Constraint on Input:

1=ssY

Page 45: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Results: dashed line - unconstrained input solid line - constrained input found via MPC

Page 46: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Output Response: Dashed line - response when unconstrained input is saturated and applied to plant

Solid line - response obtained from MPC algorithm

Page 47: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

One Degree of Freedom Controller

A one-degree of freedom output feedback controlleris obtained by including the set point in thequantities to be estimated. The resultant outputfeedback MPC strategy is schematically depictedbelow.

Page 48: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Figure 23.14: One-degree-of-freedom MPC architecture

-QP0

Observer

G0uopt

y()

d() ys

e()

x()

d()

Page 49: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Integral Action

An important observation is that the architecturedescribed above gives a form of integral action. Inparticular y is taken to the set-point ys irrespective ofthe true plant description (provided a steady state isreached and provided that, in this steady state, u isnot constrained).

Page 50: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Rudder Roll Stabilization of Ships

Here we present a realistic application of modelpredictive control to rudder roll stabilization of ships.It is desirable to reduce the rolling motion of ships producedby wave action so as to prevent cargo damage and improvecrew efficiency and passenger comfort. Conventionalmethods for ship roll stabilization include water tanks,stabilization fins and bilge keels. Another alternative is touse the rudder for roll stabilization as well as coursekeeping. However, using the rudder for simultaneous coursekeeping and roll reduction is non-trivial since only oneactuator is available to deal with two objectives.

Page 51: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Constraint

An important issue in this problem is that the ruddermechanism is usually limited in amplitude and slewrate. Hence this is a suitable problem for modelpredictive control.

Page 52: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Figure 23.15: Magnitudes and conventions for ship motion description

Page 53: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

The Model

Wave disturbances are usually considered at theoutput, and the complete model of the ship dynamicsincluding the output equation is of the form:

where only the roll and yaw are typically directlymeasured i.e. y := [, ]T. dwave is the wave induceddisturbance on the output variables.

wavedxyxx

+=+=

CBA δ&

Page 54: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Model for Wave Disturbances

The wave disturbances can be characterized in termsof their frequency spectrum. This frequencyspectrum can be simulated by using filtered whitenoise. The filter used to approximate the spectrum isusually a second order one of the form

200

2 2)(

ωξω ++=

sssKsH w

Page 55: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Control Objectives

The design objectives for rudder roll stabilization are: Increase the damping and reduce the roll amplitude Control the heading of the ship

Page 56: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Details of the Model

The following model was used for the ship

This system was sampled with a zero order hold and sampling period of 0.5.

A =

−0.1795 −0.8404 0.2115 0.9665 0−0.0159 −0.4492 0.0053 0.0151 00.0354 −1.5594 −0.1714 −0.7883 0

0 0 1 0 00 1 0 0 0

B =

0.2784−0.0334−0.0894

00

Page 57: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Details of the OptimizationCriterion

Details of the model predictive control optimizationcriterion were that a standard LQR cost function wasemployed with

Optimization horizon, N = 20; Control horizon M = 18.

1.0;30090

Page 58: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Estimating the System StateSince only roll, , and yaw, , were assumed to bedirectly measured, then a Kalman filter wasemployed to estimate the 5 system states and 2 noisestates in the composite model.The results of applying MPC to this problem areshown on the following slides.We consider three cases:(i) No constraints on the rudder(ii) Rudder constrained to a maximum angle of 30 degrees and a

maximum slew rate of 15 degrees per second(iii) Rudder constrained to a maximum angle of 20 degrees and

a maximum slew rate of 8 degrees per second.

Page 59: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Figure 23.16: Ship motion with no constraints on rudder motion

0 10 20 30 40 50 60 70 80 90 100−10

−5

0

5

10

Rol

l Ang

le [d

eg]

Time [sec]

Unconstrained Case

MPC offMPC on

0 10 20 30 40 50 60 70 80 90 100−10

−5

0

5

10

Yaw

Ang

le [d

eg]

Time [sec]

0 10 20 30 40 50 60 70 80 90 100

−50

0

50

Rud

der

Ang

le [d

eg]

Time [sec]

Page 60: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Figure 23.17: Ship motion when rudder constrained to maximum angle of 30 degrees and maximumslew rate of 15 degrees/sec.

0 10 20 30 40 50 60 70 80 90 100−10

−5

0

5

10

Rol

l Ang

le [d

eg]

Time [sec]

Max Rudder Angle 30 deg Max Rudder Slew Rate 15 deg/sec

MPC offMPC on

0 10 20 30 40 50 60 70 80 90 100−10

−5

0

5

10

Yaw

Ang

le [d

eg]

Time [sec]

0 10 20 30 40 50 60 70 80 90 100

−50

0

50

Rud

der

Ang

le [d

eg]

Time [sec]

Page 61: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Figure 23.18: Ship motion when rudder constrained to maximum angle of 20 degrees and maximumslew rate of 8 degrees/sec.

0 10 20 30 40 50 60 70 80 90 100−10

−5

0

5

10

Rol

l Ang

le [d

eg]

Max Rudder Angle 20 deg Max Rudder Slew Rate 8 deg/sec

MPC offMPC on

0 10 20 30 40 50 60 70 80 90 100−10

−5

0

5

10

Yaw

Ang

le [d

eg]

Time [sec]

0 10 20 30 40 50 60 70 80 90 100

−50

0

50

Rud

der

Ang

le [d

eg]

Time [sec]

Page 62: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Observations

We see that MPC offers a satisfactory solution to thisproblem. Roll motion has been significantly reducedand, when reformulated as part of the problemdescription, constraints on maximum rudder angleand slew rate have been imposed.

Page 63: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Fluid Catalytic ReactorFluid Catalytic ReactorModeling andModeling and

Control using MPCControl using MPC

Another Example:

This section contributed by:Jia Chunyang, S. Rohani and Arthur JutanDept. of Chemical & Biochemical EngineeringThe University of Western OntarioLondon, Ontario, Canada

Page 64: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

FCC Unit Modeling andMPC Control Simulation

The profitability of a Fluidized Catalyst CrackingUnit makes it of supreme importance in an oil refinery.A typical FCC process diagram is shown in Figure 1.

Model Development" A.Malay and S.Rohani have developed a reliable and simple

model in 1998. They used a four lump kinetic scheme. SeeFig. 2

" The model involves 40 algebraic and ordinary differentialequations.

Page 65: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Gas P roduct t o

main fract ionat or

Flue gas

Air

Gas oil feed

React or Regenerat or

Spent cat alyst

Regen

erat

ed

cat a

lyst

R iser

Figure 1: FCC Unit Process and Control Diagram

Page 66: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

The variables are:

Controlled variables (CVs): Riser outlet temperature (Tris) Reactor bed and regenerator differential pressure (Pd) Reactor bed level (Lrct)

Manipulated variables (MVs): Regenerated catalyst flow rate (Vreg) Flue gas flow rate (Vflu) Spent catalyst flow rate (Vspt)

Page 67: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Disturbances (DVs): Gas oil feed flow rate (Fgas) Air flow rate (Fair)

Page 68: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

A(Gas Oil)

B(Gasoline)

C(Light Gases)

D(Coke)

k

kkk k

Figure 2: Four lump kinetic scheme

Page 69: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

The principle of MPC maybe expressed in thefollowing way: Based on a model of the process,predictive control is the control strategy that makes thepredicted process dynamic output equal to a desireddynamic output conveniently predefined.

The quadratic objective of the MPC control strategy:

[ ] [ ]

)1()(

)1()()(1

2p

1l

2 min

−+∆∆

−+∆Γ++−+Γ ∑∑==

mkuku

lkulkrklkym

l

ul

yl

L

Model predictive control simulation

Page 70: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Control problem formulation

The open loop system is modeled as follows:

dGGuy d+=

where, u=[Vreg Vflu Vspt]T, y=[Tris Pd Lrct]T, d=[Fgas Fair]T,

G is the plant model and Gd is the disturbance model.

Page 71: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

∑=

+=N

ttuty

Ng

1

)()(1)(ˆ τλ

τ

Then the system transfer function G(z) can be obtained:

G(z) =∑∞

=

1

)(k

kzkg

" Data acquisitionIn order to acquire the process data which contain sufficientinformation, we must carefully design a step test in terms of the inputamplitude and frequency.

" Offline identificationThe process data must be handled carefully. This work has mainlybeen done through state space N4SID method and trial and error.

The impulse response of the system can be obtained:

Offline model identification

Page 72: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Open loop dynamic responses

Open loop dynamic responses, see Figures 3-5, showhighly nonlinear and strong coupling characteristicsof the process.

Page 73: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

0 2 4 6 8 10 12 14 1656

78

9R

ct. B

ed L

ev.(m

)

0 2 4 6 8 10 12 14 160.265

0.27

0.275

0.28

Diff

. Pre

ss.(a

tm)

0 2 4 6 8 10 12 14 16750

800

850

900

Ris

er T

emp.

(K)

0 2 4 6 8 10 12 14 160.4

0.5

0.6

Time (hrs)

Reg

.Val

.Ope

ning

Figure 3: Transient response of the system for input changes in theregenerated catalyst valve opening. (10% step increase at 0.5hrs, 20% step decrease at 4 hrs, 10% increase at 8 hrs).

Page 74: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

0 2 4 6 8 10 12 14 165.5

6

6.5

7

Rct

. Bed

Lev

.(m)

0 2 4 6 8 10 12 14 160.2

0.3

0.4

Diff

. Pre

ss.(a

tm)

0 2 4 6 8 10 12 14 16780

800

820

840

Ris

er T

emp.

(K)

0 2 4 6 8 10 12 14 160.46

0.48

0.5

0.52

Time (hrs)

Flu

Gas

Val

.Ope

ning

Figure 4: Transient response of the system for input changes in the flue gasvalve opening. (4% step increase at 0.5 hrs, 7% step decrease at5.2 hrs, 3% increase at 10.5 hrs).

Page 75: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

0 2 4 6 8 10 12 14 165

6

7

8R

ct. B

ed L

ev.(m

)

0 2 4 6 8 10 12 14 16

0.27

0.28

Diff

. Pre

ss.(a

tm)

0 2 4 6 8 10 12 14 16750

800

850

Ris

er T

emp.

(K)

0 2 4 6 8 10 12 14 160.3

0.32

0.34

0.36

Time (hrs)

Spen

t Val

.Ope

ning

Figure 5: Transient response of the system for input changes in the spentcatalyst valve opening. (10% step increase at 0.5 hrs, 13% stepdecrease at 5.2 hrs, 3% increase at 10.5 hrs).

Page 76: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Closed loop control simulationwith PI controllers

The controller parameters are fine tuned and still sofragile that the process can be easily out of control.Responses are shown in Figures 6-8.

Page 77: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

0 2 4 6 8 10 12 14 16

6.6

6.8

7R

ct. B

ed L

ev.(m

)Output Setpoint

0 2 4 6 8 10 12 14 160.272

0.272

0.2721

Diff

. Pre

ss.(a

tm)

Output Setpoint

0 2 4 6 8 10 12 14 16810

815

820

825

Ris

er T

emp.

(K)

Output Setpoint

0 2 4 6 8 10 12 14 160.2

0.4

0.6

0.8

Time (hrs)

Val.

Ope

ning Reg Cat.

Flue Gas Spent Cat.

Figure 6: Closed loop response of the system with PI controller for a 5oCstep increase in the riser temperature setpoint, followed by a10oC step decrease.

Page 78: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

0 2 4 6 8 10 12 14 166

6.5

7

7.5

Rct

. Bed

Lev

.(m)

Output Setpoint

0 2 4 6 8 10 12 14 160.1

0.2

0.3

0.4

Diff

. Pre

ss.(a

tm) Output

Setpoint

0 2 4 6 8 10 12 14 16800

820

840

Ris

er T

emp.

(K) Output

Setpoint

0 2 4 6 8 10 12 14 16

0.5

Time (hrs)

Val.

Ope

ning

Reg Cat. Flue Gas Spent Cat.

Figure 7: Closed loop response of the system with PI controller for a0.03atm step increase in the differential pressure setpoint,followed by a 0.05atm step decrease.

Page 79: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

0 2 4 6 8 10 12 14 166

6.5

77.5

8R

ct. B

ed L

ev.(m

)Output Setpoint

0 2 4 6 8 10 12 14 160.2715

0.272

0.2725

0.273

Diff

. Pre

ss.(a

tm)

Output Setpoint

0 2 4 6 8 10 12 14 16780800

820840

860

Ris

er T

emp.

(K) Output

Setpoint

0 2 4 6 8 10 12 14 160.2

0.4

0.6

0.8

Time (hrs)

Val.

Ope

ning Reg Cat.

Flue Gas Spent Cat.

Figure 8: Closed loop response of the system with PI controller for a 0.7mstep increase in the reactor bed level setpoint, followed by a 1.2mstep decrease.

Page 80: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Process sampling interval: delt = 1,Output weights: ywt = [1 1 1],Input weights: uwt = [0 0 0],Prediction horizon (steps): p = 60,Manipulated variable moves: m = 60,Input constraints: ui = [0 100%];

I = 1,2,3

The simulink block diagram is shown as Figure 9.

The MPC control results both in setpoint change anddisturbance rejection are shown in Figures 10~15.

%1.0=∆ iu

MPC Closed loop simulation

Page 81: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

nlmpcsim

nlmpcsim

Scope3

Scope2

Scope1fccsfunc

S-function

Demux

Figure 9: System closed loop control block diagram in Simulink.

Page 82: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

0 10 20 30 40 50 60 70 80 90750

800

850

900

Ris

er T

emp.

(K) Setpoint

Output

0 10 20 30 40 50 60 70 80 900.15

0.2

0.25

0.3

Diff

. Pre

ss.(a

tm)

SetpointOutput

0 10 20 30 40 50 60 70 80 905.5

6.5

7.5

Rct

. Bed

Lel

.(m) Setpoint

Output

0 10 20 30 40 50 60 70 80 900

50

100

Time (mins)

Val O

peni

ng(%

) Reg Cat. Flue Gas Spent Cat.

Figure 10: Closed loop response of the system with MPC controller for a22oC step increase in the riser temperature setpoint at 5min,followed by a 50oC step decrease at 30min, then a 28oC stepincrease at 60min.

Page 83: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

0 10 20 30 40 50 60 70 80 90805

810

815

820

825

Ris

er T

emp.

(K)

SetpointOutput

0 10 20 30 40 50 60 70 80 90

0.2

0.3

0.4

Diff

. Pre

ss.(a

tm) Setpoint

Output

0 10 20 30 40 50 60 70 80 90

6.6

6.8

7

Rct

. Bed

Lel

.(m) Setpoint

Output

0 10 20 30 40 50 60 70 80 900

50

100

Time (mins)

Val O

peni

ng(%

) Reg Cat. Flue Gas Spent Cat.

Figure 11: Closed loop response of the system with MPC controller for a0.08atm step increase in the differential pressure setpoint at5min, followed by a 0.15atm step decrease at 30min, then a0.07atm step increase at 60min.

Page 84: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

0 10 20 30 40 50 60 70 80 90750

800

850

900

Ris

er T

emp.

(K) Setpoint

Output

0 10 20 30 40 50 60 70 80 900.2

0.3

0.4

Diff

. Pre

ss.(a

tm) Setpoint

Output

0 10 20 30 40 50 60 70 80 904.5

6.5

8.5

Rct

. Bed

Lel

.(m)

SetpointOutput

0 10 20 30 40 50 60 70 80 900

50

100

Time (mins)

Val.

Ope

ning

(%)

Reg Cat. Flue Gas Spent Cat.

Figure 12: Closed loop response of the system with MPC controller for a0.76m step increase in the reactor bed level setpoint at 5min,followed by a 1.5m step decrease at 30min, then a 0.74m stepincrease at 60min.

Page 85: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

0 10 20 30 40 50 60750

800

850

900

Ris

er T

emp.

(K) Setpoint

Output

0 10 20 30 40 50 60

0.2

0.3

0.4

Diff

. Pre

ss.(a

tm) Setpoint

Output

0 10 20 30 40 50 605.5

66.5

77.5

Rct

. Bed

Lel

.(m) Setpoint

Output

0 10 20 30 40 50 600

50

100

Time (mins)

Val O

peni

ng(%

)

Reg Cat. Flue Gas Spent Cat.

Figure13: Closed loop response of the system with MPC controller for stepchanges in the riser outlet temperature, differential pressure andreactor bed level setpoints simultaneously.

(1) 22oC step increase in riser outlettemperature setpoint, 0.08atm stepincrease in differential pressuresetpoint, 0.74m step decrease inreactor bed level setpoint at 5min.

(2) 50oC step decrease in riser outlettemperature setpoint, 0.15atm stepdecrease in differential pressuresetpoint, 1.5m step increase inreactor bed level setpoint at 20min.

(3) 28oC step increase in riser outlettemperature setpoint, 0.07atm stepincrease in differential pressuresetpoint, 0.76m step decrease inreactor bed level setpoint at 40min.

Page 86: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

0 5 10 15 20 25 30750

800

850

Ris

er T

emp.

(K)

SetpointOutput

0 5 10 15 20 25 300.2

0.25

0.3

0.35

Diff

. Pre

ss(a

tm)

SetpointOutput

0 5 10 15 20 25 30

6.5

7

7.5

8

Rct

. Bed

Lel

.(m)

SetpointOutput

0 5 10 15 20 25 300

50

100

Time (mins)

Val.

Ope

ning

(%)

Reg Cat. Flue Gas Spent Cat.

(1) 28oC step decrease in riseroutlet temperaturesetpoint, 0.08atm stepincrease in differentialpressure setpoint, 0.76mstep increase in reactorbed level setpoint at 2min.

(2) 28oC step increase in riseroutlet temperaturesetpoint, 0.08atm stepdecrease in differentialpressure setpoint, 0.76mstep decrease in reactorbed level setpoint at17min.

Figure 14: Closed loop response of the system with MPC controller for stepchanges in the riser outlet temperature, differential pressureand reactor bed level setpoints simultaneously.

Page 87: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

0 10 20 30 40 50 60 70 80 90780

800

820

840R

iser

Tem

p.(K

) SetpointOutput

0 10 20 30 40 50 60 70 80 90

0.2

0.3

0.4

Diff

. Pre

ss.(a

tm) Setpoint

Output

0 10 20 30 40 50 60 70 80 906

6.5

7

7.5

Rct

. Bed

Lel

.(m) Setpoint

Output

0 10 20 30 40 50 60 70 80 900

50

100

Time (mins)

Val.

Ope

ning

(%) Reg Cat.

Flue Gas Spent Cat.

Figure 15: Closed loop response of the system with MPC controller for a 20% increase in the feedgas flow rate and 5% increase in air flow rate as disturbances at 2min, followed by40% and 10% decrease at 15min, 40% increase in the feed gas flow rate at 30min,40% decrease in the feed gas flow rate and 10% increase in air flow rate at 45min,20% increase in the feed gas flow rate and 5% decrease in air flow rate at 60min.

Page 88: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

" MPC control strategy is far more powerful than traditionalPI controller in FCC unit, with multivariable, strongnonlinearity, severe coupling, strict operating constraints.

" Make the operation smooth and stable, reducing muchimpact on the process and therefore much off-specproducts.

" The identified model is accurate enough for MPC controlpurpose.

" Based on the success of the MPC simulation on FCCmodel, we are confident that the following objectives willbe achieved in an industrial practice:

Conclusion

Page 89: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

" Improving the process operating stability .

" Maximizing the process throughput and desirable productsyield.

" Improving the product quality.

" Minimizing energy consumption.

" Improving unit’s economic performance.

Page 90: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Summary MPC provides a systematic procedure for dealing with

constraints (both input and state) in MIMO controlproblems.

It has been widely used in industry.

Remarkable properties of the method can be established,e.g. global asymptotic stability provided certain conditionsare satisfied (e.g. appropriate weighting on the final state).

Page 91: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

The key elements of MPC for linear systems are:

state space (or equivalent) model,

on-line state estimation (including disturbances),

prediction of future states (including disturbances),

on-line optimization of future trajectory subject toconstraints using Quadratic Programming, and

implementation of first step of control sequence.

Page 92: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Embellishments

The results presented in this chapter suggest there isa close connection between MPC and anti-windupprovided the demands made on the system are nottoo severe.Actually, recent research has shown that there existsa non-trivial region of state space in which MPC andanti-windup are equivalent.The next slides illustrate this idea.

Page 93: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Illustrative Example

[ ],10,08.04.0

,14.001

=

=

= CBA

This is the zero-order hold discretisation (with samplingperiod Ts - 0.4 sec.) of the double integrator

).()(),()(

),()(

2

12

1

txtytxtx

tutx

===

&

&

Saturation level: 1=U

Fixed horizon: 10=N

Page 94: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Regions of State Space: A : Region where no saturation occurs B : Region in which MPC and anti- windup are equivalent.

-4 -3 -2 -1 0 1 2 3 4-8

-6

-4

-2

0

2

4

6

8

x1

x2

B

A

B

Page 95: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

First Step of MPC starting from a point in state spacein which MPC ≡ anti-windup but where inputsaturation occurs

-2 -1 0 1 2-1.5

-1

-0.5

0

0.5

1

1.5

x1

x2

0 5 10 15 20 25-1.5

-1

-0.5

0

0.5

1

1.5

k

u(k)

Page 96: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Second Step - Note input still saturated

-2 -1 0 1 2-1.5

-1

-0.5

0

0.5

1

1.5

x1

x2

0 5 10 15 20 25-1.5

-1

-0.5

0

0.5

1

1.5

k

u(k)

Page 97: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Third Step - Note input still saturated

-2 -1 0 1 2-1.5

-1

-0.5

0

0.5

1

1.5

x1

x2 u(k)

0 5 10 15 20 25-1.5

-1

-0.5

0

0.5

1

1.5

k

Page 98: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Fourth Step - Note that state has enteredregion in which input is no longer saturated

-2 -1 0 1 2-1.5

-1

-0.5

0

0.5

1

1.5

x1

x2

0 5 10 15 20 25-1.5

-1

-0.5

0

0.5

1

1.5

k

u(k)

Page 99: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Remainder of the response - Note inputremains unsaturated

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2-1.5

-1

-0.5

0

0.5

1

1.5

x1

x2

0 5 10 15 20 25-1.5

-1

-0.5

0

0.5

1

1.5

k

u(k)

Page 100: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Overlay the anti-windup Solution - Note thatMPC and anti-windup give the same solutionfor this particular initial condition

-2 -1 0 1 2-1.5

-1

-0.5

0

0.5

1

1.5

x1

x2

0 5 10 15 20 25-1.5

-1

-0.5

0

0.5

1

1.5

k

u(k)

Page 101: Acrobat Distiller, Job 8

© Goodwin, Graebe, Salgado , Prentice Hall 2000Chapter 23

Observations

1. It is not surprising that anti-windup performs wellin some cases because it can be shown that thereis a non-trivial region of state space in which anti-windup and MPC are equivalent.

2. However, caution is needed in interpreting thisresult. In general, anti-windup is too shortsightedand MPC will perform better.

3. Some of these issues are explored in the problemsfor readers given in the book.