Abstract:
An enhanced model-free adaptive controller is disclosed, which consists of a linear dynamic neural network that can be easily configured and put in automatic mode to control simple to complex processes. Two multivariable model-free adaptive controller designs are disclosed. An enhanced anti-delay model-free adaptive controller is introduced to control processes with large time delays. A feedforward/feedback model-free adaptive control system with two designs is introduced to compensate for measurable disturbances.

Description:
FIELD OF THE INVENTION 
     The invention relates to industrial process control, and more particularly to an improved method and apparatus for model-free adaptive control of industrial processes using enhanced model-free adaptive control architecture and algorithms as well as feedforward compensation for disturbances. 
     BACKGROUND OF THE INVENTION 
     A Model-Free Adaptive Control methodology has been described in patent application Ser. No. 08/944,450 filed on Oct. 6, 1997. The methodology of that application, though effective and useful in practice, has some drawbacks as follows: 
     1. The model-free adaptive controller includes a nonlinear neural network which may cause saturation when the controller output is close to its upper or lower limits; 
     2. It is difficult for the user to specify a proper sample interval because it is related to the controller behavior; 
     3. Changing the controller gain in the absence of error may still cause a sudden change in controller output; 
     4. The prior multivariable model-free adaptive controller is quite complex and requires the presence of all sub-processes in the multi-input-multi-output process; 
     5. The static gain of the predictor in the prior anti-delay MFA controller is set at 1. It is better if the setting is related to the controller gain. 
     6. The time constant of the predictor in the prior anti-delay MFA controller is related to the setting of the sample interval. It is better if the setting is related to the process time constant; 
     SUMMARY OF INVENTION 
     The present invention overcomes the above-identified drawbacks of the prior art by providing model-free adaptive controllers using a linear dynamic neural network. The inventive controller also uses a scaling function to include the controller gain and user estimated process time constant. The controller gain can compensate for the process steady-state gain, and the time constant provides information of the dynamic behavior of the process. The setting for the sample interval becomes selectable through a wide range without affecting the controller behavior. Two more multivariable model-free adaptive controller designs (compensation method and prediction method) are disclosed. An enhanced anti-delay model-free adaptive controller is introduced to control processes with large time delays. The method to select the parameters for the anti-delay MFA predictor is disclosed. A feedforward/feedback model-free adaptive control system with two designs (compensation and prediction method) is used to compensate for measurable disturbances. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a block diagram illustrating a single-variable model-free adaptive control system according to this invention. 
     FIG. 2 is a block diagram illustrating the architecture of a single-variable model-free adaptive controller according to this invention. 
     FIG. 3 is a block diagram illustrating a multivariable model-free adaptive control system according to this invention. 
     FIG. 4 is a block diagram illustrating a 2×2 multivariable model-free control system according to this invention. 
     FIG. 5 is a signal flow diagram illustrating a 3×3 multivariable model-free adaptive control system according to this invention. 
     FIG. 6 is a block diagram illustrating a 2×2 predictive multivariable model-free control system according to this invention. 
     FIG. 7 is a signal flow diagram illustrating a 3×3 predictive multivariable model-free adaptive control system according to this invention. 
     FIG. 8 is a block diagram illustrating a SISO model-free adaptive anti-delay control system according to this invention. 
     FIG. 9 is a block diagram illustrating a feedforward/feedback model-free adaptive control system according to this invention. 
     FIG. 10 is a block diagram illustrating a predictive feedforward/feedback model-free adaptive control system according to this invention. 
     FIG. 11 is a block diagram illustrating an M×M multivariable model-free adaptive control system with multiple feedforward predictors. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     A. Single-variable Model-Free Adaptive Control 
     FIG. 1 illustrates a single variable model-free adaptive control system, which is the simplest form of this invention. The structure of the system is as simple as a traditional single loop control system, including a single-input-single-output (SISO) controller  10 , a process  12 , and signal adders,  14 ,  16 . The signals shown in FIG. 1 are as follows: 
     r(t)—Setpoint 
     y(t)—Measured Variable or the Process Variable, y(t)=x(t)+d(t). 
     x(t)—Process Output 
     u(t)—Controller Output 
     d(t)—Disturbance, the disturbance caused by noise or load changes. 
     e(t)—Error between the Setpoint and Measured Variable, e(t)=r(t)−y(t). 
     The control objective is to make the measured variable y(t) track the given trajectory of its setpoint r(t) under variations of setpoint, disturbance, and process dynamics. In other words, the task of the MFA controller is to minimize the error e(t) in an online fashion.                        E   S          (   t   )       =                  1   2                       e        (   t   )       2                   =                      1   2          [       r        (   t   )       -     y        (   t   )         ]       2     .                   (   1   )                                
     The minimization of E S (t) is done by adjusting the weighting factors in the MFA controller. 
     FIG. 2 illustrates the architecture of a SISO MFA controller. A linear multilayer neural network  18  is used in the design of the controller. The neural network has one input layer  20 , one hidden layer  22  with N neurons, and one output layer  24  with one neuron. 
     The input signal e(t) to the input layer  20  is firstly converted to a normalized error signal E 1  with a range of −1 to 1 by using the normalization unit  26 , where N(.) denotes a normalization function. The output of the normalization unit  26  is then scaled by a scaling function L(.)  25 :                L        (   .   )       =         K   c       T   c       .             (   2   )                                
     The value of E 1  at time t is computed with function L(.) and N(.):                  E   1     =         K   c       T   c                       N        (     e        (   t   )       )           ,           (   3   )                                
     where K c &gt;0 is defined as controller gain and T c  is the user selected process time constant. These are important parameters for the MFA controller since K c  is used to compensate for the process steady-state gain and T c  provides information for the dynamic behavior of the process. When the error signal is scaled with these parameters, the controller&#39;s behavior can be manipulated by adjusting the parameters. 
     The use of T c  as part of the scaling function permits a broad choice of sample intervals, T s , because the only restriction is that T s  must conform to the formula T s &lt;T c /3 based on the principles of information theory. 
     The E 1  signal then goes iteratively through a series of delay units 28, where z −1  denotes the unit delay operator. A set of normalized and scaled error signals E 2  to E N  is then generated. In this way, a continuous signal e(t) is converted to a series of discrete signals, which are used as the inputs to the neural network. These delayed error signals E i , i=1, . . . N, are then conveyed to the hidden layer through the neural network connections. This is equivalent to adding a feedback structure to the neural network. Then the regular static multilayer neural network becomes a dynamic neural network, which is a key component for the model-free adaptive controller. 
     A model-free adaptive controller requires a dynamic block such as a dynamic neural network as its key component. A dynamic block is just another name for a dynamic system, whose inputs and outputs have dynamic relationships. 
     Each input signal is conveyed separately to each of the neurons in the hidden layer  22  via a path weighted by an individual weighting factor we, where i=1, 2, . . . N, and j=1, 2, . . . N. The inputs to each of the neurons in the hidden layer are summed by adder  30  to produce signal p j . Then the signal p j  is filtered by an activation function  32  to produce q j , where j denotes the jth neuron in the hidden layer. 
     A piecewise continuous linear function f(x) mapping real numbers to [0,1] defined by 
     
       
           f ( x )=0, if  x&lt;−{fraction (b/a)}   (4a) 
       
     
     
       
           f ( x )= ax+b , if − {fraction (b/a)}≦x≦{fraction (b/a)}   (4b) 
       
     
     
       
           f ( x )=1, if  x&gt;{fraction (b/a)}   (4c) 
       
     
     where preferably a&gt;0, and b&gt;0, is used as the activation function in the neural network. The constants of the activation function can be selected quite arbitrarily. The reason for using a linear function f(x) to replace the conventional sigmoidal function is that the linear activation function will not cause saturation near the limits as the sigmoidal function may do. 
     Each output signal from the hidden layer is conveyed to the single neuron in the output layer  24  via a path weighted by an individual weighting factor h j , where j=1, 2, . . . N. These signals are summed in adder  34  to produce signal z(.), and then filtered by activation function  36  to produce the output o(.) of the neural network  18  with a range of 0 to 1. 
     A de-normalization function  38  defined by 
     
       
           D ( x )=100 x,   (5) 
       
     
     maps the o(.) signal back into the real space to produce the controller output u(t). 
     The algorithm governing the input-output of the controller consists of the following difference equations:                    p   j          (   n   )       =       ∑     i   =   1     N              w   ij          (   n   )              E   i          (   n   )             ,           (   6   )                                                      o        (   n   )       =                f        (       ∑     j   =   1     N              h   j          (   n   )              q   j          (   n   )           )         ,                 =                  a          ∑     j   =   1     N              h   j          (   n   )              q   j          (   n   )             +   b       ,                 (   8   )                                 
     when the variable of function f(.) is in the range specified in Equation (4b), and o(n) is bounded by the limits specified in Equations (4a) and (4c). The controller output becomes                      u        (   t   )       =                    K   c          e        (   t   )         +     D        (     o        (   t   )       )                       =                    K   c          e        (   t   )         +     100              [       a          ∑     j   =   1     N              h   j          (   n   )              q   j          (   n   )             +   b     ]         ,                 (   9   )                                
     where n denotes the nth iteration; o(t) is the continuous function of o(n); u(t) is the output of the MFA controller; D(.) is the de-normalization function; and K c &gt;0, called controller gain  42 , is a constant used to adjust the magnitude of the controller. This is the same constant as in the scaling function L(.)  25  and is useful to fine tune the controller performance or keep the system in a stable range. 
     An online learning algorithm is developed to continuously update the values of the weighting factors of the MFA controller as follows:                  Δ                     w   ij          (   n   )         =       a   2        η                     ∂     y        (   n   )           ∂     u        (   n   )                           e        (   n   )              E   i          (   n   )              h   j          (   n   )           ,           (   10   )                   Δ                     h   j          (   n   )         =     a                 η                     ∂     y        (   n   )           ∂     u        (   n   )                           e        (   n   )              q   j          (   n   )           ,           (   11   )                                
     where preferably η&gt;0 is the learning rate, and the partial derivative ∂y(n)/∂u(n) is the gradient of y(t) with respect to u(t), which represents the sensitivity of the output y(t) to variations of the input u(t). 
     By selecting                    ∂     y        (   t   )           ∂     u        (   t   )           =         S   f          (   n   )       =   1       ,           (   12   )                                
     as described in patent application Ser. No. 08/944,450, the resulting learning algorithm is as follows: 
     
       
         Δ w   ij ( n )= a   2   ηe ( n ) E   i ( n ) h   j ( n ),  (13) 
       
     
     
       
         Δ h   j ( n )= aηe ( n ) q   j ( n ).  (14) 
       
     
     The equations (1) through (14) work for both process direct-acting or reverse acting types. Direct-acting means that an increase in the process input will cause its output to increase, and vice versa. Reverse-acting means that an increase in the process input will cause its output to decrease, and vice versa. To keep the above equations working for both direct and reverse acting cases, e(t) needs to be calculated differently based on the acting type of the process as follows: 
     
       
           e ( t )= r ( t )− y ( t ), if direct acting  (15a) 
       
     
     
       
           e ( t )=−[ r ( t )− y ( t )], if reverse acting  (15b) 
       
     
     This is a general treatment for the process acting types. It applies to all model-free adaptive controllers to be introduced below. 
     B. Multivariable Model-Free Adaptive Control 
     FIG. 3 illustrates a multivariable feedback control system with a model-free adaptive controller. The system includes a set of controllers  44 , a multi-input multi-output (MIMO) process  46 , and a set of signal adders  48  and  50 , respectively, for each control loop. The inputs e(t) to the controller are presented by comparing the setpoints r(t) with the measured variables y(t), which are the process responses to controller outputs u(t) and the disturbance signals d(t). Since it is a multivariable system, all the signals here are vectors represented in bold case as follows. 
     
       
           r ( t )=[ r   1 ( t ),  r   2 ( t ), . . . , r   M ( t )] T ,  (16a) 
       
     
     
       
           e ( t )=[ e   1 ( t ),  e   2 ( t ), . . . , e   M ( t )] T ,  (16b) 
       
     
     
       
           u ( t )=[ u   1 ( t ),  u   2 ( t ), . . . , u   M ( t )] T ,  (16c) 
       
     
     
       
           y ( t )=[ y   1 ( t ),  y   2 ( t ), . . . , y   M ( t )] T ,  (16d) 
       
     
     
       
           d ( t )=[ d   1 ( t ),  d   2 ( t ), . . . , d   M ( t )] T ,  (16e) 
       
     
     where superscript T denotes the transpose of the vector, and subscript M denotes the total element number of the vector. 
     There are three methods to construct a multivariable model-free adaptive control system: decoupling, compensation, and prediction. The decoupling method is described in patent application Ser. No. 08/944,450, and other two methods are introduced in the following. 
     1. Compensation Method 
     Without losing generality, we will show how a multivariable model-free adaptive control system works with a 2-input-2-output (2×2) system as illustrated in FIG. 4, which is the 2×2 arrangement of FIG.  3 . In the 2×2 MFA control system, the MFA controller set  52  consists of two controllers C 11 , C 22 , and two compensators C 21 , and C 12 . The process  54  has four sub-processes G 11 , G 21 , G 12 , and G 22 . 
     The process outputs as measured variables y 1  and y 2  are used as the feedback signals of the main control loops. They are compared with the setpoints r 1  and r 2  at adders  56  to produce errors el and e 2 . The output of each controller associated with one of the inputs v 11  or v 22  is combined with the output of the compensator associated with the other input by adders  58  to produce control signals u 1  and u 2 . The output of each sub-process is cross added by adders  60  to produce measured variables y 1  and y 2 . Notice that in real applications the outputs from the sub-processes are not measurable and only their combined signals y 1  and y 2  can be measured. Thus, by the nature of the 2×2 process, the inputs u 1  and u 2  to the process are interconnected with its outputs y 1  and y 2 . The change in one input will cause both outputs to change. 
     In this 2×2 system, the element number M in Equation 16 equals to 2 and the signals shown in FIG. 4 are as follows: 
     
       
           r   1 ( t ),  r   2 ( t )—Setpoint of controllers  C   11  and  C   22 , respectively. 
       
     
     
       
           e   1 ( t ),  e   2 ( t )—Error between the setpoint and measured variable. 
       
     
     
       
           v   11 ( t ),  v   22 ( t )—Output of controller  C   11  and  C   22 , respectively. 
       
     
     
       
           v   21 ( t ),  v   12 ( t )—Output of compensators  C   21  and  C   12 , respectively. 
       
     
     
       
           u   1 ( t ),  u   2 ( t )—Inputs to the process, or the outputs of the 2×2 controller set. 
       
     
     
       
           x   11 ( t ),  x   21 ( t ),  x   12 ( t ),  x   22 ( t )—Output of process  G   11   , G   21   , G   12  and  G   22 , respectively. 
       
     
     
       
           d   1 ( t ),  d   2 ( t )—Disturbance to y, and y 2 , respectively. 
       
     
     
       
           y   1 ( t ),  y   2 ( t )—Measured Variables of the 2×2 process. 
       
     
     The relationship between these signals are as follows: 
     
       
           e   1 ( t )= r   1 ( t )− y   1 ( t )  (17a) 
       
     
     
       
           e   2 ( t )= r   2 ( t )− y   2 ( t )  (17b) 
       
     
     
       
           y   1 ( t )= x   11 ( t )+ x   12 ( t )  (17c) 
       
     
     
       
           y   2 ( t )= x   21 ( t )+ x   22 ( t )  (17d) 
       
     
     
       
           u   1 ( t )= v   11 ( t )+ v   12 ( t )  (17e) 
       
     
     
       
           u   2 ( t )= v   21 ( t )+ v   22 ( t )  (17f) 
       
     
     The controllers C 11  and C 22  have the same structure as the SISO MFA controller shown in FIG.  2 . The input and output relationship in these controllers is represented by the following equations: 
     For Controller C 11 :                    p   j   11          (   n   )       =       ∑     i   =   1     N              w   ij   11          (   n   )              E   i   11          (   n   )             ,           (   18   )                     q   j   11          (   n   )       =       a                     p   j   11          (   n   )         +   b       ,           (   19   )                     v   11          (   n   )       =         K   c   11            e   1          (   n   )         +     100              [       a          ∑     j   =   1     N              h   j   11          (   n   )              q   j   11          (   n   )             +   b     ]         ,           (   20   )                   Δ                     w   ij   11          (   n   )         =       a   2          η   11            e   1          (   n   )              E   i   11          (   n   )              h   j   11          (   n   )           ,           (   21   )                   Δ                     h   j   11          (   n   )         =     a                   η   11            e   1          (   n   )              q   j   11          (   n   )           ,           (   22   )                                
     For Controller C 22                     p   j   22          (   n   )       =       ∑     i   =   1     N              w   ij   22          (   n   )              E   i   22          (   n   )             ,           (   23   )                     q   j   22          (   n   )       =       a                     p   j   22          (   n   )         +   b       ,           (   24   )                     v   22          (   n   )       =         K   c   22            e   2          (   n   )         +     100              [       a          ∑     j   =   1     N              h   j   22          (   n   )              q   j   22          (   n   )             +   b     ]         ,           (   25   )                   Δ                     w   ij   22          (   n   )         =       a   2          η   22            e   2          (   n   )              E   i   22          (   n   )              h   j   22          (   n   )           ,           (   26   )                 Δ                     h   j   22          (   n   )         =     a                   η   22            e   2          (   n   )                q   j   22          (   n   )       .               (   27   )                                
     In these equations, preferably η&gt;0 and η&gt;0 are the learning rate; K c   11 &gt;0 and K c   22 &gt;0 are the controller gain for C 11  and C 22 , respectively; and T c   11 &gt;0 and T c   22 &gt;0 are estimated process time constants for G 11  and G 22 , respectively. E i   11 (n) is the delayed and scaled error signal of e 1 (n); and E i   22 (n) is the delayed and scaled error signal of e 2 (n). 
     The compensators C 12  and C 21  can be designed to include a first-order dynamic block by the following Laplace transfer functions: 
     For Compensator C 21                         C   21          (   S   )       =         V   21          (   S   )           V   11          (   S   )                     =           K   s   21          K   c   21             T   c   21        S     +   1       .                   (   28   )                                
     For Compensator C 12                         C   12          (   S   )       =         V   12          (   S   )           V   22          (   S   )                     =           K   s   12          K   c   12             T   c   12        S     +   1       .                   (   29   )                                
     In these equations, V 11 (S), V 21 (S), V 12 (S), and V 22 (S) are the Laplace transform of signals v 11 (t), v 21 (t), v 12 (t), and v 22 (t), respectively; S is the Laplace transform operator; K c   21 &gt;0 and K c   12 &gt;0 are the compensator gain; and T c   21  and T c   12  are the compensator time constants, for C 21  and C 12 , respectively. In the applications where only static compensation is considered, T c   21  and T c   12  can be set to 0. If the sub-process G 21 =0, meaning that there is no interconnection from loop  1  to loop  2 , the compensator C 21  should be disabled by selecting K c   21 =0. Similarly, if G 12 =0, one should select K 12 =0 to disable C 12 . 
     The compensator sign factors K s   21  and K s   12  are a set of constants relating to the acting types of the process as follows: 
     
       
           K   s   2 ,=1, if  G   22  and  G   21  have different acting types  (30a) 
       
     
     
       
           K   s   21 =−1, if  G   22  and  G   21  have the same acting type  (30b) 
       
     
     
       
           K   s   12 =1, if  G   11  and  G   12  have different acting types  (30c) 
       
     
     
       
           K   s   12 =−1, if  G   11  and  G   12  have the same acting type  (30d) 
       
     
     These sign factors are needed to assure that the MFA compensators produce signals in the correct direction so that the disturbances caused by the coupling factors of the multivariable process can be reduced. 
     A 3×3 multivariable model-free adaptive control system is illustrated in FIG. 5 with a signal flow diagram. In the 3×3 MFA control system, the MFA controller set  66  consists of three controllers C 11 , C 22 , C 33 , and six compensators C 21 , C 31 , C 12 , C 32 , C 13 , C 23 . The process  68  has nine sub-processes G 11  through G 33 . The process outputs as measured variables y 1 , y 2 , and y 3  are used as the feedback signals of the main control loops. They are compared with the setpoints r 1 , r 2 , and r 3  at adders  70  to produce errors e 1 , e 2 , and e 3 . The output of each controller associated with one of the inputs e 1 , e 2 , or e 3  is combined with the output of the compensators associated with the other two inputs by adders  72  to produce control signals u 1 , u 2 , and u 3 . 
     Without losing generality, a set of equations that apply to an arbitrary M×M multivariable model-free adaptive control system is given in the following. If M=3, it applies to the above-stated 3×3 MFA control system. 
     For Controller C ll :                    p   j   ll          (   n   )       =       ∑     i   =   1     N              w   ij   ll          (   n   )              E   i   ll          (   n   )             ,           (   31   )                     q   j   ll          (   n   )       =       a                     p   j   ll          (   n   )         +   b       ,           (   32   )                     v   ll          (   n   )       =         K   c   ll            e   l          (   n   )         +     100              [       a          ∑     j   =   1     N              h   j   ll          (   n   )              q   j   ll          (   n   )             +   b     ]         ,           (   33   )                   Δ                     w   ij   ll          (   n   )         =       a   2          η   ll            e   l          (   n   )              E   i   ll          (   n   )              h   j          (   n   )           ,           (   34   )                   Δ                     h   j   ll          (   n   )         =     a                   η   ll            e   l          (   n   )              q   j   ll          (   n   )           ,           (   35   )                     u   l          (   n   )       =         v   ll          (   n   )       +       ∑     m   =   1     M            v     l                 m            (   n   )             ,           (   36   )                                
     where l=1, 2, . . . M, m=1, 2, . . . M; and l≠m. 
     For Compensator C lm                         C     l                 m            (   S   )       =         V     l                 m            (   S   )           V     m                 m            (   S   )                       =         K   s     l                 m            K   c     l                 m               T   c     l                 m          S     +   1         ,                 (   37   )                                
     where l=1, 2, . . . M; m=1, 2, . . . M; and l≠m. 
     In the equation, V lm (S) and V mm (S) are the Laplace transform of signals v lm (t) and v mm (t), respectively; S is the Laplace transform operator; K c   lm &gt;0 is the compensator gain; and T c   lm  is the compensator time constant. K s   lm  is the compensator sign factor, which is selected based on the acting types of the sub-processes as follows: 
       K   s   lm =1, if  G   ll  and  G   lm  have different acting types  (38a) 
     
       
           K   s   lm =−1, if  G   ll  and  G   lm  have the same acting type  (38b) 
       
     
     where l=1, 2, . . . M; m=1, 2, . . . M; and l≠m. 
     2. Prediction Method 
     As illustrated in FIG. 6, a 2×2 predictive MFA controller set  74  consists of two controllers C 11 , C 22 , and two predictors C 21 , and C 12 . The process  76  has four sub-processes G 11 , G 21 , G 12 , and G 22 . 
     The process outputs as measured variables y 1  and y 2  are used as the feedback signals of the main control loops. They are compared with the setpoints r 1  and r 2  and predictor outputs y 21  and y 12 , respectively, at adders  78  to produce errors e 1  and e 2 . The output of each controller is used as the input of the predictor that connects to the other main loop. The output of each sub-process is cross added by adders  80  to produce measured variables y 1  and y 2 . 
     In this 2×2 system, the signals shown in FIG. 6 are as follows: 
     r 1 (t), r 2 (t)—Setpoint of controllers C 11  and C 22 , respectively. 
     e 1 (t), e 2 (t)—Error between the setpoint and measured variable as modified by the predictor outputs y 21  and y 12 , respectively. 
     u 1 (t), u 2 (t)—Output of controller C 11  and C 22 , respectively. 
     y 21 (t), y 12 (t)—Output of predictors C 21 , and C 12 , respectively. 
     x 11 (t), x 21 (t), x 12 (t), x 22 (t)—Output of process G 11 , G 21 , G 12  and G 22 , respectively. 
     d 1 (t), d 2 (t)—Disturbance to y 1  and y 2 , respectively. 
     y 1 (t), y 2 (t)—Measured Variables of the 2×2 process. 
     The relationship between these signals are as follows: 
     
       
           e   1 ( t )= r   1 ( t )− y   1 ( t )− y   21 ( t )  (39a) 
       
     
     
       
           e   2 ( t )= r   2 ( t )− y   2 ( t )− y   12 ( t )  (39b) 
       
     
     
       
           y   1 ( t )= x   11 ( t )+ x   12 ( t )  (39c) 
       
     
     
       
           y   2 ( t )= x   21 ( t )+ x   22 ( t )  (39d) 
       
     
     The controllers C 11  and C 22  have the same structure as the SISO MFA controller shown in FIG.  2 . The input and output relationship in these controllers is the same as presented in Equations (18) to (27), except that the controller outputs are now u 1  and u 2  instead of v 11  and v 22 . 
     For Controller C 11                     u   1          (   n   )       =         K   c   11            e   1          (   n   )         +     100              [       a          ∑     j   =   1     N              h   j   11          (   n   )              q   j   11          (   n   )             +   b     ]         ,           (   40   )                                
     For Controller C 22                   u   2          (   n   )       =         K   c   22            e   2          (   n   )         +       100              [       a          ∑     j   =   1     N              h   j   22          (   n   )              q   j   22          (   n   )             +   b     ]     .               (   41   )                                
     The predictors C 12  and C 21  can be designed to include a first-order dynamic block by the following Laplace transfer functions: 
     For Predictor C 21                         C   21          (   S   )       =         Y   21          (   S   )           U   2          (   S   )                     =       K   s   21              K   c   21          (     1   -     1         T   c   21        S     +   1         )       .                     (   42   )                                
     For Predictor C 12                         C   12          (   S   )       =         Y   12          (   S   )           U   1          (   S   )                     =       K   s   12              K   c   12          (     1   -     1         T   c   12        S     +   1         )       .                     (   43   )                                
     In these equations, U 1 (S), U 2 (S), Y 21 (S), and Y 12 (S) are the Laplace transform of signals u 1 (t), u 2 (t), y 21 (t), and y 12 (t), respectively; S is the Laplace transform operator; K c   21 &gt;0 and K c   12 &gt;0 are the predictor gain, and T c   21  and T c   12  are the predictor time constants, for C 21  and C 12 , respectively. The predictive signals will allow the MFA controllers to make corrective adjustments based on the changes in its input to compensate for the coupling factors from the other loop. The predictive signals will quickly decay to 0 based on the predictor time constant. This design will not cause a bias at the controller input and output. 
     The predictor sign factors K s   21  and K s   12  are a set of constants relating to the acting types of the process as follows: 
     
       
           K   s   21 =1, if  G   12  is direct acting  (44a) 
       
     
     
       
           K   s   21 =−1, if  G   12  is reverse acting  (44b) 
       
     
     
       
           K   s   12 =1, if  G   21  is direct acting  (44c) 
       
     
     
       
           K   s   12 =−1, if  G   21  is reverse acting  (44d) 
       
     
     These sign factors are needed to assure that the MFA predictors produce signals in the correct direction so that the disturbances caused by the coupling factors of the multivariable process can be reduced. 
     A 3×3 multivariable model-free adaptive control system is illustrated in FIG. 7 with a signal flow chart. In the 3×3 MFA control system, the MFA controller set  82  consists of three controllers C 11 , C 22 , C 33 , and six predictors C 21 , C 31 , C 12 , C 32 , C 13 , C 23 . The process  84  has nine sub-processes G 11  through G 33 . The process outputs as measured variables y 1 , y 2 , and y 3  are used as the feedback signals of the main control loops. They are compared with the setpoints r 1 , r 2 , r 3  and related predictor outputs y 21 , y 31 , y 12 , y 32 , y 13 , and y 23 , respectively, at adders  86  to produce errors e 1 , e 2 , and e 3 . The output of each controller is used as the input of the predictor that connects to the other main loops. 
     Without losing generality, a set of equations that apply to an arbitrary M×M multivariable model-free adaptive control system is given in the following. If M=3, it applies to the above-stated 3×3 MFA control system. 
     For Controller C ll                      u   l          (   n   )       =         K   c   ll            e   l          (   n   )         +     100              [       a          ∑     j   =   1     N              h   j   ll          (   n   )              q   j   ll          (   n   )             +   b     ]         ,           (   45   )                                
     where l=1, 2, . . . M. 
     For Predictor C lm                         C     l                 m            (   S   )       =         Y     l                 m            (   S   )           U   l          (   S   )                       =       K   s     l                 m              K   c     l                 m            (     1   -     1         T   c     l                 m          S     +   1         )           ,                 (   46   )                                
     where l=1, 2, . . . M; m=1, 2, . . . M; and l≠m. 
     In the equation, Y lm (S) and U l (S) are the Laplace transform of signals y lm (t) and u l (t), respectively; S is the Laplace transform operator; K c   lm &gt;0 is the predictor gain, T c   lm  is the predictor time constant, and K s   lm  is the predictor sign factor, which is selected based on the acting types of the sub-processes as follows: 
     
       
           K   s   lm =1, if  G   ml  is direct acting  (47a) 
       
     
     
       
           K   s   lm =−1, if G ml  is reverse acting  (47b) 
       
     
     where l=1, 2, . . . M; m=1, 2, . . . M; and l≠m. 
     C. Anti-Delay Model-Free Adaptive Control 
     Model-Free Adaptive Control for processes with large time delays was described in patent application Ser. No. 08/944,450 filed on Oct. 6, 1997. As illustrated in FIG. 8, a SISO anti-delay model-free adaptive control system consists of an MFA anti-delay controller  88 , a process with large time delays  90 , and a special delay predictor  92 . The above-stated MFA controller can be used as the basic MFA controller  94  in the anti-delay MFA control system. 
     The input to controller  94  is calculated through adder  96  as 
     
       
           e ( t )= r ( t )− y   c ( t )  (48) 
       
     
     The delay predictor can be designed in a generic first-order-lag-plus-delay form represented by the following Laplace transfer function:                        Y   c          (   S   )       =       Y        (   S   )       +       Y   p          (   S   )                       =       Y        (   S   )       +         K        (     1   -            -   τ                   S         )           T                 S     +   1                       U        (   S   )             ,                 (   49   )                                
     where Y(S), Y p (S), U(S), and Y c (S) are the Laplace transform of signals y(t), y p (t), u(t) and y c (t), respectively; y p (t) is the predictive signal; y c (t) is the output of the predictor; K, T, τ are the predictor parameters. 
     The technique for setting these parameters is described in the following: 
     The process DC gain can be set as                K   =     1     K   c         ,           (   50   )                                
     where K c  is the MFA controller gain as described in Equation (3). 
     The predictor time constant can be selected as 
     
       
           T=T   c,   (51) 
       
     
     where T c  is the estimated process time constant as described in Equation (3). 
     The process delay time τ is set based on a rough estimation of process delay time provided by the user. 
     The technique for setting the anti-delay MFA predictor parameters can also be used in the multivariable version of the anti-delay MFA controller. 
     D. Feedforward Model-Free Adaptive Control 
     Feedforward is a control scheme to take advantage of forward signals. If a process has a significant potential disturbance, and the disturbance can be measured, we can use a feedforward controller to reduce the effect of the disturbance to the loop before the feedback loop takes corrective action. If a feedforward controller is used properly together with a feedback controller, it can improve the control performance significantly. 
     FIG. 9 illustrates a Feedforward-Feedback control system. The control signal u(t) is a combination of the feedback controller output u c (t) and the feedforward controller output u f (t) at adder 106. The measured variable y(t) is a combination of the output y 1 (t) of the process G p1    100  in the main loop and the output y 2 (t) of the process G p2    104  in the disturbance loop at adder  108 . 
     A traditional feedforward controller is designed based on the so called Invariant Principle. That is, with the measured disturbance signal, the feedforward controller is able to affect the loop response to the disturbance only. It does not affect the loop response to the setpoint change. 
     The control objective for the feedforward controller is to compensate for the measured disturbance. That is, it is desirable to have                    G   f          (   S   )       =         Y        (   S   )         D        (   S   )         =   0       ,           (   52   )                                
     where G f (S) is the Laplace transfer function of the feedforward loop, and Y(S) and D(S) are the Laplace transform of process variable y(t) and measured disturbance d(t), respectively. 
     Then, the feedforward controller can be designed as                    G   fc          (   S   )       =     -         G   p2          (   S   )           G   p1          (   S   )             ,           (   53   )                                
     where G fc (S) is the Laplace transfer function of the feedforward controller. 
     Feedforward compensation can be as simple as a ratio between two signals. It could also involve complicated energy or material balance calculations. In any case, the traditional feedforward controller is based on precise information of process G p1  and G p2 . If the process models are not accurate or the process dynamics change, a conventional feedforward controller may not work properly and even generate worse results than a system that does not employ a feedforward controller. 
     When a Model-Free Adaptive controller is used in the feedback loop, the feedforward controller can be less sensitive to the accuracy of the process models. An MFA controller&#39;s adaptive capability makes conventional control methods easier to implement and more effective. There are two methods to construct a feedforward/feedback model-free adaptive control system as introduced in the following. 
     1. Compensation Method 
     The control structure used in this method is the same as the feedforward/feedback control system illustrated in FIG. 9, in which a model-free adaptive controller  98  is used as the feedback controller. If the user does know G p1 (S) and G p2 (S), a feedforward controller can be designed based on Equation (53). However, in process control applications, especially in the applications where model-free adaptive control is used, the processes G p1  and G p2  are most likely unknown or have dynamics that change frequently. It is difficult under those circumstances to design a feedforward controller based on the invariant principle. Due to the adaptive capability of the model-free adaptive controller in the feedback loop, we can design a feedforward controller with a first-order dynamic block as follows.                        G   fc          (   S   )       =         Y   f          (   S   )         D        (   S   )                       =         K   sf          K   cf             T   cf                   S     +   1         ,                 (   54   )                                
     where Y f (S) and D(S) are the Laplace transform of signals y f (t) and d(t); and K cf  is the feedforward gain and T cf  is the feedforward time constant. K sf  is the feedforward sign factor, which is selected based on the acting types of the sub-processes as follows: 
     
       
           K   sf =1, if  G   p1  and  G   p2  have different acting types  (55a) 
       
     
     
       
           K   sf =−1, if  G   p1  and  G   p2  have the same acting type  (55b) 
       
     
     where we assume the acting types of G p1  and G p2  are known. Based on the methodology of model-free adaptive control, the feedforward controller only needs to produce a signal based on the measured disturbance to help the control system compensate for the disturbance. That means, no Invariant Principle based design for the feedforward controller is needed. The user can select the constants of K cf  and T cf  based on the basic understanding of the process. The system can also be fine tuned by adjusting the constants. 
     2. Prediction Method 
     FIG. 10 shows a block diagram of a model-free adaptive control system with a feedforward predictor  112 . The input to controller  110  is calculated through adder  114  as 
     
       
           e ( t )= r ( t )− y ( t )− y   f ( t ),  (56) 
       
     
     where y f (t) is the output of the feedforward predictor. 
     The idea here is to feed the forward signal directly to the input of the feedback controller to produce an e(t) signal for the controller so that the disturbance can be rejected right away. Again, this design depends on the adaptive capability of the model-free adaptive controller. If a traditional controller like PID is used, this design will not work. 
     The feedforward predictor can be designed in a simple form without knowing the quantitative information of the process. For instance, it can be designed in a generic first-order-lag form represented by the following Laplace transfer function:                        G   f          (   S   )       =         Y   f          (   S   )         D        (   S   )                       =       K   s            K   f          (     1   -     1         T   cf                   S     +   1         )           ,                 (   57   )                                
     where Y f (S) and D(S) are the Laplace transform of signals y f (t) and d(t); K f &gt;0 is the feedforward predictor gain; T cf &gt;0 is the feedforward predictor time constant; and K s  is the predictor sign factor, which is selected based on the acting types of the sub-processes as follows: 
     
       
           K   s =1, if  G   p2  is direct acting  (58a) 
       
     
     
       
           K   s =−1, if  G   p2  is reverse acting  (58b) 
       
     
     Without losing generality, FIG. 11 illustrates an M×M multivariable model-free adaptive control system with multiple feedforward predictors  122 . Each main controller  116  can have none to several feedforward predictors depending on its measurable disturbances. This design can be applied to other MFA control systems such as anti-delay, cascade, etc.