Patent Publication Number: US-2009228119-A1

Title: Control of Processes

Description:
The present invention relates to the control of processes, and in particular to iterative learning in the tuning of the control of such processes. 
     Iterative Learning Control (also called simply Iterative Control) has a thirty-year history and was introduced to produce improvements in demand signals on processes that can repeat and where the accuracy of tracking errors, i.e. the difference between the desired output signal and the actual output arising from a chosen control input, is crucial to the performance of the application. Although applicable to many processes in a variety of industries where repetition is essential to the process or possible as a mechanism for product or process tuning or improvement, a major user of the technology is in dynamic testing, and in particular the automotive sector where examples include laboratory road-load simulation and component testing. Such systems utilise hydraulic test rigs that are required to put car assemblies or components through known road loadings, i.e. specific forces and accelerations, with high accuracy. The benefits to the industry are the ability to put the components through a test of real-world circumstances to high accuracy using a laboratory facility only. Such testing offers a low cost alternative to the utilisation of test tracks and enables continuous operation that accelerates the process of fatigue assessment. An additional advantage is that sub-assembly testing is made possible and component efficacy can therefore be assessed early in the development cycle. 
     In general, the required high accuracy necessary in such test rigs cannot be achieved using conventional control methods. As a consequence, it is necessary and, indeed, industrial practice, to improve control signals and tracking accuracy during a rig commissioning phase by using iteration in the form of repetitive experiments supported by appropriate methods of analysis. Ideally, the desired accuracy ultimately is achieved and the rig can be used for the required test purposes. 
     The effectiveness of the iteration process is measured by the degree to which the output signals are the same as that required (high accuracy is usually essential), the number of iterations necessary to achieve acceptable tracking error (it is desirable that the error is reduced to an acceptable level in a small number of iterations so that the fatigue life of the specimen is not unnecessarily reduced), and the extent to which serious problems such as divergence (whereby the tracking error continually increases with each iteration) are avoided. Other sector specific needs such as the avoidance of problems with resonant payloads can also be included but, in the main, these are implied by the above general criteria. 
     Industrial practice and current products are based on what is termed the “inverse model algorithm” which uses a model of process dynamics to update inputs in each iteration using an implementation that is equivalent to a formula of the form 
     
       
      
       u 
       k+1 
       =u 
       k 
       +βG 
       −1 
       e 
       k  
      
     
     where
 
e k =r−y k  (i.e. the tracking error sequence), in which
 
r is the desired output sequence,
 
y k  is the actual output sequence;
 
u k  the control input signal sequence for the iteration k;
 
u k+1  is the control input signal sequence for the next iteration k+1;
 
u k , U k+1 , e k  and y k  are all time series, being made up of a number of elements for respective times over a single cycle.
 
β is a scalar “learning” gain that dictates the amount by which the control input sequence is updated during each iteration; and
 
G is a mathematical model of the test rig or system that describes the relationship between the control input sequence and the resultant output (symbolically y=Gu); this is obtained from a prior system identification experiment.
 
     The “inverse model algorithm” is based on a simple mathematical principle that suggests that the value β=1 should be used. This approach is known to be highly sensitive to modelling errors i.e. inaccuracies in the mathematical model G used in the iterations. As a consequence, current products use this algorithm modified by the empirical scalar gain β in order to introduce caution by limiting changes in control inputs from iteration to iteration. Although used in practice, it is known to have many problems that mean that industry is looking for improved and more reliable products. 
     The present invention provides a control system for controlling a process. The system is arranged to repeat the process over a number of cycles in a learning phase. The system may have one or more separate input channels. The aim of the repetitions is to modify the input iteratively over successive cycles (sometimes called trials, iterations or passes) so that a defined output or set of outputs of the process approaches a desired reference output to high accuracy. The level of accuracy needed is specified by the application. At each iteration, the process input is determined in a manner that is equivalent to the minimization of a cost function that measures the errors expected and the degree of control effort that will be expended. The cost function may include the tracking error between a calculated output for the current input and the reference output. 
     It may also include the change between the input of a previous iteration and the current iteration. 
     Accordingly the present invention provides a control system for tuning a process performed by an apparatus, the system being arranged to control at least one input to the process and to modify the input iteratively over successive cycles so that an output of the process approaches a reference output, and so that, at each iteration a current input u k+1  is determined from a previous input u k  using an update algorithm, or update equation, having the general form 
         u   k+1   =u   k +β k+1 ( I+G*G ) −1   G*e   k    
     where β k+1  is a tuning parameter
         G is a model of the apparatus   e k  is a measure of tracking error.       

     It will be appreciated that various modifications to this equation can be made whilst still retaining the general form. For example tuning parameters or filters can be added to it. 
     The present invention further provides a control system for tuning a process performed by an apparatus, the system being arranged to control at least one input to the process and to modify the input iteratively over successive cycles so that an output of the process approaches a reference output, and so that, at each iteration a current input u k+1  is determined from a previous input u k  using an update algorithm so as to minimize a cost function, the cost function including the tracking error between a calculated output for the current input and the reference output, and the change between the input of a previous iteration and the current iteration. 
     The present invention further provides corresponding methods of controlling a process, the method comprising control at least one input to the process and modifying the input iteratively over successive cycles so that an output of the process approaches a reference output. 
    
    
     
       Preferred embodiments of the present invention will now be described by way of example only with reference to the accompanying drawings in which: 
         FIG. 1  is a diagram showing a system and controller according to an embodiment of the invention; 
         FIG. 2  is a graph showing tracking error in the system of  FIG. 1 ; 
         FIG. 3  is a diagram showing a system and controller according to a further embodiment of the invention; and 
         FIG. 4  is a graph showing tracking error in a further system according to the invention. 
     
    
    
     Referring to  FIG. 1 , a dynamic test system according to an embodiment of the invention comprises a test apparatus including an actuator  10  and a load  12 . This system is typical of single axis test machines and the load characteristics depend on the specimen under test. The actuator  10  comprises an actuator cylinder  14  with an actuator piston  16  slidable therein. The load  12  is connected to the actuator piston  16  so that movement of the actuator piston  16  can cause movement of the load  12 . A force sensor  24  is arranged to measure the force applied to the load  12 , and a displacement transducer  26  is arranged to measure displacement of the actuating piston  16 . Hydraulic fluid is fed from a pressure source  28  via a 3-way proportional valve  30  to the actuator cylinder  14 . The proportional valve  30  (which could also be a servo-valve) is controlled, by a control signal from a controller  34 , via an amplifier  35 , so as to control the hydraulic pressure applied to the actuator  10 . 
     The controller  34  can be configured to regulate either the displacement of the load or the force transmitted by feeding back the appropriate measurement signal to the controller. The iterative control system  38  interfaces with the controller,  34  to provide a command signal so that the force or displacement in the load accurately replicates a required sequence. For the example considered here, displacement control is required and the load  12  is an additional cylinder subjected to viscous resistance forces. The iterative control system  38  is in the form of a PC running suitable software, and includes a display which can provide an output showing measured parameters such as the measured displacements from each cycle and an indication of the tracking error from the cycle. It also includes a user input that enables a user to control or vary parameters of the iterative control process as will be described in more detail below. 
     The iterative control system  38  is arranged to provide an input sequence for the controller  34  so that the actuator  10  produces an output in the load  12  that is as close as possible to a regular cyclical reference displacement. In this case the cyclical displacement is defined in the time domain as a sequence of displacements at respective times in the cycle. These displacements are defined as a one-dimensional matrix, or vector, r having one element for each of the sequence of reference displacements that define a single cycle. 
     The iterative control system  38  also has stored in it a linear mathematical model G of the load, amplifier, valve and controller. This model is a mathematical definition of the outputs that will be produced, in this case displacements of the load piston, for any given inputs, in this case time series signals to the controller  34 . This model enables an initial set of input signals u(1) that should, according to the model, be input to the controller  34 , in order to produce the reference output displacement r. This can be done by any methodology preferred by the user but, in particular, could be done using the inverse model algorithm described above. However, particularly as the valve  30  and load are non-linear systems, the model cannot be exactly accurate, and the controller is therefore arranged to measure the time series of output displacements y during each cycle, compare them to the reference displacements r, determine the tracking error e k , i.e. the difference between the measured output displacements y and the reference displacements r, and modify the input signals for the next cycle so that the output displacements tend to converge towards the reference displacements. 
     Once the first input signal u(1) has been input to the system, then, for all subsequent iterations, an algorithm is used to modify the input signals at each cycle or iteration. The algorithm is arranged to minimize a cost function J that includes a sum of two functions, one of which is the normalized tracking error, as predicted using the system model G and the other of which is the normalized change in input signal u from the previous iteration u k  to the current iteration u k+1 . J is given by: 
         J ( u   k+1 )=∥ e   k+1 ∥ 2   +∥u   k+1   −u   k ∥ 2   (1) 
     where ∥f∥ denotes a quadratic norm on the time series f, and the e k+1  term is a sum of squares error of the time series. 
     Minimizing this function, as a first optimization stage, gives 
         u   k+1   =u   k +( I+G*G ) −1   G*e   k   (2) 
     where G* is the adjoint operator of the model G. The actual mathematical form of G* is dependent on the choice of norms for input and outputs, and I is the unit matrix. 
     Equation (2) is then used to generate the input u k+1  for each cycle in the iterative learning process from the inputs u k  for the previous cycle, the measured tracking error e k  from the previous cycle, and the model G. Use of equation (2) gives a value of U k+1  that minimizes the cost function J. 
     Caution is introduced into the methodology by the introduction of a learning gain parameter β k+1  that can be updated for each iteration, either by the iterative control system  38  on the basis of a suitable algorithm, or by a user who can input a suitable value manually. This process is represented by the control update formula 
         u   k+1   =u   k +β k+1 ( I+G*G ) −1   G*e   k   (3) 
     A particular choice of norm 
         J ( u   k+1 )=∥ e   k+1   ∥Q   2   +∥u   k+1   −u   k   ∥R   2    
     is equivalent to adding tuning parameters to the approach which gives an update equation 
         u   k+1   =u   k +β k+1 ( I+R   k+1   −1   G*Q   k+1   G ) −1   R   k+1   −1   G*Q   k+1   e   k   (4) 
     where R k+1  and Q k+1  are the tuning parameters, in the form of matrices, that can be defined by the user to increase or decrease the convergence speed of the algorithm or to replace the sum of squared errors by a weighted sum of squared errors. As can be seen this update equation is of the same general form as equation (3) but with the addition of the tuning parameters. 
     The choice of β k+1  in equation (4) can be based on experience of plant operation guided by plant operators. Alternatively it can be deduced from mathematical optimisation methods. 
     In order to determine a value for β using optimisation a second function for minimization is defined as 
         J (β k+1 )=∥ e   k+1 ∥ 2   +w   k+1 β 2   k+1   ,w   k+1 &gt;0  (5) 
     where w k+1  is a tuning parameter chosen by the user to reflect the degree of caution that is desired in the implementation on iteration k+1, and can be updated at each iteration as required. 
     This function (5) is minimized in another stage of optimization, for the chosen value of w k+1 , to determine the optimum value of β k+1  to be used in equation (4). 
     The next input signal u k+1  is therefore calculated from equation (4) above and input to the system, and the iteration repeated. At each iteration, the performance is measured, by monitoring the tracking error e k+1  and when it reaches a satisfactory level the inputs are fixed at the current values, and no further iterations are necessary. 
       FIG. 2  shows experimental results achieved using the algorithm described above in the system of  FIG. 1 .  FIG. 2  is a graph showing normalized error for each iteration. As can be seen, compared to the constant error of a non-iterative control strategy, shown by line C, the inverse model strategy, shown by line D, produces an error that decreases quite rapidly up to the fourth iteration, then more gently to the sixth iteration, and then actually increases again. This illustrates that in this example the inverse model strategy is divergent, which is clearly undesirable. In comparison, the strategy described above, shown by line E, produces an error that decreases more rapidly over the first two iterations, and thereafter decreases steadily but more slowly for all of the twelve iterations shown. 
     In a modification to the method described above, the optimization process for finding the gain β can be omitted, and the gain parameter set to a constant by the user. 
     Referring to  FIG. 3 , a system according to a further embodiment of the invention is a multi-axis system having a plurality of actuators, each of which is controlled by a respective input signal. In this example the system is a vehicle road test simulator in which there are four actuators  102 ,  104 ,  104 ,  108  each arranged to produce a repeating cycle of input displacements to a respective wheel of a vehicle. The actuators  102 ,  104 ,  104 ,  108  are hydraulic and controlled via a hydraulic valve block  110  by a controller  112 . The controller  112  provides four separate control signals to the valve block on four channels  113  to control the hydraulic pressures to the four actuators  102 ,  104 ,  104 ,  108 . Displacement sensors  114 ,  116 ,  118 ,  120  are arranged to measure the displacements of the four actuators  102 ,  104 ,  106 ,  108  and provide signals to the controller  112  indicating those displacements. 
     The control of this system is similar to the first embodiment. However, it will be appreciated that the input signal matrix u is now a stacked “super-vector” having one time-series for each input signal or channel. The matrix not only includes the signal inputs for the different times in the cycle, as in the first embodiment, but the signal inputs for all actuators. 
     The algorithm for modifying the input signals at each iteration therefore includes a further tuning parameter, and takes the form 
         u   k+1   =u   k +β k+1 ( I+R   k+1   −1   G*Q   k+1   G ) −1   R   k+1   −1   G*Q   k+1   e   k   (6) 
     where Q k+1  and R k+1  are tuning parameters, again in the form of matrices, that can weight the different channels so that the signals for the different actuators are modified at different rates. These again control the convergence rate, but in the multi-channel system they can be used to place different emphasis or priority on the convergence rates of the different channels. These can be selected initially based on the specified channel accuracies and if necessary modified as the iterations proceed in order to accelerate convergence in problematic channels. The modification can be carried out automatically by the iterative control system, or manually by a user inputting the required modification between iterations. 
     In a further embodiment the update equation is modified further to include one or more filters. These can be selected and modified to filter the inputs u so as to reduce the sensitivity of the algorithm to, for example, noise or modelling errors. Generally it will be known if the model is not accurate at certain frequencies, and so the response of the update algorithm at those frequencies can be reduced. Similarly if the system suffers noise at known frequencies, the response of the update algorithm can be reduced at those frequencies also. The update equation in this embodiment takes the form 
         u   k+1   =u   k +β k+1   F   1,k+1 ( I+R   k+1   −1   G*Q   k+1   G ) −1   R   k+1   −1   G*Q   k+1   F   2,k+1   e   k   (7) 
     where F 1,k+1  and F 2,k+1  are filters, which may be constant, but can be updated at each iteration if this is required. Since the update equation is used after one iteration has been completed and before the next one is started, all of the measurement data from the previous iteration k is available when the update equation is used, and the filters may therefore be causal or anti-causal filters. In general, two filters will be desirable, one arranged to filter out noise and the other to filter out modelling errors, to allow independent compensation of noise and modelling error effects. However, in some cases it is appropriate to include just one of the filters F 1,k+1  or F 2,k+1 . 
     In a modification to the embodiment just described, either one or both of the filters is modified in a pseudo-random manner for each iteration. This is in addition to any systematic modification to the filters between iterations. The pseudo random variation can be derived, for example, by randomly changing a filter parameter. Alternatively a random function of frequency can be generated by any suitable method and combined with the filter function of the previous iteration to produce the modified filter for the current iteration. It has been found that such pseudo-random variation in the filters can reduce the final tracking error, towards which the system converges. This final tracking error can be non-zero in practice due to the effect of modelling errors. 
     The random variation must be sufficient to generate a wide range of changes and can be realized either through the use of computer random number generators or cycling through a large enough choice of filters or filter parameters. Filters can be changed every iteration or on iterations selected by the operator. 
     This random or pseudo-random variation in the filter is applicable to other iterative learning processes and is not limited to use with the methods using an update equation of the general form of equation (3). For example it can be used with the inverse model algorithm described above 
     In some systems it is more appropriate for the input signal matrix u to be defined, rather than in the time domain as a set of signal values at respective times during the cycle, as a discrete Fourier transform comprising a set of coefficients defining gain and phase shifts at discrete frequency components of the signal. In this case the system model G and the update equation are transformed so as to operate in the frequency domain also. 
     A further embodiment of this invention that has been tested is a five-axis vehicle body component test rig. This system was controlled using the algorithm (6) above and the results are shown in  FIG. 4 , which shows the normalized tracking error from all five actuators over a series of iterations. Curve A represents the results using an industry standard approach, and curve B represents the results using the present invention. As can be seen the convergence rate using this embodiment of the invention is substantially greater than that for the industry standard. 
     Another embodiment of the invention that has been tested is a six axis earthquake simulation table. Here the problem is complicated both by the requirement to replicate acceleration profiles (that represent a true seismic event) yet to control with displacement commands and by the presence of a resonant payload. Again the convergence rate and accuracy achieved was shown to be superior to the industry standard methodology. This is an example of an application where, because the final process is to simulate a single earthquake, the final process is not repeating within a single test, but needs to repeat accurately from one test to the next. 
     It will be appreciated that the embodiments described above have a number of advantageous properties. Because they are based on a sequence of optimisation problems and include algorithms that have clearly defined mathematical properties and avoid the serious sensitivity problems of the “inverse model” approach. In particular they automatically contain frequency filtering elements that avoid large update gain in the region of the plant zeros. Hence they are much less sensitive to structural resonance in the payload than the inverse model approach. The use of optimisation methodologies ensures that they also possess the ability to continually produce improvements from iteration to iteration, i.e. they systematically reduce the norm of the tracking error and hence generally avoid divergence that can arise with the inverse model approach. The “tuning parameters” enable the user to place different emphasis on errors in different output channels, increase or decrease the “aggression” of the algorithm, and increase or decrease the sensitivity or robustness of the algorithm to model uncertainties. More generally, the tuning parameters enable the user to intervene to correct any deficiencies in algorithm performance due to unforeseen factors. Consequently, the embodiments described provide an environment where both experienced users and users with limited knowledge of the technical detail can effectively use and tune the methodology to suit their needs. 
     The commercial benefits arising from the invention can be listed as follows: increased accuracy; increased convergence rates; reduced occurrence of divergence; reduction in the number of required iterations; reduced costs to the user; increased throughput of the testing facility; and increased reliability. 
     The invention has application in a number of industries where repetition is an essential or desired ingredient of test or manufacturing processes, including automotive manufacturing and test, aerospace manufacturing and test, seismic testing, manufacturing automation, chemical batch processing, and medical applications involving “batch” treatment or muscle/nerve rehabilitation through repetitive exercise.