660 likes | 767 Views
Extra. For students that take PhD course! at least some parts. Main message. 1. Control for economics (Top-down steady-state arguments) Primary controlled variables c = y 1 : Control active constraints For remaining unconstrained degrees of freedom: Look for “self-optimizing” variables
E N D
Extra • For students that take PhD course! • at least some parts
Main message • 1. Control for economics (Top-down steady-state arguments) • Primary controlled variables c = y1 : • Control active constraints • For remaining unconstrained degrees of freedom: Look for “self-optimizing” variables • 2. Control for stabilization (Bottom-up; regulatory PID control) • Secondary controlled variables y2 (“inner cascade loops”) • Control variables which otherwise may “drift” • Both cases: Control “sensitive” variables (with a large gain)!
Summary: The three layers • Optimization layer (RTO; steady-state nonlinear model): • Identifies active constraints and computes optimal setpoints for primary controlled variables (y1). • Supervisory control (MPC; linear model with constraints): • Follow setpoints for y1 (usually constant) by adjusting setpoints for secondary variables (MV=y2s) • Look after other variables (e.g., avoid saturation for MV’s used in regulatory layer) • Regulatory control (PID): • Stabilizes the plant and avoids drift, in addition to following setpoints for y2. MV=valves (u). Problem definition and overall control objectives (y1, y2) starts from the top. Design starts from the bottom. A good example is bicycle riding: • Regulatory control: • First you need to learn how to stabilize the bicycle (y2) • Supervisory control: • Then you need to follow the road. Usually a constant setpoint policy is OK, for example, stay y1s=0.5 m from the right hand side of the road (in this case the "magic" self-optimizing variable self-optimizing variable is y1=distance to right hand side of road) • Optimization: • Which road (route) should you follow?
Comments optimal operation • Do not forget to include feedrate as a degree of freedom!! • For LNG plant it may be optimal to have max. compressor power or max. compressor speed, and adjust feedrate of LNG • For paper machine it may be optimal to have max. drying and adjust the feedrate of paper (speed of the paper machine) to meet spec! • Control at bottleneck • see later: “Where to set the production rate”
Optimizer (RTO) Optimally constant valves TPM CV1s CV1 Supervisory controller (MPC) unused valves CV2s CV2 Regulatory controller (PID) H2 H1 Physical inputs (valves) d y PROCESS ny Stabilized process Degrees of freedom for optimization (usually steady-state DOFs), MVopt = CV1s Degrees of freedom for supervisory control, MV1=CV2s + unused valves Physical degrees of freedom for stabilizing control, MV2 = valves (dynamic process inputs)
Purge (mostly A, some B, trace C) Gas phase process (e.g. ammonia, methanol) Feed 51%A, 49%B Flash Heating Cooling Liquid Product (C) QUIZ • Degrees of freedom (Dynamic, steady-state)? • Expected active constraints? • Proposed control structure?
How does self-optimizing control (solution III) work? • When disturbances d occur, controlled variable c deviates from setpoint cs • Feedback controller changes degree of freedom u to uFB(d) to keep c at cs • Near-optimal operation / acceptable loss (self-optimizing control) is achieved if • uFB(d) ≈ uopt(d) • or more generally, J(uFB(d)) ≈ J(uopt(d)) • Of course, variation of uFB(d) is different for different CVs c. • We need to look for variables, for whichJ(uFB(d)) ≈ J(uopt(d)) or Loss = J(uFB(d)) - J(uopt(d)) is small
Example: Optimal operation distillation cost energy (heating+ cooling) • Cost to be minimized (economics) J = - P where P= pD D + pB B – pF F – pV V • Constraints Purity D: For example xD, impurity· max Purity B: For example, xB, impurity· max Flow constraints: 0 · D, B, L etc. · max Column capacity (flooding): V · Vmax, etc. value products cost feed
methanol + water valuable product methanol + max. 5% water cheap product (byproduct) water + max. 2% methanol Expected active constraints distillation • Valuable product: Purity spec. always active (if we get paid for impurity) • Reason: Amount of valuable product (D or B) should always be maximized • Avoid product “give-away” (“Sell water as methanol”) • Also saves energy • Control implications valuable product: Control purity at spec. 2. “Cheap” product. May want to over-purify! Trade-off: • Yes, increased recovery of valuable product (less loss) • No, costs energy May give unconstrained optimum
xDmax, xBmax (0) pV Infeas. xDmax xBmax, Vmax (-1) xDmax (1) Region below here does not exist if pD is constant (“expensive product purity constraint xDmax always active”) pV=0 No constraints. Overpurify D and B (2) Vmax, xDmax (0) Vmax, (1) F Active constraint regions distillation • No pay for impurity (pD=x*PD0): Can have no active constraints
Purge (mostly A, some B, trace C) Gas phase process (e.g. ammonia, methanol) Feed 51%A, 49%B Flash Heating Cooling Liquid Product (C) QUIZ (again) • Degrees of freedom (Dynamic, steady-state)? • Expected active constraints? (1. Feed given; 2. Feed free) • Proposed control structure?
cost J u uopt Proof of maximum gain rule Local Loss • Consider Taylor series expansion of J(u,d) around the moving optimal point (uopt(d), d), when u differs from uopt(d) • Ignoring higher order terms • Let G be the (unscaled) steady-state gain matrix
Proof of maximum gain rule • Conclusion: To minimize the loss we want to maximize the “scaled gain”:
Procedure Maximum Gain rule Analysis • Process with • nd (important) disturbances • nu unconstrained degrees of freedom • Several candidate sets of controlled variables c • From a (nonlinear) model, compute the optimal inputs (uopt) and outputs (copt) for different disturbances Need nd + 1 optimizations For each candidate output c, compute the optimal variation copt = (ciopt,max - ciopt,min)/2 • Perturb in each input to find for each candidate c the gain, c = G u • Need nu simulations • Determine the implementation error ni for each candidate output ci • Use engineering knowledge • Scaling matrix for outputs: S1=diag{1/|copti|+|ni|} • If possible: Scale the inputs such that a unit deviation from the optimal value has same effect on J (this makes Juu=I); otherwise compute Juu by perturbing u around the optimal • Select those outputs as controlled variables, which has a large
Unconstrained degrees of freedom: Ideal “Self-optimizing” variables • Operational objective: Minimize cost function J(u,d) • The ideal “self-optimizing” variable is the gradient (first-order optimality condition (ref: Bonvin and coworkers)): • Optimal setpoint = 0 • BUT: Gradient can not be measured in practice • Possible approach: Estimate gradient Ju based on measurements y • Approach here: Look directly for c as a function of measurements y (c=Hy) without going via gradient
Recycle systems: Do not recommend Luyben’s rule of fixing a flow in each recycle loop (even to avoid “snowballing”)
Unconstrained degrees of freedom: Optimal measurement combination 2. “Exact local method” (Combined disturbances and implementation errors) Theorem 1. Worst-case loss for given H(Halvorsen et al, 2003): Applies to any H (selection/combination) Theorem 2 (Alstad et al. ,2009): Optimization problem to find optimal combination is convex. • V. Alstad, S. Skogestad and E.S. Hori, ``Optimal measurement combinations as controlled variables'', Journal of Process Control, 19, 138-148 (2009).
Toy Example Reference: I. J. Halvorsen, S. Skogestad, J. Morud and V. Alstad, “Optimal selection of controlled variables”, Industrial & Engineering Chemistry Research, 42 (14), 3273-3284 (2003).
2. General (with noise). “Exact local method” Loss L = J(u,d) – Jopt(d). Keep c = Hy constant , where y = Gyu + Gydd + ny Theorem 1. Worst-case loss for given H(Halvorsen et al, 2003): Applies to any H (selection/combination) Optimization problem for optimal combination: • I.J. Halvorsen, S. Skogestad, J.C. Morud and V. Alstad, ``Optimal selection of controlled variables'', Ind. Eng. Chem. Res., 42 (14), 3273-3284 (2003).
Theorem 2. Explicit formula for optimal H. (Alstad et al, 2008): • F – optimal sensitivity matrix = dyopt/dd Theorem 3. (Kariwala et al, 2008). V. Alstad, S. Skogestad and E.S. Hori, ``Optimal measurement combinations as controlled variables'', Journal of Process Control, 18, in press (2008). V. Kariwala, Y. Cao, S. jarardhanan, “Local self-optimizing control with average loss minimization”, Ind.Eng.Chem.Res., in press (2008)
Toy Example again Reference: I. J. Halvorsen, S. Skogestad, J. Morud and V. Alstad, “Optimal selection of controlled variables”, Industrial & Engineering Chemistry Research, 42 (14), 3273-3284 (2003).
B2. Exact local method, 2 measurements Combined loss for disturbances and measurement errors
Current research (Henrik Manum):Self-optimizing control and Explicit MPC • Our results on optimal measurement combination (keep c = Hy constant) • Nullspace method for n=0 (Alstad and Skogestad, 2007) • Explicit expression (“exact local method”) for n≠0 (Alstad et al., 2008) • Observation 1: Both result are exact for quadratic optimization problems • Observation 2: MPC can be written as a quadratic optimization problem and optimal solution is to keep c = u – Kx constant. • Must be some link!
Quadratic optimization problems • Noise-free case (n=0) • Reformulation of nullspace method of Alstad and Skogestad (2007) • Can add linear constraints (c=Hy) to quadratic problem with no loss • Need ny ≥ nu + nd. H is unique if ny = nu + nd (nym = nd) • H may be computed from nullspace method, • V. Alstad and S. Skogestad, ``Null Space Method for Selecting Optimal Measurement Combinations as Controlled Variables'', Ind. Eng. Chem. Res, 46 (3), 846-853 (2007).
Quadratic optimization problems • With noise / implementation error (n ≠ 0) • Reformulation of exact local method of Alstad et al. (2008) • Can add linear constraints (c=Hy) with minimum loss. • Have explicit expression for H from “exact local method” • V. Alstad, S. Skogestad and E.S. Hori, ``Optimal measurement combinations as controlled variables'', Journal of Process Control, 18, in press (2008).
Optimal control / Explicit MPC • Treat initial state x0 as disturbance d. Discrete time constrained MPC problem: • In each active constraint region this becomes an unconstrained quadratic optimization problem )Can use above results to find linear constraints • State feedback with no noise (LQ problem) Measurements: y = [u x] Linear constraints: c = H y = u – K x • nx = nd: No loss (solution unchanged) by keeping c = 0, so u = Kx optimal! • Can find optimal feedback K from “nullspace method”, • Same result as solving Riccatti equations • NEW INSIGHT EXPLICIT MPC: Use change in sign of c for neighboring regions to decide when to switch regions • H. Manum, S. Narasimhan and S. Skogestad, ``A new approach to explicit MPC using self-optimizing control”, ACC, Seattle, June 2008.
Explicit MPC. State feedback.Second-order system Phase plane trajectory time [s]
Optimal control / Explicit MPC • Output feedback (All states not measured). No noise • Option 1: State estimator • Option 2: Direct use of measurements for feedback “Measurements”: y = [u ym] Linear constraints: c = H y = u – K ym • No loss (solution unchanged) by keeping c = 0 (constant), so u = Kym is optimal,provided we have enough independent measurements: ny ≥ nu + nd ) nym ≥ nd • Can find optimal feedback K from “self-optimizing nullspace method” • Can also add previous measurements, but get some loss due to causality (cannot affect past outputs) H. Manum, S. Narasimhan and S. Skogestad, ``Explicit MPC with output feedback using self-optimizing control”, IFAC World Congress, Seoul, July 2008.
Explicit MPC. Output feedbackSecond-order system State feedback time [s]
RECALL: Back-off for CV-constraints feedrate Loss Jopt backoff c = bottleneck constraint Copt Cs = cmin + backoff Backoff = meas.error (bias) + dynamic control error Dynamic control error can = variance Rule: “Squeeze and shift” Reduce variance (“Squeeze”) and reduce backoff (“shift”)
What should we control (y2)?Rule: Maximize the scaled gain • General case: Maximize minimum singular value of scaled G • Scalar case: |Gs| = |G| / span • |G|: gain from independent variable (u2) to candidate controlled variable (y2) • IMPORTANT: The gain |G| should be evaluated at the (bandwidth) frequency of the layer above in the control hierarchy! • If the layer above is slow: OK with steady-state gain as used for selecting primary controlled variables (y1=c) • BUT: In general, gain can be very different • span (of y2) = optimal variation in y2 + control error for y2 • Note optimal variation: This is often the same as the optimal variation used for selecting primary controlled variables (c). • Exception: If we at the “fast” regulatory time scale have some yet unused “slower” inputs (u1) which are constant then we may want find a more suitable optimal variation for the fast time scale.
LATER !! Effective delay and tunings • θ= effective delay • PI-tunings from “SIMC rule” • Use half rule to obtain first-order model • Effective delay θ = “True” delay + inverse response time constant + half of second time constant + all smaller time constants • Time constant τ1= original time constant + half of second time constant • NOTE: The first (largest) time constant is NOT important for controllability!
Selecting measurements and inputs for stabilization: Pole vectors • Maximum gain rule is good for integrating (drifting) modes • For “fast” unstable modes (e.g. reactor): Pole vectors useful for determining which input (valve) and output (measurement) to use for stabilizing unstable modes • Assumes input usage (avoiding saturation) may be a problem • Compute pole vectors from eigenvectors of A-matrix
Simulation: Response with temperature loop closed using L (can improve with L/F!) BTM COMPOSITION (ximpurity) TOP COMPOSITION (ximpurity) T10 (btm) T30 (top) T30 (top) T10 (btm) • Disturbances: • F changes from 1 to 1.1 at t = 0 • zF changes from 0.5 to 0.55 at t = 50 • qF changes from 1 to 0.9 at t = 100 • Note(as expected!): • Temp. meas. in top -> Top comp. OK • Temp. meas. in btm -> Btm. comp. OK
Multicomponent: Temperature profile Profile steepest in middle and at column ends but small gain
Multicomponent distillation • Conclusion: Control temperature in middle of sections • Almost same as for binary • Very different from slope of temperature profile • (initial response):