Identification and Control of Nonlinear Processes in the Presence of

Model reference adaptive fuzzy control for one linear actuator hopping robot. S. Kuswadi , M. Sampei , S. Nakaura. ,254-259. Article Options. PDF (111...
0 downloads 0 Views 111KB Size
Ind. Eng. Chem. Res. 2001, 40, 2275-2282

2275

Identification and Control of Nonlinear Processes in the Presence of Unmeasured Load Disturbances Mingzhong Li, Fuli Wang, and Furong Gao* Department of Chemical Engineering, The Hong Kong University of Science and Technology, Clear Water Bay, Kowloon, Hong Kong

Identification and control of a nonlinear process in the presence of unmeasured load disturbances is important, because most chemical processes are perturbed by load disturbances that are often not measured. In this paper, the absorption principle is first extended to develop an effective identification strategy for a feedforward neural network representation of the process inputoutput relation in the presence of an unmeasured load disturbance. This developed model can provide an accurate output prediction, irrespective of the load disturbances, as long as the disturbances can be reasonably approximated by piecewise polynomials. Second, a predictive control scheme is developed on the basis of genetic algorithm optimization, using the aboveidentified model, for the nonlinear process under the influence of unmeasured loads. Finally, simulations are provided to illustrate the effectiveness of the proposed identification and control scheme. 1. Introduction Most chemical processes are plagued by disturbances, resulting in off-spec product quality and suboptimal operation. Disturbances can be divided into measurement noise and measured and unmeasured disturbances. Software and hardware filters have been shown to be most effective in eliminating high-frequency measurement noises; measured disturbances can also be effectively eliminated via control schemes such as feedforward control. The handling of unmeasured load disturbances, however, is a challenge for process control engineers. Most chemical processes experience load disturbances that are often not measured, and many disturbances are not measurable and can be timevarying. The modeling of a linear process subject to bounded load disturbances described by piecewise polynomials has been considered by Tsypkin et al.1 using the absorption principle.2 Most chemical processes, however, are inherently nonlinear. Two methods have been proposed to model a nonlinear process in the presence of unmeasured disturbances. The first, proposed by Mukhopadhyay and Narendra,3 depicts the process with an extended state neural network by minimizing the effect of the disturbance on the output. The state representation of the disturbance-free plant is expanded. A larger network structure is therefore necessary because of the extended states. This larger network can result in practical implementation problems. Furthermore, as the network captures process dynamics combined with disturbance characteristics, it will have difficulties in predicting the process output when the disturbance disappears or changes in its characteristics. Tsypkin et al.’s other work4 is an interesting and significant extension, also by a neural network, of their early modeling work to a nonlinear process. They used absorption polynomials and nonquadratic performance functions to reduce the effect of the load disturbance * Corresponding author. Tel.: +852-2358-7139. Fax: +8522358-0054. E-mail: [email protected].

on the weight estimates of the network model, so that the dynamic relationship between the process input and output could be reasonably represented by the network. However, this extended modeling has practical implementation problems as the absorption principle is an intrinsically unstable operator that can cause strong fluctuations in the model parameters, as illustrated in the simulation section of this paper. Furthermore, a control strategy is lacking for the model proposed. This paper focuses on the identification and control of a nonlinear process in the presence of unmeasured load disturbances. First, as in Tsypkin et al.,4 a feedforward neural network (FNN) is used to represent the nonlinear process. The network is trained to approximate the process input-driven output, i.e., the output due to the process inputs, not the directly measured output, so that the network model can represent the true input-output relationship, independent of the disturbances, which might be uncertain and timevarying. To alleviate the stability problem associated with the absorption principle, a generalized absorption principle (GAP) is proposed. The GAP transforms the load-corrupted observed output into the disturbance-free process output. With such a disturbance-independent process input-output model, a number of control schemes can be employed to control the process. Model predictive control is selected, as it has recently become a preferred choice in the process industry, because of its easy handling of constraints, time delays, and set-point tracking.5-8 Nonlinear programming is often required in network-based predictive control, resulting in a susceptibility to entrapment at a local optimum. Compared to conventional nonlinear programming methods, genetic algorithms (GAs)9 are well-known as effective global optimization tools. A GA-based predictive control method is thus developed, with its additional advantages of fast convergence and easy handling of control constraints. Finally, simulations are provided to show that the proposed model and control strategy is effective in rejecting unknown load disturbances.

10.1021/ie0001063 CCC: $20.00 © 2001 American Chemical Society Published on Web 04/24/2001

2276

Ind. Eng. Chem. Res., Vol. 40, No. 10, 2001

2. Background Assume that a nonlinear process output is described by the equation

yo(k) ) f(Yo(k-1),U(k-1)) + R(z-1) d(k)

(1)

where yo(k) is the process observed output at time k, which is corrupted by load disturbance d(k); Yo(k-1) ) [yo(k-1), yo(k-2), ..., yo(k-n)]T and U(k-1) ) [u(k1),u(k-2), ..., u(k-m)]T are, respectively, n-dimensional and m-dimensional output and input vectors at time k - 1; d(k) is an unmeasured external load disturbance to the process; z-1 is a shift operator, i.e., z-1d(k) ) d(k1); R(z-1) is a disturbance transform function that might be unknown; and f(Yo(k-1),U(k-1)) is an unknown nonlinear function correlating the process output to all measured process inputs. For most chemical processes, the output contribution due to an unknown or unmeasured load disturbance can be represented by

D(k) ) R(z-1) d(k)

(2)

In most practical cases, d(k) is a low-frequency signal, especially when the process output is conditioned with a proper filter design. The low-frequency load disturbance can be described by the following piecewise polynomial:

{

...

Equation 3 is a rather general representation that can describe the commonly encountered load disturbances such as step changes, ramps, or quadratic disturbances. Load disturbances that cannot be modeled exactly by eq 3 can be reasonably approximated as piecewise polynomials. We now define yI(k) as the process output due to all measured process inputs. For simplicity, we refer to yI(k) as the process-input-driven output. Mathematically, yI(k) can be described as

(4)

Obviously, yI(k) * yo(k) with the existence of d(k). As the process-input-driven output, yI(k) is not directly measurable. To identify f(Yo(k-1),U(k-1)) properly, the contribution of the disturbance, D(k), has to be removed from yo(k). The absorption principle can be used for such a purpose. Before we go further, let us briefly review this principle. Absorption Principle.2 If there exists a polynomial T(z-1) that satisfies the equation

T(z-1) d(k) ) 0

k > deg(T(z-1))

(5)

then T(z-1) is an absorption polynomial. For a piecewise polynomial disturbance described by eq 3, an absorption polynomial T(z-1) can be chosen as

T(z-1) ) (1 - z-1)Q+1 )

Q+1

∑ (-1)cCQ+1cz-c

c)0

T(z-1) D(k) ) 0

(7)

By substituting eq 6 into eq 7, we have Q+1

∑ (-1)cCQ+1cD(k-c)

(8)

c)1

(3) ... ... dg(k) ) dg0 + dg1k + ... + dgqgkqg kg-1 e k < kg

yI(k) ) f(Yo(k-1),U(k-1))

where Q ) max{q0, q1, ..., qg, ...} and CQ+1c is a binomial coefficient. The choice of the absorption polynomial as eq 6 is based on the fact that the (Q + 1)th-order derivative of a polynomial of order Q is zero. For discrete-time systems, derivatives are naturally replaced with difference equations. Based on eq 5, we also have

D(k) ) -

d(k) ) d0(k) ) d00 + d01k + ... + d0q0kq0 0 e k < k0 d1(k) ) d10 + d11k + ... + d1q1kq1 k0 e k < k1

...

Figure 1. Feedforward neural network.

(6)

The above equation suggests that the contribution of the unmeasured load disturbances can be estimated from their past influences, without the need of knowing the disturbance transfer function model, R(z-1). 3. Network Training and Extension of Absorption Principle In this section, a feedforward neural network is introduced to model the process input-output relation. A discussion of the shortcoming of the existing absorption principle is presented, followed by an introduction of the proposed generalized absorption principle (GAP) and its associated network training algorithm. 3.1. Feedforward Neural Network. A widely used feedforward neural network (FNN), as shown in Figure 1 with one hidden layer of M neurons with a sigmoid activation function, is used to approximate the processinput-driven output, yI(k) ) f(Yo,U). The network input is vector is X(k) ) [x0(k), x1(k), ..., xn+m(k)]T ) [1, YO(k1),U(k-1)]T, and the output is represented by M

yˆ (k) )

wiF(si(k)) ∑ i)1

(9)

n+m

si(k) )

wijxj(k) ∑ j)0

(10)

where wi is the output-layer-connected weight, wij is the hidden-layer-connected weight, and F(‚) is the nonlinear sigmoid activation function, F(x) ) 1/(1 + e-x). Suppose that, for the FNN of eqs 9-10, there exists an optimal weight vector W* ) [w1/, ..., wM/, w10/, ..., wM(n+m)/]T such that

|yI(k) - yˆ (k)| ) |yI(k) - NN(X(k),W*)| < δ (11)

Ind. Eng. Chem. Res., Vol. 40, No. 10, 2001 2277

where yˆ ) NN(X(k),W*) is the network output with the optimal weights and δ is a given small, positive constant. 3.2. Training Algorithm and Generalized Absorption Principle (GAP). The above network cannot be trained directly with the input and observed output data, as the observed outputs are corrupted by unmeasured load disturbances. The difference between the observed process output and the model output at time k is the sum of the contribution of the disturbance and the model error, i.e.

(k) ) yo(k) - yˆ (k) ) D(k) + δI(k,W)

(12)

δI(k,W) ) f(Yo(k-1),U(k-1)) - yˆ (X(k),W)

(13)

where

is the error between the process-input-driven output and the network model output. With the optimal weight W*, the error δI(k,W*) should be smaller than δ, as defined in eq 11. The optimal weights W* can be determined by minimizing the sum of the squares of δI(k,W), which is not directly available. Transforming eq 12 by multiplying by an absorption polynomial T(z-1) results in

˜ (k) ) T(z-1)(k) ) T(z-1)D(k) + T(z-1)δI(k,W) ) D ˜ (k) + δ˜ I(k,W) (14) Equation 7 suggests that D ˜ (k) is zero over the interval ki + Q < k < ki+1. D ˜ (k) is nonzero only during the initial interval ki e k e ki + Q, when the disturbance switches from one piecewise polynomial form to another. If the disturbance pattern does not change often, D ˜ (k) will be zero most of the time. The use of the sum of the squares of ˜ (k) as the training performance index for the FNN will not result in the optimal network weight vector, because T(z-1) is an unstable operator. In other words, with this performance index for network training, the network approximation error can be significant even when the error ˜ (k) is small. This fact will be illustrated later in the simulation section. To resolve this problem, the following generalized absorption principle (GAP) is proposed

˜ g(k) ) Tg(z-1)(k) ) Tg(z-1)D(k) + Tg(z-1)δI(k,W) ) D ˜ g(k) + δ˜ g(k,W) (15)

performance index for the network training

J1(W) )

1

P

∑ F(˜ g(k))

(17)

2 k)1

where P is the number of the training data pairs, ˜ g(k) is as defined in eq 15, and

F(e˜ g(k)) )

{

if |˜ g(k)| e ∆ if |˜ g(k)| > ∆

˜ g(k)2 ∆

2

(18)

where ∆ is a predetermined constant. Equation 18 limits the influence of large values of D ˜g on the network training. Application of the back-propagation algorithm results in the following network weight vector update

W(t) ) W(t-1) - η∇WJ1(W)

(19)

where W(t) denotes the network weight vector at the tth iteration and η is a learning rate constant. From eqs 15-18, we have

∇WJ1(W) )

1

P

∑ 2 k)1

∂F(˜ g(k)) ∂˜ g(k) ∂˜ g(k)

(20)

∂W

where

∂F(˜ g(k))

)

∂˜ g(k)

{

2˜ g(k) 0

if |˜ g(k)| e ∆ if |˜ g(k)| > ∆

(21)

and

∂˜ g(k) ∂W

) Tg(z-1)

Q+1

∂(k)

)-

∂W

∑ (-R)cCQ+1c c)0

∂yˆ (k-c) (22) ∂W

According to the network structure, we have the following connecting weights updating laws

wi(t) ) wi(t-1) +

η

P

∂F

Q+1

∑ ∑ (-R)cCQ+1cF(si(k-c)) 2k)1 ∂˜ g(k) c)0

(23)

wij(t) ) wij(t-1) +

η

P

∂F

× ∑ 2k)1 ∂˜ g(k)

Q+1

(-R)cCQ+1cwiF′(si(k-c)) xj(k-c) ∑ c)0

where

Tg(z-1) ) (1 - Rz-1)Q+1

(16)

an R ∈ (0,1] is a tuning factor. When R ) 1, Tg(z-1) is the standard absorption polynomial defined in eq 6. When R ∈ (0,1), Tg(z-1) is a stable polynomial, i.e., the eigenvalues of the absorption polynomial are within the unit circle. We refer to this extended absorption polynomial as the generalized absorption polynomial. Although the generalized absorption polynomial Tg(z-1) cannot completely absorb the disturbance, the use of ˜ g(k) ) Tg(z-1)(k) for neural network training can result in δg(k) being minimized asymptotically. As pointed out earlier, D ˜ (k) is nonzero within the initial interval ki e k e ki + Q after the disturbance changes its pattern, and the magnitude of D ˜ g(k) can be significant during this period. Define the following

i ) 1, 2, ..., M; j ) 0, 1, ..., n + m (24)

Using the above updating laws, the network output approximates the process-input-driven output. The effect of the disturbances on the identified model is eliminated via the proposed generalized absorption principle. 4. GA-Based Predictive Control Using the above neural network model, a predictive control strategy is developed in this section. In neuralnetwork-based predictive control,5-7 nonlinear programming, a time-consuming method that is susceptible to entrapment at local optima, is used to determine the control law. On the other hand, genetic algorithms (GA),9 an effective global optimization approach, have

2278

Ind. Eng. Chem. Res., Vol. 40, No. 10, 2001

been applied successfully to many numerical and combinatorial optimization problems, especially for constrained, nonconvex, and multi-extremum optimization problems. Thus, instead of nonlinear programming, a genetic algorithm is chosen for the predictive control design for the process of interest. 4.1. Genetic Algorithms. Genetic algorithms evolve a population of individuals, mimicking the biological mechanics of natural selection, genetics, and evolution. Each individual, a chromosome, of the population represents a trial solution. All chromosomes are usually represented by binary strings. The measurement of the value of a chromosome in the context of the problem is given by a fitness function. A GA in its simplest form uses three operators, one each for reproduction, crossover, and mutation. Reproduction (selection) is a process by which individual strings are selected according to their fitness values to form a new population. The reproduction can be conducted in several ways. Roulette-wheel selection is the most commonly used, whereby individuals are extracted by spinning a simulated biased roulette wheel with slots that have sizes proportional to the fitness values of the individuals. Crossover operates on a selected pair with a crossover probability pc. First, two strings from the reproduced population are randomly selected for mating. At a randomly selected crossover site (a bit position) the strings are crossed, resulting in the new individuals (offspring) by juxtaposing the first part of one parent with the last part of the other and vice versa. Mutation modifies the allele of each individual of the population with low mutation probability pm. Usually the new allelic value is randomly chosen with a uniform probability distribution. The GA operation procedure can be briefly described as follows: (1) Randomly generate an initial population X(0) ) {x1, x2, ..., xN}. (2) Compute the fitness F(xi) of each individual xi of the current population X(t). (3) Generate an intermediate population Xr(t) by applying the reproduction operator. (4) Generate X(t + 1) by performing the crossover and mutation operations on Xr(t). (5) Let t ) t + 1. If max{F(xi)} > ξ or t g Tmax, where ξ is the preselected constant and Tmax is the maximum number of allowable iterations, end the procedure; otherwise, go to step 2. The process of generating offspring and selecting those with high fitness values continues until a satisfactory solution is reached or the number of allowable iteration is exceeded. 4.2. GA-Based Predictive Control. Predictive control designed on the basis of genetic algorithm optimization and the above neural network model involves the following three issues: encoding of the control input, definition of the fitness function, and estimation of the disturbance contribution. (1) Encoding. Predictive control “optimally” determines, for each control period, the control inputs over the control horizon, Nu. The control input constraint ∆u ∈ [∆umin, ∆umax] can be easily considered by defining a weighting parameter φi ∈ [0,1], i ) 1, 2, ..., Nu. With the above definitions, each control input change can be defined as

∆u(k+i-1) ) ∆umin + φi(∆umax - ∆umin) where ∆u(k+i-1) ) u(k+i-1) - u(k+i-2).

(25)

GA operates most commonly in the format of binary operation. All control input changes over the control horizon can be represented by a binary string of the form

L 2l-1dli)/(2L - 1), and L where dli ∈ {0,1}, φi ) (∑l)1 determines the control input resolution. Equation 26 is a binary string that can be easily operated via GA operators. Control input changes can be calculated by

L

∆u(k+i-1) ) ∆umin +

2l-1dli ∑ l)1 2L - 1

(∆umax - ∆umin) (27)

(2) Fitness. Fitness F(xi) is defined by the following performance index for the proposed GA-based predictive control N

J2(U) )

[yr(k+j) - yˆ o(k+j)]2 ∑ j)1

(28)

where yr(k+j) is the reference, which is determined by the process operator; yˆ o(k+j) is the prediction of the observed process output for the jth step ahead, yo(k+j); and N is the predictive horizon. The prediction of the observed process output can be represented by

ˆ (k+j) yˆ o(k+j) ) yˆ I(k+j) + D

(29)

where yˆ I(k+j) is the prediction of the process-inputdriven output for the jth step ahead, yI(k+j), which can be determined by the GAP-trained network; and D ˆ (k+j) is the estimation of the contribution of the disturbance, which is calculated next. (3) Estimation of the Disturbance Contribution. The contribution of the disturbance D(k+j) can be estimated according to eq 8, as follows Q+1

D ˆ (k+j) ) -

∑ (-1)c CQ+1cDˆ (k-c + j)

j ) 1, 2, ..., N

c)1

(30)

where

D(k+i) )

{

(k+i) D ˆ (k+i)

if i e 0 if i > 0

(31)

In the above equation, the model error δI(k+i) (i e 0) is assumed to be small so that it can be neglected. The unmeasured contribution of the load disturbance to the output can be estimated by the above equation over the time interval ki + Q < k < ki+1. However, there is significant estimation error during the initial interval ki e k e ki + Q. The contribution of the disturbance should be treated differently for this period. The treatment of the disturbance is summarized as follows: First, according to the observed process output and the model output at time k, calculate (k), and estimate the external disturbance D ˆ (k) ) Q+1 (-1)cCQ+1c(k-c). Second, compare (k) with D ˆ (k) -∑c)1

Ind. Eng. Chem. Res., Vol. 40, No. 10, 2001 2279

Figure 2. Block diagram of the overall control system.

to determine whether |(k) - D ˆ (k)| < ψ, where ψ is a predetermined small positive constant. An affirmative result indicates that time k is within the interval satisfying ki + Q < k < ki+1. The future contribution of the disturbance can therefore be predicted by eq 30. Otherwise, a constant disturbance contribution will be assumed, i.e., D ˆ (k+j) ) (k) for j > 0, indicating that the process disturbance cannot be predicted and that the disturbance has changed to a new form. Substituting eq 29 into eq 28 allows the performance index to be rewritten as N

J2(U) )

[yr(k+j) - yˆ I(k+j) - D(k+j)] ∑ j)1

2

(32)

(4) GA-Based Predictive Control. An overall block diagram of the proposed GA-based predictive control system using the prediction of the input-driven output by the proposed GAP-based network algorithm is shown in Figure 2. The control procedure can be summarized as follows: Step 1. Initialization. Determine the control law constraints ∆umin and ∆umax, the control resolution factor length L, the desired performance γ, the maximum number of iterations Tmax, the crossover probability pc, and the mutation probability pm. Also, generate an initial population X(0) ) {x1, ..., xi, ..., xM}, where xi is defined by eq 26 and M is the number of individuals. Step 2. Index Computation Test. Compute the performance index value J2(xi) according to eq 32. If there is a performance index value less than the desired performance γ, then go to step 6. Step 3. Reproduction. Generate an intermediate population Xr(t) by applying the reproduction operator. Step 4. GA Operation. Generate X(t+1) by performing the crossover and mutation operations on Xr(t). Step 5. Termination Check. Let t ) t + 1. If t g Tmax, go to step 6; otherwise, return to step 2. Step 6. Control Output. Select the individual with the minimum performance index as the control output. The overall performance of the closed-loop system is obviously dependent on the quality of the neural network model, the prediction of the load contribution, and the speed and convergence of the genetic algorithm. Our simulation studies indicate that the proposed system performs reasonably well over a wide range of conditions with the properly selected system parameters. It is

Figure 3. Comparison of training results for the AP and proposed GAP algorithms: (a) unmeasured disturbance and (b) comparison of the NN output predictions.

interesting to note that the global optimum can be reached within a reasonably small maximum number of iterations in the GA optimization. When Tmax is set to be very small, the algorithm does not reach the global optimum. In this case, the system reduces to suboptimal control, i.e., the control associated with the smallest index among all of the candidates is used. This degrades the system performance somewhat, but in all of the cases that we have simulated so far, no stability problems have been encountered. The following section presents a typical example to illustrate the effectiveness of the proposed identification and control strategy. 5. Simulations The same process as used by Tsypisin et al.4 and Narenda and Panthasarathy10 is chosen to demonstrate the effectiveness of the proposed identification and control algorithm subject to different types of unmeasured load disturbances. The nonlinear process is described by

yo(k) )

yo(k-1) 1 + yo(k-1)2

+ u(k-1) + D(k)

(33)

where D(k) is the unmeasured contribution of the disturbance. The purpose of this simulation is to illustrate the effectiveness of the proposed identification and control strategy, not to tune the parameters. For the following discussion, a common set of parameters is chosen as follows: Q ) 2, η ) 0.001, ∆ ) 1.5, and R ) 0.5 for the network identification, and N ) 3, Nu ) 1, M ) 40, pc

2280

Ind. Eng. Chem. Res., Vol. 40, No. 10, 2001

Figure 4. Prediction result comparison: (a) proposed GAP-based prediction, (b) estimate of unmeasured disturbance, and (c) BPbased NN prediction.

Figure 5. Control performance comparison without output filter: (a) set-point responses, (b) manipulated variable responses, and (c) unmeasured disturbance.

) 0.5, pm ) 0.15, Tmax ) 20, L ) 10, γ ) 0.005, and ∆u ∈ [-0.2, 0.2] for the predictive control. 5.1. Identification. In the following simulations, a network with the input X(k) ) [1, yo(k-1),u(k-1)]T, the output yˆ (k), and six hidden nodes is used to approximate the nonlinear process. (1) Comparison of Absorption Principle and Generalized Absorption Principle. To demonstrate the effectiveness of the proposed generalized absorption principle, both the conventional absorption principle and the generalized absorption principle are employed to train the neural network, and their results are compared. In the simulation, the process is subjected to a uniformly distributed input over the range [-1, 1], together with a piecewise quadratic polynomial disturbance. Onehundred pairs of input and observed output were used for network training. For the absorption principle (GA)

training algorithm, after 10 000 iterations, the sum of the squared error ˜ (k) was reduced to 0.166075, but the sum of the squared model error δI(k) was still very significant, with a value of 19.34565. The network weights fluctuated significantly during the training. However, for the proposed generalized absorption principle training algorithm, the sum of the squared error ˜ g(k) was 1.07307 after the same number of training iterations, and the sum of the squared model error δI(k) was reduced to an acceptable value of 0.234672. A comparison of the results of the two training schemes is shown in Figure 3. The results of the GAP-based model (solid line) overlap the process-input-driven output (dotted line), whereas the difference between the AP-based model result (dashed line) and the processinput-driven output is significant. Figure 3 suggests

Ind. Eng. Chem. Res., Vol. 40, No. 10, 2001 2281

Figure 6. Control performance comparison with output filter: (a) set-point responses and (b) manipulated variable responses.

that the network trained by the proposed GAP-based algorithm works much better. (2) Comparison of Normal BP Algorithm and Proposed GAP-Based Algorithm. In the GAP-based training algorithm, the network output approximates the processinput-driven output, whereas in a normal BP network training algorithm, the output approximates the observed process output. To verify the network ability to generalize, a normal BP algorithm and the proposed generalized-absorption-principle-based algorithm were separately trained for the nonlinear process in the presence of an unmeasured piecewise polynomial load disturbance, as shown by the dotted line in Figure 4b. The order of the polynomial is assumed to be two. As in the previous case, 100 pairs of input and observed output data wereused for network training by the GAPbased algorithm and normal BP algorithms. The outputs of the two networks after 10 000 training iterations are shown in Figure 4. Figure 4a shows that the network output trained by the GAP-based algorithm approximates well the process-input-driven output. The estimation of the unmeasured disturbance based on the proposed algorithm is also shown in Figure 4b, where it can be seen that the proposed algorithm estimates the disturbance very well. The BP-trained network approximates the observed process output with significant errors, as seen in Figure 4c. 5.2. GA-Based Predictive Control. With the neural network model developed based on GAP, we can now design a GA-based predictive controller to determine u that makes the nonlinear process output yo track a reference output yr in the presence of unmeasured load disturbances. The control result is compared with that of the conventional BP-trained neural-network-based

Figure 7. Control performance comparison in the presence of a complex disturbance: (a) set-point responses, (b) manipulated variable responses, and (c) unmeasured disturbance.

predictive control with error feedback compensation (NN-based PC with EC). In both control cases, the control inputs are determined via the proposed GAbased predictive control. Figure 5 presents a comparison of the control performance for the unmeasured secondorder piecewise polynomial load disturbance shown in Figure 5c. The set-point tracking results are shown in Figure 5a, and the corresponding manipulated variable changes are shown in Figure 5b. It can be seen that the proposed GAP-based algorithm tracks the set-point profile better than the control based on the conventional BP algorithm. The latter has much larger overshot and greater deviation from the set point. Both controls have some small fluctuations in the process output caused by the minor chattering in the controller output, which results from the inherently stochastic nature of GAbased algorithms. This minor problem can easily be

2282

Ind. Eng. Chem. Res., Vol. 40, No. 10, 2001

resolved by placing a simple filter between the process input and the controller output. The filter is designed to take the form of uf(k) ) ζu(k) + (1 - ζ)uf(k-1), where uf(k) is the filter output, ζ is a preselected filter constant, and u(k) is the predictive controller output. Figure 6 presents the same results as Figure 5, but with output filtration corresponding to ζ ) 0.7. Figure 6 clearly shows that the proposed GAP-based control outperforms the BP-based control in the load disturbance rejection. The controller output chattering has obviously been eliminated through the addition of a first-order filter. The use of the filter has slowed the control response somewhat. In practice, a compromise has to be made between response speed and control smoothness. An excessive slowing with very low value of ζ can, in certain cases, present a stability problem. Fortunately, only minor filtration is necessary for the prevention of controller chattering associated with the GA algorithm; ζ can be reasonably close to 1. The last simulation compares the control performance in the presence of a first-order filtered composite load disturbance of the step-change, ramp, quadratic, and sine functions. Figure 7 clearly indicates that the proposed GAP-based control can track the set point well in the presence of a complex disturbance. 6. Conclusions The absorption principle has been extended to allow for the effective rejection of load disturbances in a chemical process. Based on this extended absorption principle, a model identification scheme for a neural network has been developed to model the true process input-output dynamics for a nonlinear process in the presence of unmeasured load disturbances. A geneticalgorithm-based predictive control strategy has been developed on the basis of the proposed identification and disturbance estimation schemes. Simulations have shown that both the proposed identification and predictive

control schemes work very effectively for a nonlinear process in the presence of the common load disturbances encountered in the chemical industry. This leads us to believe that the proposed strategies will be useful for the practical control of chemical processes. Literature Cited (1) Tsypkin, Y. Z.; Mason, J. D.; Warwick, K. Identification of linear systems in the presence of piecewise polynomial disturbances. IEE Proc. Control Theory Appl. 1996, 143 (2), 305-308. (2) Gonzales, D. R.; Antasklis, P. J. Internal models in regulations, stabilizations and tracking. Int. J. Control 1991, 53 (2), 411430. (3) Mukhopadhyay, S.; Narendra, K. S. Disturbance rejection in nonlinear systems using neural networks. IEEE Trans. Neural Networks 1993, 4 (1), 63-72. (4) Tsypkin, Y. Z.; Mason, J. D.; Avedyan, E. D.; Warwick, K. Neural networks for identification of nonlinear systems under random piecewise polynomial disturbance. IEEE Trans. Neural Networks 1999, 10 (2), 303-311. (5) Chen, J. Systematic Derivations of model predictive control based on artificial neural network. Chem. Eng. Commun. 1998, 164, 35-59. (6) Bhat, N.; McAvoy, T. J. Use of neural nets for dynamic modeling and control of chemical process systems. Comput. Chem. Eng. 1990, 14 (5), 573-583. (7) Montague, G. A.; Willis, M. J.; Tham, M. T.; Morris, A. J. Artificial neural network based multivariable predictive control. IEEE Trans. Neural Networks 1991, 119-123. (8) Gao, F.; Wang, F.; Li, M. A neural-network-based nonlinear controller using an extended Kalman filter. Ind. Eng. Chem. Res. 1999, 38, 4330-4336. (9) Gen, M.; Cheng, R. Genetic Algorithms and Engineering Design; Wiley-Interscience: New York, 1997. (10) Narendra, K. S.; Parthasarathy, K. Identification and control of dynamical systems using neural networks. IEEE Trans. Neural Networks 1990, 1, 4-27.

Received for review January 26, 2000 Revised manuscript received January 10, 2001 Accepted February 23, 2001 IE0001063