## Servicios Personalizados

## Articulo

## Indicadores

- Citado por SciELO

## Links relacionados

- Citado por Google
- Similares en SciELO
- Similares en Google

## Bookmark

## Latin American applied research

*versión impresa* ISSN 0327-0793

### Lat. Am. appl. res. v.33 n.2 Bahía Blanca abr./jun. 2003

** Use of wiener nonlinear MPC to control a CSTR with multiple steady state**

**A. Lusson Cervantes, O.E. Agamennoni and J.L. Figueroa ^{1}**

* Departamento de Ingeniería Eléctrica, Universidad Nacional del Sur Avda. Alem 1253, 8000 Bahía Blanca. Argentina. *

^{1}Also in Planta Piloto de Ingenieria Quimica - PLAPIQUI (UNS-CONICET) Camino La Carrindanga Km. 7 (8000) Bahia Blanca. Argentina jfigueroa@plapiqui.edu.ar

** Abstract** -

**In this paper a Nonlinear Model Predictive Control based on a Wiener Model with a Piecewise Linear gain is presented. The major advantages of this algorithm is that it retains all the interesting properties of the classical linear MPC and the computations are easy to solve due to the canonical structure of the nonlinear gain. The proposed control scheme is applied to a nonlinear CSTR that presents multiple steady states.**

** Keywords** -

**Model Predictive Control. Wiener Models. Piecewise Linear Approximation.**

**I. INTRODUCTION**

Model predictive control (MPC) refers to a class of computer control algorithms that control the future behavior of a plant through the use of an explicit process model. At each control interval the MPC algorithm computes an open-loop sequence of manipulated variable adjustments in order to optimize future plant behavior. The first input in the optimal sequence is injected into the plant, and the entire optimization is repeated at subsequent control intervals. MPC technology was originally developed for power plant and petroleum refinery applications, but can now be found in a wide variety of manufacturing environments including chemicals, food processing, automotive, aerospace, metallurgy and pulp and paper (Qin and Badgwell, 1997).

Though manufacturing processes are inherently nonlinear, the vast majority of MPC applications to date are based on linear dynamic models, the most common being step and impulse response models derived from the convolution integral. There are several potential reasons for this, for example, by using a linear model and a quadratic objective, the nominal MPC algorithm takes the form of a highly structured convex Quadratic Programming problem (QP), for which reliable solution algorithms and software can easily be found. This is important because the solution algorithm must converge reliably to the optimum in no more than few tens of seconds to be useful in manufacturing applications.

Nevertheless, there are cases where nonlinear effects are significant enough to justify the use of Nonlinear Model Predictive Control (NMPC). With the introduction of a dynamic nonlinear models within the NMPC algorithm, the complexity of the predictive control problem increases significantly. Review papers by Henson (1998) and Bequette (1991) elaborate on the various approaches to handling nonlinear systems via MPC. For example, many researches have used empirical models for NMPC (Norquay *et al.*, 1998; Su and McAvoy, 1997; Zhu and Seborg, 1994).

In particular, Wiener models have a special structure that facilitates their application to NMPC. Its application has been proved both in academic (Norquay *et al.*, 1998) and practical aspects (Norquay *et al.*, 1999). These models represent a process with linear dynamic but a nonlinear gain, and can represent many of the memoryless nonlinear systems commonly encountered in industrial processes. Due to the static nature of the nonlinearities, they can be removed from the control problem. However some computational difficulty is potentially present and due to that an implicit inversion of the nonlinear static gain is needed. In this work the application of a discrete time nonlinear predictive control of Wiener systems to the control of a CSTR with multiple steady states is analyzed. More specifically, the Wiener structure consists of a linear dynamic element followed in series by a Static nonlinear element. The linear dynamic element uses a discrete state space model and the nonlinear element uses the Piecewise Linear approximation (Julian 1999). The paper is organized as follows: In section II a description of the proposed control scheme is included. In section III the case study is analyzed and finally, some conclusions are discussed in section IV.

**II. NONLINEAR WIENER MPC USING PWL FUNCTIONS**

Let us assume that the system to be controlled can be described by the following discrete-time, nonlinear, state-space model:

(1) |

**Figure 1:** The Wiener model for MPC

where the functions are twice continuously differentiable functions, *x*(*k*) is the vector of state variables, D *u*(*k*) is the vector of control movements, *d*(*k*) is the vector of additive disturbance variables and *y*(*k*) is the vector of process output.

In this work, we will use a specific Wiener approximation to represent the process model. In general, a Wiener model consists of a dynamic linear block in cascade with a static non-linearity at the output. In our application, a discrete state space model is used to describe the linear dynamic element as shown in Fig. 1. For the static nonlinear element, we propose the use of a Continuous Piecewise Linear (PWL) function *y*=*f*(*v*). The PWL functions have proved to be a very powerful tool in the modeling and analysis of nonlinear systems. In particular, any function *f* can be written as a linear combination of the elements of a basis L as *f*(*v*)=*C*^{T}^{L }(*v*). This kind of function (Lusson Cervantes *et al.*, 2001) allows developing a systematic and accurate treatment of approximating functions. For details of the definition and properties of PWL see Appendix A.

In our application, the domain and the image of the PWL function shares the same dimension. Moreover, if we assume that the function *f* of the system is bijective (this is a reasonable assumption for a large set of process models), it is possible to define the inverse function as *f ^{-1}*, such that

*v=f*(

^{-1}*f*(

*v*)). This function is also unique and it is a PWL.

The control problem to be solved is to compute a sequence of inputs D

*u*(

*k*) {

*k*=1, ,

*m*} that will minimize the following dynamic objective:

(2) |

subject to model equations and to inequality constraints

(3) |

where *p* is the prediction horizon, *m* is the control horizon, *r* is the desired set point, and the relative importance of the objective function contributions is controlled by setting the time dependent weight matrices *Q _{j}* and

*R*. Beyond the control horizon the control signal is assumed to be constant (

_{j}*i.e.*D

*u*(

*k+j*)=0,

*j=m,...,p*). Disturbances are typically handled by assuming that a step disturbance has entered at the output and that it will remain constant for all future time (

*d*(

*k*)=

*d*(

*k+j*),

*j*=1,..,

*m*). To accomplish this, a bias term that compares the current predicted output to the current measured is computed (

*i.e., d*(

*k*)

*=y*(

*k*)

*-y*(

^{m}*k*)).

Once D

*u*(

*k*) is computed, following the receding horizon principle, only the first element of the optimal control sequence is used as the current control value. Then, the horizons shift one step forward in time and the whole procedure is repeated. If we assume to know the state vector at the actual time and write the future behavior of the variables for samples

*k*+1 to

*k+m*as vectors

**(**

*v**k*), D

**(**

*U**k*),

**(**

*y**k*) and

**(**

*r**k*); then, the predicted output for the linear model is

(4)

where is an estimation for the output of the lineal model and

and the predicted output for the complete model is

Let us define some points in relation with the MPC structure,

- Since the PWL function**was assumed invertible, it is possible to write the desired signal referred to the output of the linear model as a transformation of the set point**

*f**r*(

*k*) as,

*r*(

^{*}*k*)=

*f*

^{-1}(

*r*(

*k*)).

- If

*y*and

^{u}*y*are the upper and lower bounds defined in (3), then, we can translate this magnitudes to the linear model as

^{l}*v*=

^{u}*f*

^{-1}(

*y*) and

^{u}*v*=

^{l}*f*

^{-1}(

*y*), respectively.

^{l}Finally, the WMPC can be posed as

(5) |

Note that minimization of (5) is a classical LMPC, then all properties about convergence to the global optimal solution and stability of the loop can be guaranteed.

**Figure 2:** Steady State Space

**Table 1**. Nominal CSTR parameter values.

**III. CASE STUDY: STIRRED-TANK REACTOR (CSTR)**

**A. Process Description**

The simulated continuous stirred-tank reactor (CSTR) process (Morningred *et al.*, 1992) consists of an irreversible, exothermic reaction, A® B, in a constant volume reactor cooled by a single coolant stream, which can be modeled by the following equations (Giovanini, 2000).

The measured concentration has a time delay *t _{d}*=0.5min, then

*C*. The objective is to control the measured concentration of A,

_{Ameas}(t) = C_{A}(t - t_{d})*C*, by manipulating the coolant flow rate

_{A}*q*. The nominal parameter values appear in Table 1. This reactor presents two steady states: OR

_{c}_{1}=(0.10,438.51) and OR

_{2}=(0.96,353.54). This is represented in Fig. 2, where both steady states are represented in the state space. Our control objective will be to define two controllers, one for each operating condition.

**B. Process Identification.**

To describe the reactor using a Wiener model, we should obtain a linear description for the dynamic and a nonlinear gain. In our case, we will use a *L-N approach*. In this way, first the linear block is identified using a correlation technique; after that the intermediate signal *v* is generated from the input signal and the static non-linearity is estimated (Westwick and Verhaegen, 1996). This approach is chosen because it is straightforward and ensures an accurate description of the static nonlinearity. To perform the dynamic identification a Pseudo Random signal with a sample time of 0.1 minute was applied to the process. Then, using the input/output data a model for each operating point was computed using an ARX algorithm. The models obtained are as follows,

Note that in this identified model the time delay is zero because the process time delay of 0.5 *min* is small compared to the pseudo-time constant of the system. This model results from a identification process, then the parameters were automatically adopted for the algorithm to achieve the best data adjustment.

Once that the linear model is obtained, several steady-state experiments were carry out and a PWL model is obtained using the PWL Toolbox proposed by Julian (1999), based on the Least Squares method. Using the same tool, a PWL description of the inverse of the gain is obtained. The static gain and the comparison from data and model output are shown in Fig. 3 and Fig. 4, respectively.

**Figure 3.** PWL static Gain.

In this particular application, the dimension of the domain for the nonlinear gain is one. In this case, the PWL functions have the following particularities (see Appendix): the domains for each operative region are *D*_{1} = [-0.095,0.23] and *D*_{2} = [0.96,0.97]. These domains are divided in 10 sectors defined as 10 segments of equal length. Let us call as b * _{i}* (for

*i*=1,..,10) the limits of each segment.

Then, the basis L for each domain are defined as

and the vectors of parameters, computed using the PWL Toolbox are

and

for operating regions 1 and 2, respectively.

**C. Nonlinear Model Predictive Control**

The control problem described in (5) was connected to the simulation model of the reactor in both operative regions. The weighing matrices and the bounds on the variables are described in Table 2.

**Table 2**: Model Predictive Control Parameters

**Figure 4.** Performance of the Wiener model.

The values *Q *and *R* were evaluated through simulation, trying to solve the trade off between smooth control action and fast response. The constraints were defined to guarantee that the operating region of the reactor is always inside the identified regions. The prediction horizon *p* is chosen to capture the complete process behavior (*i.e.*, to allow the model reach the steady-state).

Note that it is necessary to change the parameter *R* when the reactor moves from one operating point to the other. This is necessary due to the large difference of gain in each case. The simulation results are depicted in Fig. 5 and 6 for operating conditions 1 and 2, respectively. The response of the NMPC is compared to the response of the linear controllers having the same set of parameters. This has been done because the linearization effects of the NMPC controller are to be remarked. Fig. 5 and 6 illustrate how the closed loop system with NMPC controller achieves a similar time constant for upper and lower step inputs. The LMPC step response to a lower set point (at OP1) is considerably slower because the system is driven to a lower gain region (see Fig. 3). On the other hand (at the same operating point), the behavior of the LMPC is faster than the NMPC for an upper step input because the system is driven to a higher gain region. From Fig. 5 and 6 it is clear that the NMPC response with the same time constant in both operating points and without overshoot. This behavior does not occur with the LMPC scheme.

**IV. CONCLUSIONS**

In this paper a Nonlinear Model Predictive Control based on a Wiener Model with a Piecewise Lineal gain is applied to control a CSTR with two steady states. The performance of the controller to retain the process in each operative region is tested by simulation.

**Figure 5.** Closed loop response for set point changes OP1.

**Figure 6.** Closed loop response for set point changes OP2.

**APPENDIX: PIECEWISE LINEAR FUNCTIONS**

The Piecewise Linear (PWL) Functions are used since 1965 in the area of nonlinear circuit theory. In the 70's they take special relevancy, from the works of Leon Chua (1971) in which the treatment of systems in Â ^{2} is properly solved. But only recently with the works of Julian *et al. *(1999) on High Level (HL) PWL, it is possible to have an adequate expression to solve general problems in Â * ^{m}*. This representation is able to uniformly approximate any Lipschitz continuous function defined on a compact domain. In general, a PWL function is defined as follows:

*Definition 1 (PWL function)*A function , where

**:***D*is a compact set, is a PWL function if and only if it satisfies,

1. The domain

*D*is divided into a finite number of polyhedral regions

*R*

^{(1)},

*R*

^{(2)}, ....,

*R*

^{(q)}(such that ) by a finite set of boundaries,

*,*such that each boundary is either an (

*m*-1)-dimensional hyperplane characterized by , where , for

*i*=1:,2,...,

*h*, or a subset of it, and cannot be covered by any (

*m*-2)-dimensional hyperplane.

2.

*f*is expressed by an affine representation of the form , for any , where is the Jacobian matrix of

*f*in the region

*R*

^{(i)}and .

3.

*f*is continuous on any boundary between two regions, namely, , for any ,

*p*¹

*q.*

Julian (1999) formulates the canonical expression for the family of PWL functions defined over of a simplicial partition of the domain , where d is the grid size and

*m*is a positive integer. This type of partition subdivides the domain

_{i}*D*in a simplex set ,

*i=*1, ,

*q*such that . The corresponding set of vertexes for these simplexes is called

*S*

^{(i)}. Let us suppose, for simplicity, that the domain

*D*belongs to Â

^{2}(see Fig. A1 for a description of the partition in Â

^{2}). If one function value is associated to each vertex (Fig. A2), then, it is possible to define a PWL function with the following characteristics:

1. The function values assigned to each vertex defines a

*unique*(and local) linear affine function for each simplex;

2. The local lineal expressions define a PWL continuous function because they are continuous on the boundaries of the partition.

The extension of this idea to an *m* dimensional domain leads us to define simplexes of *m*+1 vertices. Then, if we associate one function value to each vertex, it is possible to determine a unique linear affine (local) function for each simplex. In this way, a continuous PWL function is determined by the collection of all the local functions. From this procedure, it is clear that any arbitrary PWL function defined over the simplicial boundary configuration introduced is uniquely determined by its values on the vertices.

Without loss of generality, in the following, it is assumed that the dimension of the image set is one (a PWL map from is equivalent to *m* independent PWL maps *f*_{1},
, *f*_{m} from with the same boundary configuration).

* Definition 2*: Consider a compact domain and a set of hiperplanes

*H*. Then,

*PWL*[

_{H}*D*] is defined as the set of all the

*PWL*continuos mappings taking values on the domain

*D*partitioned with the boundary configuration

*H.*

Julian (1999) proved that a proper definition of addition and multiplication by a scalar over the set

*PWL*[

_{H}*D*] leads to a

*linear vector space*(

*LVS*). Moreover, a set of HL CPWL functions which are a basis of

*PWL*[

_{H}*D*] was found as a function of

*k*nesting absolute values.

In addition, the elements of this base can be expressed in vector form as ordered according to its

*nesting level*(

*n.l.*), where is the vector containing the

*n.l.*=

*i*functions. Accordingly, the main result in Julian (1999) said that any function

*f*Î

*PWL*[

_{H}*D*] can be written as

where and every vector *c _{i}* is a parameter vector associated to the

*n.l.*=

*i*vector function .

**Figure A1**.: Simplicial Partition in Â ^{2}

**Figure A2**. Constructive Approach in Â ^{2}

** REFERENCES**

Bequette, B.W. Nonlinear control of chemical processes: A review. *Ind. Eng. Chem. Res.,* **30**, 1391-1413 (1991). [ Links ]

Chua, L.O. Efficient computer algorithms for piecewise-linear analysis of resistive nonlinear networks. IEEE Trans. Circuits Theory, **CT-18**, 73-85 (1971). [ Links ]

Giovanini L. Control Predictivo Robusto con Restricciones, *PhD Thesis*. Universidad Nacional del Litoral (2000). [ Links ]

Henson, M. Nonlinear model predictive control: current status and future directions. *Computers and Chemical Engineering*, **23**, 187 (1998). [ Links ]

Julian, P. High Level Canonical Piecewise Linear Representation: Theory and Applications. *PhD thesis in Systems Control*, Universidad Nacional del Sur (1999). [ Links ]

Lusson Cervantes, A., O.E. Agamennoni and J.L. Figueroa, A Wiener Nonlinear Model Predictive Control under Uncertainties, *Second Pan American Workshop on Process Systemms Engineering, *Guaruja SP, Brasil, September (2001). [ Links ]

Morningred, J.D., B.E. Paden and D.A. Mellichamp, An adaptive nonlinear predictive controller. *Chemical Engineering Science*, **46**, 755 (1992). [ Links ]

Norquay, S., Palazoglu, A., Romagnoli, J.A. Model predictive control based on wiener models. *Chemical Engineering Science*, **53**, 75. (1998). [ Links ]

Norquay, S.J., A. Palazoglu and J.A. Romagnoli, Application of Wiener Model Predictive Control to an Industrial C2-Splitter, *J. of Process Control*, **9**, 461-473 (1999). [ Links ]

Qin, S.J., Badgwell, T.A. An overview of industrial model predictive control technology,* AIChE Symposium Series*, **93**, 232. (1997). [ Links ]

Su H.T. and T.J. McAvoy, Artificial Neural Networks for nonlinear process identification and control. *Nonlinear Process Control. *Henson and Seborg (Eds.), Englewood Cliffs, NJ, Prentice-Hall, Chapter 7, 371-428 (1997). [ Links ]

Westwick, A.D. and M. Verhaegen, Identifying MIMO wiener systems using subspace model identification methods. *Signal Processing*, **52**, 235 (1996). [ Links ]

Zhu X. and D.E. Seborg, Nonlinear Model Predictive Control Based on Hammerstein Models. *Proc. Int. Symp. on Process System Engineering, *Seul, Korea, 995-1000 (1994). [ Links ]

**Received**: September 16, 2001.

**Accepted for publication**: November 02, 2002.

**Recommended by Guest Editors**: J. Cerdá, S. Díaz and A. Bandoni