WO1996005541A1 - Cascade tuning controller and method of use therefor - Google Patents

Cascade tuning controller and method of use therefor Download PDF

Info

Publication number
WO1996005541A1
WO1996005541A1 PCT/US1995/008652 US9508652W WO9605541A1 WO 1996005541 A1 WO1996005541 A1 WO 1996005541A1 US 9508652 W US9508652 W US 9508652W WO 9605541 A1 WO9605541 A1 WO 9605541A1
Authority
WO
WIPO (PCT)
Prior art keywords
control
controller
output
tuning
error signal
Prior art date
Application number
PCT/US1995/008652
Other languages
French (fr)
Inventor
Dan Teng
Shay-Ping T. Wang
Original Assignee
Motorola Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Motorola Inc. filed Critical Motorola Inc.
Priority to AU29682/95A priority Critical patent/AU2968295A/en
Publication of WO1996005541A1 publication Critical patent/WO1996005541A1/en

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0205Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system
    • G05B13/021Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system in which a variable is automatically adjusted to optimise the performance
    • G05B13/0235Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system in which a variable is automatically adjusted to optimise the performance using steepest descent or ascent method

Definitions

  • the present invention is related to the following pending applications which are assigned to the same assignee as the present invention:
  • This invention relates generally to automatic control systems and, in particular, to control systems which are capable of automatically tuning their parameters to optimized performance .
  • FIG. 1 A configuration for a general control system is shown in FIG. 1.
  • the system to be controlled 10 is connected in a feedback configuration with controller 12 which attempts to drive the system output 18 to the value of reference input 14.
  • System output 18 is fed back via feedback path 16 where it is subtracted from reference input 14 to form an error signal 22.
  • This error signal 22 is processed by controller 12 to generate a control output 20 which is in turn fed to the input of system 10. While there are a whole host of different control configurations and structures in use today, one with ordinary skill-in- the-art will realize that FIG. 1 represents the basic building block for these controllers .
  • the example of a particular controller implementation is a so-called PID or proportional, integral and derivative controller.
  • This controller is so named since its control output is derived from a weighted sum of the input, the integral of the input, and the derivative of the input.
  • This control strategy is widely used in industry possibly due to the fact that it is available as an off-the-shelf unit .
  • the PID controller suffers from two major disadvantages: 1) it is difficult to determine (or tune) the control coefficients of a controller for a particular application; and 2) the simplicity of the control law makes this controller unsuitable for highly complex, high-order or highly nonlinear systems.
  • Bayesian global optimization methodology which requires large amounts of computation to converge upon a set of control parameters. Further, this auto-tuning controller is limited by the fundamental limitations of the underlying PID control structure and again is not suitable for many highly complex or nonlinear systems.
  • An additional class of control implementation is the so-called self-tuning adaptive controller. In this strategy, the system to be controlled is extensively modeled and the model is continuously updated mathematically based upon the performance of the system. While providing suitable performance for some applications, adaptive controllers require an extremely complicated control algorithm and extensive computation in their implementation. Further, a very accurate model of the system is required for the adaptive controller to effectively operate. The performance of the controller rapidly degrades when error between the model and the actual system is above nominal levels.
  • a further example of control implementation is the fuzzy logic controller.
  • the fuzzy logic controller makes control decisions based upon a series of fuzzy logic rules which transform the control input into a control output via a nonlinear transfer characteristic. While the performance of the fuzzy logic controller is robust, in that it is capable of maintaining an adequate control even in the presence of substantial error between the system model and the actual system, the parameters of the fuzzy logic controller are difficult to tune given their nonintuitive relationship to the system output. Further, experience has shown that it is difficult to implement fuzzy logic controller designs for large and complicated systems.
  • Another class of control implementations is the polynomial controller. In the polynomial controller, the control output is a polynomial function of the control inpu . A method for tuning a polynomial controller was presented by Stuckman and Laursen, "A Method of Control System Design Using Global Search", IEEE Transactions on Automatic Controls. Vol. AC-34, No. 1, January 1989. This method uses a complicated
  • Bayesian global optimization methodology which requires a large amount of computation. Further, this method is only operable for low-dimensional systems and has not been shown to function for polynomial controllers with more than ten terms.
  • a controller which is relatively robust, in that it is Capable for providing adequate control when significant error is present between the model and the actual system. Further, there is also a significant need for a control system in which the parameters can be tuned automatically. Further, a significant need exists for a controller design which is capable of handling high- dimensional, highly complex, and nonlinear systems. In addition, a significant need exists for a method of tuning the parameters of the controller which provides for a short product development cycle, in that the tuning can be performed in a relatively simple and efficient manner by one who is not necessarily a control expert .
  • a further advantage of the present invention is that a controller is provided which can operate on high-dimensional, highly complex or highly nonlinear systems .
  • An additional advantage of the present invention is the relatively simple and efficient manner in which the control parameters of a controller can be tuned.
  • a method for tuning the control coefficients of a controller Values of the control coefficients are calculated from control transfer characteristic data by fitting the polynomial function of the controller to control transfer characteristic data. The control coefficients are multiplied by a scaling value. An error signal is then derived based on the difference between the system output and the desired output. The scaling value is then tuned and the control coefficients are tuned using a descent- based optimization method in order to minimize the output error signal.
  • a method for tuning a controller includes the step of calculating a value of each of the plurality of control coefficients by fitting the polynomial function of the controller to a plurality of transfer characteristic data.
  • the control coefficients are multiplied by a first scaling value and the control input is multiplied by a second scaling value.
  • An output error signal is computed, overtime, based on the difference between the system output and a desired output.
  • the first and second scaling values are tuned using a descent-based optimization method to minimize the output error signal.
  • the control coefficients are tuned using a descent-based optimization method to further minimize the output error signal.
  • a method for tuning a controller includes the step of multiplying each of the plurality of control inputs by a respective one of a like plurality of initial scaling values.
  • An output error signal is computed, over time, based on the difference between the system output and the desired output.
  • the plurality of first scaling values are tuned using an optimization method to minimize the output error signal.
  • the control coefficients are also tuned using a descent-based optimization method to further minimize the output error signal.
  • a controller for controlling a system to a desired output.
  • This controller includes calculating means for calculating values of the control coefficients from control transfer characteristic data by fitting the polynomial control function to control transfer characteristic data.
  • First multiplying means are provided for multiplying the values of the control coefficients by an initial first scaling value.
  • Error computing means computes, over time, an output error signal based upon the difference between the system output and a desired output. Adjusting means in the controller are used to tune the first scaling value and the control coefficients using a descent-based optimization method to minimize the output error signal .
  • FIG. 1 shows a prior art control system.
  • FIG. 2 shows a block diagram representation of one embodiment of the present invention.
  • FIG. 3 shows a block diagram representation of the polynomial function controller 50 used in conjunction with one embodiment of the present invention.
  • FIG. 4 shows a block diagram representation of a polynomial function controller used with another embodiment of the present invention.
  • FIG. 5 shows a block diagram representation of a polynomial function controller used in conjunction with an additional embodiment of the present invention.
  • FIG. 6 shows a block diagram representation of a polynomial function controller used in conjunction with a further embodiment of the present invention.
  • FIG. 7 shows a schematic representation of the polynomial controller used in one embodiment of the present invention.
  • FIG. 8 shows a flow chart representation of one embodiment of the method of the present invention.
  • FIG. 9 shows sample control transfer characteristic data used to derive the initial control coefficient values in one embodiment of the present invention.
  • FIG. 10 shows a flow chart representation of a method of determining initial control coefficients used in one embodiment of the present invention.
  • FIG. 11 shows a block diagram representation of the controller 50 used in one embodiment of the present invention.
  • FIG. 12 shows the variation of sample control transfer characteristic curves based upon varying values of the scaling value H.
  • FIG. 13 shows a samp_le accumulation of error between the desired and control system outputs used in one embodiment of the present invention.
  • FIG. 14 shows a flow chart representation of an alternative embodiment of the method of the present invention.
  • FIG. 15 presents a flow chart representation of an additional embodiment of the method of the present invention.
  • FIG. 16 shows a block diagram representation of an optional structure for controller 50 used in conjunction with one embodiment of the present invention .
  • FIG. 17 presents the variation of a sample control transfer characteristic curve based upon the variation of the input scaling value K.
  • FIG. 18 presents a flow chart representation of yet another embodiment of the method of the present invention.
  • FIG. 19 shows a block diagram representation of an alternative embodiment of the present invention.
  • FIG. 20 shows an alternative embodiment of the method of the present invention.
  • FIG. 21 presents a flow chart representation of yet another embodiment of the method of the present invention.
  • FIG. 22 shows a block diagram representation of a controller used with a further embodiment of the present invention.
  • FIG. 23 shows a block diagram representation of a polynomial controller used in conjunction with an additional embodiment of the present invention.
  • FIG. 24 shows a block diagram representation of the polynomial controller used in conjunction with a further embodiment of the present invention.
  • FIG. 25 shows a block diagram representation of the controller of one embodiment of the present invention.
  • controller and tuner of the present invention may be implemented in hardware or software or any combination thereof.
  • FIG. 2 shows a block diagram representation of one embodiment of the present invention.
  • a tuner for use in cooperation with a control system is presented.
  • the system to be controlled 30 has a system input 40 and a system output 38.
  • Controller 32 has an output which drives system input 40.
  • the input to controller 32 is represented as being derived from the system output 38; however, one with ordinary skill-in- the-art will recognize that the input to controller 32, in a general sense, could be derived from the system output, the desired output, one or more measured or estimated states of the system 30, or any combination thereof.
  • the output of controller 32 need not directly feed to system input 40. Rather, the output of controller 32 need only affect system input 40 in some fashion.
  • Controller 32 operates based upon a series of control parameters 44, such that the variation of control parameters 44 in turn varies the input/output relationship of controller 32 and, hence, varies the characteristics of system output 38.
  • the process of implementing a particular controller 32 for a given application thus includes the determination of the proper values for control parameters 44.
  • Tuner 34 is detachably connected to controller 32 via line 42 so as to adjust parameters 44. Further, tuner 28 has access to system output 38 via line 46 and desired output 36.
  • tuner 28 of the present invention compares system output 38 to desired output 36 in order to determine the proper value for control parameters 44 of controller 32. Once the proper values for control parameters 44 have been determined, tuner 28 can be detached and controller 32 can be left to control the system 30 autonomously. While this detachable arrangement for tuner 28 is preferred, other arrangements are possible, such as where tuner 28 is permanently connected to controller 32 to continuously tune the control parameters 44 of controller 32 or to operate only over selected intervals of time to periodically update control parameters 44.
  • FIG. 3 shows a block diagram representation of the polynomial function controller 50 used in conjunction with one embodiment of the present invention.
  • the output y of polynomial function controller 50 in response to an input x is given by the following general equation:
  • FIG. 4 shows a block diagram representation of a polynomial function controller used with another embodiment of the present invention.
  • a controller 50 has a scalar input and a vector output comprising a plurality of individual scalar outputs yi, Y 2 and y n .
  • FIG. 5 shows a block diagram representation of a polynomial function controller used in conjunction with an additional embodiment of the present invention.
  • Controller 50 has a vector input comprising a plurality of scalar inputs xi, X 2 and x n and a scalar output.
  • FIG. 6 shows a block diagram representation of a polynomial function controller used in conjunction with a further embodiment of the present invention. Controller 50 has a vector input xi, X 2 and x n and a vector output yi, y 2 and ym- It should be noted that the polynomial controller of the present invention could be implemented by a structure described in the Related Invention referenced above .
  • FIG. 7 shows a schematic representation of the polynomial controller used in one embodiment of the present invention.
  • the output of each input node 76, 78, . . . 80 in the input layer is distributed at least one processing element of a hidden layer (of which only processing elements 82, 84, 86 are shown.
  • Each processing element applies a gating function to each of the control inputs to produce a corresponding gated input . Any given processing element may apply a different gating function to each different control input it receives.
  • processing element 82 applies a gating function gn to the control input it receives from input node 76; it applies a gating function g2i to the control input it receives from input node 78; and so forth.
  • the gated inputs are multiplied together by a multiplier in the processing element to form a product, which is then multiplied by a predetermined weight value to produce the control output .
  • processing element 82 which happens to be responsible for generating the w 0 term or the first control coefficient, multiplies its gated inputs together to form a product (which happens to be one because in this case the gating functions 911 r 921, • ⁇ ⁇ gnl are all 0, which is multiplied by a weight w 0 to produce a corresponding output w Q .
  • Processing element 84 which happens to be responsible for generating the wi xi term of the control output, multiplies its gated inputs together to form a product (which happens to be xi because in this case the gated functions are all 0 except for the gating function that is applied to the xi output of the input node 76, which is multiplied by a weight wi to produce a corresponding output xi wi .
  • processing element 86 produces an output w n -l xi to the power of gin 2 to the power of g2n • • . n to the power of g n N• Tne outputs of processing elements 82, 84, . . . 86 are summed together by a suitable summing means or function, such as summer 88, in an output layer to produce the output y of the polynomial controller as follows :
  • m is an integer which represents the number of terms in the polynomial.
  • FIG. 8 shows a flow chart representation of one embodiment of the method of the present invention.
  • the controller is tuned by tuning a single parameter, a scaling value which multiplies the control coefficients followed by tuning the control parameters themselves.
  • the value of each of the control coefficients is calculated by fitting the polynomial control function to control transfer characteristic data.
  • the control coefficients are multiplied by a scaling value.
  • an output error signal is computed based upon the difference between the system output and the desired output.
  • the scaling value is tuned using a descent- based optimization method. This optimization method is optionally an iterative approach which requires repeated computation of the output error signal in box 62 and repeated tuning of the scaling value in box 64.
  • control coefficients are likewise tuned using a descent-based optimization method as shown in box 66.
  • This also can be_ an iterative approach which requires repeated computation of the output error signal and repeated tuning of the control coefficients.
  • This is an extremely efficient method of tuning the controller.
  • the first stage of tuning ? the tuning of a scaling value, is a relatively low-dimensional optimization which can converge relatively easily.
  • This first stage of tuning supplies an excellent initial condition for the second stage of tuning — the tuning of the controller coefficients.
  • this two-stage cascade approach to the tuning of the controller can yield more consistent results in fewer number of iterations than prior art tuning methods. Further, the provision of an excellent starting point by the first stage of tuning allows the second stage to operate on high-dimensional, highly complex control functions.
  • each of the control coefficients is calculated, in a preferred embodiment, based upon a plurality of control transfer characteristic data which characterizes the input/output relationship of the controller.
  • This control transfer characteristic data could be derived from discrete samples of a continuous input/output control characteristic derived from any of a number of standard control methodologies. For instance, the system to be controlled could be modeled, and a proposed control input/output transfer characteristic could be developed based upon the development of a series of fuzzy logic rules which generate a fuzzy logic controller. Further, other conventional control techniques such as classical control, modern control, optimal control could be used to derive the desired input/output characteristic and thus the control transfer characteristic data required by the method used in a preferred embodiment.
  • This control transfer characteristic data 68 is used to derive the initial value of the control coefficients used in the present invention by calculating the best polynomial fit 67 to the data 68.
  • FIG. 10 shows a flow chart representa ion of a method of determining initial control coefficients used in one embodiment of the present invention.
  • the fit of the polynomial function to the control transfer characteristic data is performed in accordance with the flow chart presented in FIG. 10.
  • the control transfer characteristic data are provided.
  • the number of data is compared with the number of control coefficients .
  • decision box 71 if the number of data equal the number of control coefficients, the procedure goes to box 72 which indicates that a matrix inversion technique is used to solve for the initial value of each coefficient .
  • the procedure goes to box 73, which indicates that a least squares estimation technique is used to solve for the initial value of each coefficient. While a preferred embodiment is described herein, one with ordinary skill-in-the-art will recognize that other suitable estimation techniques, for example, extended least squares, pseudo inverse, Kalman filtering techniques, maximum likelihood techniques, Bayesian estimation, polynomial splines, and alike, could likewise be used to fit the control polynomial to the control transfer characteristic data.
  • suitable estimation techniques for example, extended least squares, pseudo inverse, Kalman filtering techniques, maximum likelihood techniques, Bayesian estimation, polynomial splines, and alike, could likewise be used to fit the control polynomial to the control transfer characteristic data.
  • FIG. 11 shows a block diagram representation of the controller 50 used in one embodiment of the present invention.
  • Controller 50 includes polynomial controller 250 which generates an output which is a polynomial function of its input x. Further, multiplier 252 multiplies the output of polynomial controller 250 by a scaling value h.
  • the output y of controller 50 can be expressed in the following form:
  • FIG. 11 is merely one structure for accomplishing the step of multiplying the control coefficients by a scaling value recited in box 61 of FIG. 8.
  • FIG. 12 shows the variation of sample control transfer characteristic curves based upon varying values of the scaling value h.
  • Control transfer characteristic curve 260 illustrates an example relationship between the input x and output y of a non ⁇ linear controller such as controller 50. If h is equal to 1, then control transfer characteristic curve 260 corresponds to the transfer characteristic of polynomial controller 250 as illustrated in- FIG. 11. If scaling value h is decreased, the control transfer characteristic curve is proportionally reduced as shown by sample curve 262 in FIG. 12. Alternatively, if scaling value h is increased, the control transfer characteristic curve is scaled upward, as shown by sample transfer characteristic 264. It should be noted that tuning the control coefficients in this manner can be implemented using a relatively simple optimization method. The low- dimensional characteristics of this optimization, make it simpler for the optimization method to converge quickly.
  • FIG. 11 While the embodiment of FIG. 11 is described in terms of a scalar control input x, one with ordinary skill in the art will recognize that the same method and system would apply for a controller 50 with a vector input comprising a series of individual inputs. In this embodiment of the present invention, the output y of the controller 50 would be given by Equation (6) .
  • Multiplying scaling value h into the sum yields their relationship presented in Equation (7) .
  • the computation of the output error signal described in box 62 can be accomplished in several ways.
  • the absolute difference between the system output and the desired output is accumulated over time to generate an objective function which rates the performance of a given set of control coefficients.
  • other techniques for deriving this objective function could be used. For instance, sum squared error could be used to replace the absolute error in this calculation.
  • features of the output response could be extracted such as rise time, steady state error, percent overshoot, etc., could be used in some fashion to derive a rating or score for the performance of a given set of control coefficients and thus be used to generate an output error signal.
  • FIG. 13 shows a sample accumulation of error between the desired and control system outputs used in one embodiment of the present invention.
  • Actual system output 96 is compared with desired output 94 at discrete increments of time. These absolute errors are accumulated over a sample response to generate the output error signal.
  • optimization method presented in box 64 can also be accomplished in several ways. Descent-based local optimization methods such as gradient methods, conjugate gradient methods, downhill simplex methods, variable metric methods, direction set methods, and the like, could all be used to converge upon a scaling value and/or a set of control coefficient values which minimize the output error signal. Further, a global descent-based global optimization method such as simulated annealing could also be used.
  • the initial value for the scaling value in the various embodiments of the present invention can be any arbitrary value which allows rapid convergence of the optimization technique.
  • the various initial scaling values discussed herein is chosen to be 1.
  • FIG. 14 shows a flow chart representation of an alternative embodiment of the method of the present invention.
  • the value of each of the control coefficients is calculated by fitting the polynomial control function to control transfer characteristic data as illustrated in box 102.
  • the control coefficients are multiplied by a scaling value as shown in box 103.
  • the output error signal is then computed as illustrated in box 104 and the scaling value is tuned using a descent-based optimization method as illustrated in box 106. If the error signal is less than the error threshold, as governed by decision box 107, the method ends. If the error signal is greater than an error threshold, the control coefficients are also tuned using a descent-based optimization method as shown in box 108.
  • the error signal is again compared with an error threshold, as shown in decision box 110. If the error is less than the threshold, the tuning ends . If, however, the error is not less than the threshold, the method proceeds to box 116 where the order of the control polynomial is increased.
  • Increasing the order of the control polynomial adds at least one additional term to the polynomial and therefore adds at least one additional control coefficient .
  • the method proceeds to box 118 where the new coefficients are initialized to zero.
  • FIG. 15 presents a flow chart representation of an additional embodiment of the method of the present invention.
  • one or more scaling values for the control input are the parameters which are tuned followed by a tuning of each of the control parameters.
  • the control input is multiplied by a scaling value.
  • an output error signal is computed based upon the difference between the system output and the desired output.
  • the scaling values are tuned using an optimization technique.
  • This optimization technique is optionally an iterative approach which requires repeated computation of the output error signal in box 272 and repeated tuning of the scaling value in box 274.
  • the control coefficients are then tuned, also using a descent-based optimization method as shown in box 276.
  • this optimization could be an iterative approach.
  • FIG. 16 shows a block diagram representation of an optional structure for controller 50 used in conjunction with one embodiment of the present invention.
  • Controller 50 includes non-linear controller 280 which is responsive to the input x multiplied by a scaling value k in multiplier 282. Therefore, the output y of controller 50 embodied by the structure of FIG. 16 is given by the following relationship:
  • FIG. 17 presents the variation of a sample control transfer characteristic curve based upon the variation of the input scaling value k.
  • a nominal transfer characteristic 290 which represents the transfer characteristic of non-linear controller 280 of FIG. 16
  • transfer curve 290 is compressed in the x direction such as transfer characteristic 292.
  • the transfer characteristic 290 is stretched in the x direction, in a manner similar to transfer characteristic 294.
  • FIG. 16 while presented in terms of a scalar input x, could easily apply to a non-linear controller with a vector input representing a plurality of individual inputs.
  • Equation (9) An expression for the output y of controller 50 of one such embodiment of the present invention is presented in Equation (9) .
  • one scaling value k is used to scale each of the control inputs xi, x2, • • • Xn •
  • the output y is given by Equation (10) .
  • individual scaling values ki are used for each of the individual inputs xi . Therefore input xi has a corresponding scaling value ki, X2 has a corresponding scaling value k2 etc.
  • FIG. 18 presents a flow chart representation of yet another embodiment of the method of the present invention.
  • the values of the control coefficients are calculated by fitting the polynomial control function to control transfer characteristic data as shown in box 302.
  • the control input is multiplied by a scaling value as illustrated in box 304.
  • An output error signal is then computed as illustrated in box 306, and the scaling value is tuned using a descent-based optimization method as shown in box 308. If the error signal is less than the error threshold, as governed by decision box 309, the method ends. If the error signal is greater than the error threshold, the control coefficients are then tuned, as illustrated in box 310, using a descent-based optimization method.
  • the method ends as governed by decision box 314. Otherwise, the order of the polynomial is increased as shown in box 316, and the new coefficients are initialized to zero as shown in box 318. Tuning of the control coefficients then proceeds until the error signal is less than a threshold, with the order of the polynomial being repetitively increased if the error signal still exceeds the.error threshold.
  • FIG. 19 shows a block diagram representation of an alternative embodiment of the present invention.
  • controller 50 includes non-linear controller 330.
  • The. input x to non-linear- controller 330 is scaled by scaling value k as shown in box 332.
  • the output of non-linear controller 330, and thus the control coefficients of non-linear controller 330 are scaled by scaling value h as shown in box 334. Therefore, the output y of controller 50 as shown in FIG. 19 is given by Equation (11) .
  • y hw 0 + hwi (kx) + hw2(kx) 2 + . . . Equation (11)
  • FIG. 20 shows an alternative embodiment of the method of the present invention.
  • the value of each of the control coefficients is calculated.
  • the control coefficients are multiplied by a first scaling value.
  • the control input is multiplied by a second scaling value.
  • an output error signal is computed based upon the difference between the system output and the desired output.
  • the first and second scaling values are tuned using a descent-based optimization method.
  • the control coefficients are tuned using a descent-based optimization method, these optimization methods are optionally iterative approaches
  • FIG. 21 presents a flow chart representation of yet another embodiment of the method of the present invention.
  • the values of the control coefficients are calculated by fitting the polynomial control function to control transfer characteristic data as shown in box 152.
  • the control coefficients are multiplied by a first scaling value as shown in box 154.
  • the control input is multiplied by a second scaling value as shown in box 158.
  • An output error signal is then computed as illustrated in box 160 and the first and second scaling values are tuned using a descent-based optimization method as shown in box 162. If the error signal is less than the error threshold, as governed by decision box 163, the method ends. Otherwise, the control coefficients are tuned using a descent-based optimization method.
  • the tuning ends as governed by decision box 166.
  • the order of the polynomial is increased as shown in box 172, and the new coefficients are initialized to zero, as shown in box 174. Tuning of the control coefficients then proceeds until the error signal is less than a threshold, with the order of the polynomial being repetitively increased if the error signal still exceeds the error threshold.
  • FIG. 22 shows a block diagram representation of a controller used with a further embodiment of the present invention.
  • a controller 50 has a scalar output and a vector input comprising a plurality of individual sealer inputs xi, X2 . . . x n .
  • Each of the individual inputs xi has a corresponding scaling value kj .
  • the output of controller 50 can be expressed by Equation (12) .
  • FIG. 23 shows a block diagram representation of a polynomial controller used in conjunction with an additional embodiment of the present invention.
  • Controller 50 comprises a plurality of individual controllers, each with a respective output yj .
  • Each output is a function of the coefficients of the corresponding individual controller, as well as the corresponding input scaling constant kj and output scaling constant hj as presented in Equation (13) .
  • Equation (14) the output yj of an individual controller could be represented by Equation (14) .
  • FIG. 24 shows a block diagram representation of the polynomial controller used in conjunction with a further embodiment of the present invention.
  • polynomial controller 50 consists of a series of individual controllers generating a like plurality of outputs yj . Further, each individual controller is responsive to a subset of a plurality of control inputs xi and arbitrary output yj of the corresponding individual controller is presented in Equation ( 15) .
  • FIG. 25 shows a block diagram representation of the controller of one embodiment of the present invention.
  • the tuner 190 of the present invention is shown in conjunction with controller 212 whose operation is based upon a polynomial function having a plurality of control coefficients.
  • Tuner 190 includes calculating means 216 for calculating a value of each of the plurality of control coefficients by fitting the control polynomial to a plurality of control transfer characteristic data.
  • Tuner 190 also includes error computing means 218 for computing over time an output error signal based upon the difference between the system output and a desired output .
  • First multiplying means 213 multiplies the coefficients of the controller by a first scaling value.
  • Second multiplying means 211 multiplies the input or inputs to the controller by one or more second scaling values.
  • tuner 190 includes adjusting means 214 for tuning the value of the first and second scaling values using a descent-based optimization method to minimize the output error signal.
  • Comparison means 217 compares the output error signal to an error threshold. If the error is greater than the threshold after a number of iterations of the optimization method, the order of the polynomial of controller 212 is increased by order increasing means 215.
  • tuner 190 of the present invention in a preferred embodiment would be implemented using a software program operating on a processor.
  • the functions described herein could further be implemented by a hardware device such as an ASIC or programmable logic array which performs the same functions that would be performed by the software program.
  • the approach of tuning a scaling value prior to tuning the control coefficients used in the various embodiments of the present invention help the optimization method converge.
  • the tuning of the one or more scaling values is a relatively low-dimensional search which can provide a good starting point for the optimization method used to tune the control coefficients. This increases the probability that the tuning of the control coefficients will yield a global optimum or at least a good local solution if a local optimization method is used. Further, the use of these techniques can speed the rate of convergence on an effective set of control parameters.

Abstract

A cascade tuning controller (32) receives input from a tuner (34) and system (30). The control inputs and control coefficients of the controller (32) are multiplied by scaling values. The scaling values are first tuned and the control coefficients are then tuned using a descent-based optimization method, by tuner (34), in order to optimize system performance.

Description

CASCADE TUNING CONTROLLER AND METHOD OF USE THEREFOR
Related Inventions
The present invention is related to the following pending applications which are assigned to the same assignee as the present invention:
"Neural Networ and Method of Using Same" having Serial No. 08/076,601 filed on June 14, 1993, "Auto- Tuning Controller and Method of Use Therefor", Serial No. filed on June 30, 1994, and "Auto- Scaling Controller and Method of Use Therefor", Serial
No. filed on July 28, 1994.
The subject matter of the above identified related applications is hereby incorporated by reference into the disclosure of this invention.
Field of the Invention
This invention relates generally to automatic control systems and, in particular, to control systems which are capable of automatically tuning their parameters to optimized performance . Background of the Invention
Control systems are widely used today for machines, devices and industrial and economic processes. A configuration for a general control system is shown in FIG. 1. The system to be controlled 10 is connected in a feedback configuration with controller 12 which attempts to drive the system output 18 to the value of reference input 14. System output 18 is fed back via feedback path 16 where it is subtracted from reference input 14 to form an error signal 22. This error signal 22 is processed by controller 12 to generate a control output 20 which is in turn fed to the input of system 10. While there are a whole host of different control configurations and structures in use today, one with ordinary skill-in- the-art will realize that FIG. 1 represents the basic building block for these controllers .
The example of a particular controller implementation is a so-called PID or proportional, integral and derivative controller. This controller is so named since its control output is derived from a weighted sum of the input, the integral of the input, and the derivative of the input. This control strategy is widely used in industry possibly due to the fact that it is available as an off-the-shelf unit . However, the PID controller suffers from two major disadvantages: 1) it is difficult to determine (or tune) the control coefficients of a controller for a particular application; and 2) the simplicity of the control law makes this controller unsuitable for highly complex, high-order or highly nonlinear systems.
One method for tuning the parameters of a PID controller was developed by Ziegler and Nichols. The Ziegler/Nichols method, as known to those skilled in the art, is intended for manual tuning of the control parameters, and thus requires intervention by a skilled operator. A second method of tuning a PID controller was presented by Stuckman et al. in "System Optimization Using Experimental Evaluation of Design Performance", Engineering Optimization Vol. 16, 1990, pp. 275-289, and "Iterative Global Design of PID Controllers for Systems Without Models", Proceedings of the 17th IASTED International Symposium — Simulation and Modelling. June 1989, pp. 320-321. This method, while operating automatically, uses a complicated
Bayesian global optimization methodology which requires large amounts of computation to converge upon a set of control parameters. Further, this auto-tuning controller is limited by the fundamental limitations of the underlying PID control structure and again is not suitable for many highly complex or nonlinear systems. An additional class of control implementation is the so-called self-tuning adaptive controller. In this strategy, the system to be controlled is extensively modeled and the model is continuously updated mathematically based upon the performance of the system. While providing suitable performance for some applications, adaptive controllers require an extremely complicated control algorithm and extensive computation in their implementation. Further, a very accurate model of the system is required for the adaptive controller to effectively operate. The performance of the controller rapidly degrades when error between the model and the actual system is above nominal levels.
A further example of control implementation is the fuzzy logic controller. The fuzzy logic controller makes control decisions based upon a series of fuzzy logic rules which transform the control input into a control output via a nonlinear transfer characteristic. While the performance of the fuzzy logic controller is robust, in that it is capable of maintaining an adequate control even in the presence of substantial error between the system model and the actual system, the parameters of the fuzzy logic controller are difficult to tune given their nonintuitive relationship to the system output. Further, experience has shown that it is difficult to implement fuzzy logic controller designs for large and complicated systems. Another class of control implementations is the polynomial controller. In the polynomial controller, the control output is a polynomial function of the control inpu . A method for tuning a polynomial controller was presented by Stuckman and Laursen, "A Method of Control System Design Using Global Search", IEEE Transactions on Automatic Controls. Vol. AC-34, No. 1, January 1989. This method uses a complicated
Bayesian global optimization methodology which requires a large amount of computation. Further, this method is only operable for low-dimensional systems and has not been shown to function for polynomial controllers with more than ten terms.
Therefore, there is a significant need for a controller which is relatively robust, in that it is Capable for providing adequate control when significant error is present between the model and the actual system. Further, there is also a significant need for a control system in which the parameters can be tuned automatically. Further, a significant need exists for a controller design which is capable of handling high- dimensional, highly complex, and nonlinear systems. In addition, a significant need exists for a method of tuning the parameters of the controller which provides for a short product development cycle, in that the tuning can be performed in a relatively simple and efficient manner by one who is not necessarily a control expert .
Summary of the Invention
It is thus one advantage of the present invention that the parameters of a control system can be tuned automatically.
A further advantage of the present invention is that a controller is provided which can operate on high-dimensional, highly complex or highly nonlinear systems . An additional advantage of the present invention is the relatively simple and efficient manner in which the control parameters of a controller can be tuned.
In one embodiment of the present invention there is provided a method for tuning the control coefficients of a controller. Values of the control coefficients are calculated from control transfer characteristic data by fitting the polynomial function of the controller to control transfer characteristic data. The control coefficients are multiplied by a scaling value. An error signal is then derived based on the difference between the system output and the desired output. The scaling value is then tuned and the control coefficients are tuned using a descent- based optimization method in order to minimize the output error signal. In an additional embodiment of the present invention there is provided a method for tuning a controller. The method includes the step of calculating a value of each of the plurality of control coefficients by fitting the polynomial function of the controller to a plurality of transfer characteristic data. The control coefficients are multiplied by a first scaling value and the control input is multiplied by a second scaling value. An output error signal is computed, overtime, based on the difference between the system output and a desired output. The first and second scaling values are tuned using a descent-based optimization method to minimize the output error signal. Likewise, the control coefficients are tuned using a descent-based optimization method to further minimize the output error signal.
In another embodiment of the present invention there is also provided a method for tuning a controller. The method includes the step of multiplying each of the plurality of control inputs by a respective one of a like plurality of initial scaling values. An output error signal is computed, over time, based on the difference between the system output and the desired output. The plurality of first scaling values are tuned using an optimization method to minimize the output error signal. The control coefficients are also tuned using a descent-based optimization method to further minimize the output error signal.
In a further embodiment of the present invention there is provided a controller for controlling a system to a desired output. This controller includes calculating means for calculating values of the control coefficients from control transfer characteristic data by fitting the polynomial control function to control transfer characteristic data. First multiplying means are provided for multiplying the values of the control coefficients by an initial first scaling value. Error computing means computes, over time, an output error signal based upon the difference between the system output and a desired output. Adjusting means in the controller are used to tune the first scaling value and the control coefficients using a descent-based optimization method to minimize the output error signal . Brief Description of the Drawings
The invention is pointed out with particularity in the appended claims. However, other features in the invention will become more apparent and the invention will be best understood by referring to the following detailed description in conjunction with the accompanying drawings in which
FIG. 1 shows a prior art control system. FIG. 2 shows a block diagram representation of one embodiment of the present invention.
FIG. 3 shows a block diagram representation of the polynomial function controller 50 used in conjunction with one embodiment of the present invention. FIG. 4 shows a block diagram representation of a polynomial function controller used with another embodiment of the present invention.
FIG. 5 shows a block diagram representation of a polynomial function controller used in conjunction with an additional embodiment of the present invention.
FIG. 6 shows a block diagram representation of a polynomial function controller used in conjunction with a further embodiment of the present invention.
FIG. 7 shows a schematic representation of the polynomial controller used in one embodiment of the present invention. FIG. 8 shows a flow chart representation of one embodiment of the method of the present invention.
FIG. 9 shows sample control transfer characteristic data used to derive the initial control coefficient values in one embodiment of the present invention.
FIG. 10 shows a flow chart representation of a method of determining initial control coefficients used in one embodiment of the present invention. FIG. 11 shows a block diagram representation of the controller 50 used in one embodiment of the present invention.
FIG. 12 shows the variation of sample control transfer characteristic curves based upon varying values of the scaling value H.
FIG. 13 shows a samp_le accumulation of error between the desired and control system outputs used in one embodiment of the present invention.
FIG. 14 shows a flow chart representation of an alternative embodiment of the method of the present invention.
FIG. 15 presents a flow chart representation of an additional embodiment of the method of the present invention. FIG. 16 shows a block diagram representation of an optional structure for controller 50 used in conjunction with one embodiment of the present invention .
FIG. 17 presents the variation of a sample control transfer characteristic curve based upon the variation of the input scaling value K.
FIG. 18 presents a flow chart representation of yet another embodiment of the method of the present invention.
FIG. 19 shows a block diagram representation of an alternative embodiment of the present invention.
FIG. 20 shows an alternative embodiment of the method of the present invention.
FIG. 21 presents a flow chart representation of yet another embodiment of the method of the present invention.
FIG. 22 shows a block diagram representation of a controller used with a further embodiment of the present invention.
FIG. 23 shows a block diagram representation of a polynomial controller used in conjunction with an additional embodiment of the present invention.
FIG. 24 shows a block diagram representation of the polynomial controller used in conjunction with a further embodiment of the present invention. FIG. 25 shows a block diagram representation of the controller of one embodiment of the present invention.
Detailed Description of a Preferred Embodiment
It will be understood by one of ordinary skill in the art that the controller and tuner of the present invention may be implemented in hardware or software or any combination thereof.
FIG. 2 shows a block diagram representation of one embodiment of the present invention. In FIG. 2 a tuner for use in cooperation with a control system is presented. The system to be controlled 30 has a system input 40 and a system output 38. Controller 32 has an output which drives system input 40. The input to controller 32 is represented as being derived from the system output 38; however, one with ordinary skill-in- the-art will recognize that the input to controller 32, in a general sense, could be derived from the system output, the desired output, one or more measured or estimated states of the system 30, or any combination thereof. One with ordinary skill-in-the-art will also recognize that the output of controller 32 need not directly feed to system input 40. Rather, the output of controller 32 need only affect system input 40 in some fashion.
Controller 32 operates based upon a series of control parameters 44, such that the variation of control parameters 44 in turn varies the input/output relationship of controller 32 and, hence, varies the characteristics of system output 38. The process of implementing a particular controller 32 for a given application thus includes the determination of the proper values for control parameters 44.
These control parameter values are selected, in one embodiment of the present invention, by tuner 34. Tuner 34 is detachably connected to controller 32 via line 42 so as to adjust parameters 44. Further, tuner 28 has access to system output 38 via line 46 and desired output 36.
In operation, tuner 28 of the present invention compares system output 38 to desired output 36 in order to determine the proper value for control parameters 44 of controller 32. Once the proper values for control parameters 44 have been determined, tuner 28 can be detached and controller 32 can be left to control the system 30 autonomously. While this detachable arrangement for tuner 28 is preferred, other arrangements are possible, such as where tuner 28 is permanently connected to controller 32 to continuously tune the control parameters 44 of controller 32 or to operate only over selected intervals of time to periodically update control parameters 44.
FIG. 3 shows a block diagram representation of the polynomial function controller 50 used in conjunction with one embodiment of the present invention. The output y of polynomial function controller 50 in response to an input x is given by the following general equation:
W}X W2X' Equation (1
where wi represents the ith control coefficient. Thus the output of polynomial function controller 50 is expressed in terms of a plurality of control coefficients and a corresponding plurality of polynomial terms of arbitrary order. For instance, an arbitrary fourth order controller would be expressed as :
y = wD + wix + W2χ + W3χ3 + w4 Equation f2)
It should be noted that the input to polynomial function controller 50 could be a vector quantity rather than the scalar quantity represented in FIG. 3 and further the output of function controller 50 could also be a vector quantity rather than the scalar quantity shown in FIG. 3. This yields the alternative structures for polynomial function controller 50 shown in FIGS. 4 through 6. FIG. 4 shows a block diagram representation of a polynomial function controller used with another embodiment of the present invention. A controller 50 has a scalar input and a vector output comprising a plurality of individual scalar outputs yi, Y2 and yn. FIG. 5 shows a block diagram representation of a polynomial function controller used in conjunction with an additional embodiment of the present invention. Controller 50 has a vector input comprising a plurality of scalar inputs xi, X2 and xn and a scalar output. FIG. 6 shows a block diagram representation of a polynomial function controller used in conjunction with a further embodiment of the present invention. Controller 50 has a vector input xi, X2 and xn and a vector output yi, y2 and ym- It should be noted that the polynomial controller of the present invention could be implemented by a structure described in the Related Invention referenced above .
FIG. 7 shows a schematic representation of the polynomial controller used in one embodiment of the present invention. A plurality of control inputs, x]_, X2, . • • , n are fed to input nodes 76, 78, . . . 80 of an input layer. The output of each input node 76, 78, . . . 80 in the input layer is distributed at least one processing element of a hidden layer (of which only processing elements 82, 84, 86 are shown. Each processing element applies a gating function to each of the control inputs to produce a corresponding gated input . Any given processing element may apply a different gating function to each different control input it receives. For example, processing element 82 applies a gating function gn to the control input it receives from input node 76; it applies a gating function g2i to the control input it receives from input node 78; and so forth. The gated inputs are multiplied together by a multiplier in the processing element to form a product, which is then multiplied by a predetermined weight value to produce the control output .
For example, in FIG. 7 processing element 82, which happens to be responsible for generating the w0 term or the first control coefficient, multiplies its gated inputs together to form a product (which happens to be one because in this case the gating functions 911 r 921, • ■ ■ gnl are all 0, which is multiplied by a weight w0 to produce a corresponding output wQ.
Processing element 84 which happens to be responsible for generating the wi xi term of the control output, multiplies its gated inputs together to form a product (which happens to be xi because in this case the gated functions are all 0 except for the gating function that is applied to the xi output of the input node 76, which is multiplied by a weight wi to produce a corresponding output xi wi . In like fashion, processing element 86 produces an output wn-l xi to the power of gin 2 to the power of g2n • • . n to the power of gnN• Tne outputs of processing elements 82, 84, . . . 86 are summed together by a suitable summing means or function, such as summer 88, in an output layer to produce the output y of the polynomial controller as follows :
m y = Σ w _ι xi^li x2α2i . . . xn αni Equation (3) i=l
where m is an integer which represents the number of terms in the polynomial.
FIG. 8 shows a flow chart representation of one embodiment of the method of the present invention. In this embodiment the controller is tuned by tuning a single parameter, a scaling value which multiplies the control coefficients followed by tuning the control parameters themselves. First, regarding box 60, the value of each of the control coefficients is calculated by fitting the polynomial control function to control transfer characteristic data. Further, regarding Box 61, the control coefficients are multiplied by a scaling value. Next, regarding box 62, an output error signal is computed based upon the difference between the system output and the desired output. Regarding box 64, the scaling value is tuned using a descent- based optimization method. This optimization method is optionally an iterative approach which requires repeated computation of the output error signal in box 62 and repeated tuning of the scaling value in box 64. Further, the control coefficients are likewise tuned using a descent-based optimization method as shown in box 66. This also can be_ an iterative approach which requires repeated computation of the output error signal and repeated tuning of the control coefficients. This is an extremely efficient method of tuning the controller. The first stage of tuning?- the tuning of a scaling value, is a relatively low-dimensional optimization which can converge relatively easily. This first stage of tuning, in turn, supplies an excellent initial condition for the second stage of tuning — the tuning of the controller coefficients. Overall, this two-stage cascade approach to the tuning of the controller can yield more consistent results in fewer number of iterations than prior art tuning methods. Further, the provision of an excellent starting point by the first stage of tuning allows the second stage to operate on high-dimensional, highly complex control functions.
More particularly, the value of each of the control coefficients is calculated, in a preferred embodiment, based upon a plurality of control transfer characteristic data which characterizes the input/output relationship of the controller. This control transfer characteristic data could be derived from discrete samples of a continuous input/output control characteristic derived from any of a number of standard control methodologies. For instance, the system to be controlled could be modeled, and a proposed control input/output transfer characteristic could be developed based upon the development of a series of fuzzy logic rules which generate a fuzzy logic controller. Further, other conventional control techniques such as classical control, modern control, optimal control could be used to derive the desired input/output characteristic and thus the control transfer characteristic data required by the method used in a preferred embodiment. FIG. 9 shows sample control transfer characteristic data used to derive the initial control coefficient values in one embodiment of the present invention. This control transfer characteristic data 68 is used to derive the initial value of the control coefficients used in the present invention by calculating the best polynomial fit 67 to the data 68.
FIG. 10 shows a flow chart representa ion of a method of determining initial control coefficients used in one embodiment of the present invention. In a preferred embodiment, the fit of the polynomial function to the control transfer characteristic data is performed in accordance with the flow chart presented in FIG. 10. First, regarding box 69, the control transfer characteristic data are provided. Next, regarding box 70, the number of data is compared with the number of control coefficients . Regarding decision box 71, if the number of data equal the number of control coefficients, the procedure goes to box 72 which indicates that a matrix inversion technique is used to solve for the initial value of each coefficient . If, on the other hand, the number of data is not equal to the number of control coefficients, the procedure goes to box 73, which indicates that a least squares estimation technique is used to solve for the initial value of each coefficient. While a preferred embodiment is described herein, one with ordinary skill-in-the-art will recognize that other suitable estimation techniques, for example, extended least squares, pseudo inverse, Kalman filtering techniques, maximum likelihood techniques, Bayesian estimation, polynomial splines, and alike, could likewise be used to fit the control polynomial to the control transfer characteristic data.
FIG. 11 shows a block diagram representation of the controller 50 used in one embodiment of the present invention. Controller 50 includes polynomial controller 250 which generates an output which is a polynomial function of its input x. Further, multiplier 252 multiplies the output of polynomial controller 250 by a scaling value h. The output y of controller 50 can be expressed in the following form:
y = h (w0 + wix + W2χ + . . .) Equation (4)
where w0, wi and w2, etc. are the coefficients of polynomial controller 250. Multiplying the scaling value h through the polynomial expansion of Equation (4) yields the expression below:
y = hw0 + hw_x + hw2χ + . . . Equation (5) thus, multiplication by scaling value H on the output of polynomial controller 250 provides a multiplication of each of the individual control coefficients by the scaling value h. It should be noted, that the embodiment of FIG. 11 is merely one structure for accomplishing the step of multiplying the control coefficients by a scaling value recited in box 61 of FIG. 8. One with ordinary skill in the art will recognize that other structures, including the multiplication of each of the individual control coefficients by h, could likewise be accomplished. FIG. 12 shows the variation of sample control transfer characteristic curves based upon varying values of the scaling value h. Control transfer characteristic curve 260 illustrates an example relationship between the input x and output y of a non¬ linear controller such as controller 50. If h is equal to 1, then control transfer characteristic curve 260 corresponds to the transfer characteristic of polynomial controller 250 as illustrated in- FIG. 11. If scaling value h is decreased, the control transfer characteristic curve is proportionally reduced as shown by sample curve 262 in FIG. 12. Alternatively, if scaling value h is increased, the control transfer characteristic curve is scaled upward, as shown by sample transfer characteristic 264. It should be noted that tuning the control coefficients in this manner can be implemented using a relatively simple optimization method. The low- dimensional characteristics of this optimization, make it simpler for the optimization method to converge quickly.
While the embodiment of FIG. 11 is described in terms of a scalar control input x, one with ordinary skill in the art will recognize that the same method and system would apply for a controller 50 with a vector input comprising a series of individual inputs. In this embodiment of the present invention, the output y of the controller 50 would be given by Equation (6) .
m y = h ∑ _ι xigli 292i . . . xngni Equation (6) i=l
Multiplying scaling value h into the sum yields their relationship presented in Equation (7) .
m y = ∑ hwi_ι xι.gli x2<32i . . . xn σni Equation (7) i=l Thus, scaling value h multiplies each of the control coefficients of polynomial controller 250.
Referring back to FIG. 8, the computation of the output error signal described in box 62 can be accomplished in several ways. In a preferred embodiment, the absolute difference between the system output and the desired output is accumulated over time to generate an objective function which rates the performance of a given set of control coefficients. On the other hand, other techniques for deriving this objective function could be used. For instance, sum squared error could be used to replace the absolute error in this calculation. Further, features of the output response could be extracted such as rise time, steady state error, percent overshoot, etc., could be used in some fashion to derive a rating or score for the performance of a given set of control coefficients and thus be used to generate an output error signal. FIG. 13 shows a sample accumulation of error between the desired and control system outputs used in one embodiment of the present invention. Actual system output 96 is compared with desired output 94 at discrete increments of time. These absolute errors are accumulated over a sample response to generate the output error signal. Referring back to FIG. 8, optimization method presented in box 64 can also be accomplished in several ways. Descent-based local optimization methods such as gradient methods, conjugate gradient methods, downhill simplex methods, variable metric methods, direction set methods, and the like, could all be used to converge upon a scaling value and/or a set of control coefficient values which minimize the output error signal. Further, a global descent-based global optimization method such as simulated annealing could also be used.
The initial value for the scaling value in the various embodiments of the present invention, can be any arbitrary value which allows rapid convergence of the optimization technique. In a preference embodiment the various initial scaling values discussed herein is chosen to be 1.
FIG. 14 shows a flow chart representation of an alternative embodiment of the method of the present invention. First, the value of each of the control coefficients is calculated by fitting the polynomial control function to control transfer characteristic data as illustrated in box 102. The control coefficients are multiplied by a scaling value as shown in box 103. The output error signal is then computed as illustrated in box 104 and the scaling value is tuned using a descent-based optimization method as illustrated in box 106. If the error signal is less than the error threshold, as governed by decision box 107, the method ends. If the error signal is greater than an error threshold, the control coefficients are also tuned using a descent-based optimization method as shown in box 108. Next, the error signal is again compared with an error threshold, as shown in decision box 110. If the error is less than the threshold, the tuning ends . If, however, the error is not less than the threshold, the method proceeds to box 116 where the order of the control polynomial is increased.
Increasing the order of the control polynomial adds at least one additional term to the polynomial and therefore adds at least one additional control coefficient . In this embodiment of the present invention, the method proceeds to box 118 where the new coefficients are initialized to zero.
The method then proceeds to tune the control coefficients using the descent-based optimization method in hopes of achieving an output error signal which is less than the error threshold. It should be noted that the order of the control polynomial will be repetitively increased until the output error signal finally falls below the error threshold. FIG. 15 presents a flow chart representation of an additional embodiment of the method of the present invention. In this embodiment, one or more scaling values for the control input are the parameters which are tuned followed by a tuning of each of the control parameters. First, regarding box 270, the control input is multiplied by a scaling value. Next, regarding box 272, an output error signal is computed based upon the difference between the system output and the desired output. Regarding box 274, the scaling values are tuned using an optimization technique. This optimization technique is optionally an iterative approach which requires repeated computation of the output error signal in box 272 and repeated tuning of the scaling value in box 274. The control coefficients are then tuned, also using a descent-based optimization method as shown in box 276. Likewise, this optimization could be an iterative approach.
FIG. 16 shows a block diagram representation of an optional structure for controller 50 used in conjunction with one embodiment of the present invention. Controller 50 includes non-linear controller 280 which is responsive to the input x multiplied by a scaling value k in multiplier 282. Therefore, the output y of controller 50 embodied by the structure of FIG. 16 is given by the following relationship:
y = (w0 + wi (kx) + W2(kx)2 + . . .) Equation (8) .
FIG. 17 presents the variation of a sample control transfer characteristic curve based upon the variation of the input scaling value k. Given a nominal transfer characteristic 290, which represents the transfer characteristic of non-linear controller 280 of FIG. 16, if scaling value k is greater than 1, transfer curve 290 is compressed in the x direction such as transfer characteristic 292. Likewise, if the value of k is less than 1, the transfer characteristic 290 is stretched in the x direction, in a manner similar to transfer characteristic 294.
It should be noted that the embodiment of FIG. 16, while presented in terms of a scalar input x, could easily apply to a non-linear controller with a vector input representing a plurality of individual inputs.
An expression for the output y of controller 50 of one such embodiment of the present invention is presented in Equation (9) . m
= Σ wi- 1 ( kxι ) gl i (kx2 ) 92 i (kxn) gni Equat ion ( 9) i = l
In this embodiment, one scaling value k is used to scale each of the control inputs xi, x2, • • • Xn • In an alternative embodiment of controller 50, the output y is given by Equation (10) .
m y = Σ wi_ι ( χ ι)gli (k2X2)σ2i. (knxn)gni Equation (10) i=l
In this embodiment, individual scaling values ki are used for each of the individual inputs xi . Therefore input xi has a corresponding scaling value ki, X2 has a corresponding scaling value k2 etc.
FIG. 18 presents a flow chart representation of yet another embodiment of the method of the present invention. First, the values of the control coefficients are calculated by fitting the polynomial control function to control transfer characteristic data as shown in box 302. The control input is multiplied by a scaling value as illustrated in box 304. An output error signal is then computed as illustrated in box 306, and the scaling value is tuned using a descent-based optimization method as shown in box 308. If the error signal is less than the error threshold, as governed by decision box 309, the method ends. If the error signal is greater than the error threshold, the control coefficients are then tuned, as illustrated in box 310, using a descent-based optimization method.
If the error signal is below the threshold, the method ends as governed by decision box 314. Otherwise, the order of the polynomial is increased as shown in box 316, and the new coefficients are initialized to zero as shown in box 318. Tuning of the control coefficients then proceeds until the error signal is less than a threshold, with the order of the polynomial being repetitively increased if the error signal still exceeds the.error threshold.
FIG. 19 shows a block diagram representation of an alternative embodiment of the present invention. In this embodiment, controller 50 includes non-linear controller 330. The. input x to non-linear- controller 330 is scaled by scaling value k as shown in box 332. Further, the output of non-linear controller 330, and thus the control coefficients of non-linear controller 330 are scaled by scaling value h as shown in box 334. Therefore, the output y of controller 50 as shown in FIG. 19 is given by Equation (11) . y = hw0 + hwi (kx) + hw2(kx)2 + . . . Equation (11)
FIG. 20 shows an alternative embodiment of the method of the present invention. First, regarding box 340, the value of each of the control coefficients is calculated. Next, regarding box 342, the control coefficients are multiplied by a first scaling value. Regarding box 344, the control input is multiplied by a second scaling value. Further, regarding box 346, an output error signal is computed based upon the difference between the system output and the desired output. Regarding box 348, the first and second scaling values are tuned using a descent-based optimization method. Next, regarding box 350, the control coefficients are tuned using a descent-based optimization method, these optimization methods are optionally iterative approaches
FIG. 21 presents a flow chart representation of yet another embodiment of the method of the present invention. First, the values of the control coefficients are calculated by fitting the polynomial control function to control transfer characteristic data as shown in box 152. The control coefficients are multiplied by a first scaling value as shown in box 154. The control input is multiplied by a second scaling value as shown in box 158. An output error signal is then computed as illustrated in box 160 and the first and second scaling values are tuned using a descent-based optimization method as shown in box 162. If the error signal is less than the error threshold, as governed by decision box 163, the method ends. Otherwise, the control coefficients are tuned using a descent-based optimization method.
If the error signal falls below the threshold, the tuning ends as governed by decision box 166.
Otherwise, the order of the polynomial is increased as shown in box 172, and the new coefficients are initialized to zero, as shown in box 174. Tuning of the control coefficients then proceeds until the error signal is less than a threshold, with the order of the polynomial being repetitively increased if the error signal still exceeds the error threshold.
While the various embodiments of the present invention have been presented in terms of a controller 50 which has a scalar output and a scalar input, it should be noted that these embodiments could likewise be applied to other, more general, controller configurations. In these more complex configurations, the introduction of additional scaling values only serves to provide additional parameters to be tuned using the descent-based optimization technique. FIG. 22 shows a block diagram representation of a controller used with a further embodiment of the present invention. A controller 50 has a scalar output and a vector input comprising a plurality of individual sealer inputs xi, X2 . . . xn. Each of the individual inputs xi has a corresponding scaling value kj . In general, the output of controller 50 can be expressed by Equation (12) .
m y = ∑ hwi_ι (kιxι)gl (k2x2) 2i ... (knxn) gni Equation (12) i=l
FIG. 23 shows a block diagram representation of a polynomial controller used in conjunction with an additional embodiment of the present invention. Controller 50 comprises a plurality of individual controllers, each with a respective output yj . Each output is a function of the coefficients of the corresponding individual controller, as well as the corresponding input scaling constant kj and output scaling constant hj as presented in Equation (13) .
Similarly the output yj of an individual controller could be represented by Equation (14) . m y j = ∑ hj wi_ι(kjx)gj Equation (13; i=l
yj = hjw0 + hj(kjx) + hj(kjx)2 + ... hj(kjx)m_1
Equation (14)
FIG. 24 shows a block diagram representation of the polynomial controller used in conjunction with a further embodiment of the present invention. In this embodiment, polynomial controller 50 consists of a series of individual controllers generating a like plurality of outputs yj . Further, each individual controller is responsive to a subset of a plurality of control inputs xi and arbitrary output yj of the corresponding individual controller is presented in Equation ( 15) .
m yj = Σ hjwi_ι(kjixι)gli (kj2x2) 92i ■ ■ -(kjnxn) 9ni i=1 Equation {15)
FIG. 25 shows a block diagram representation of the controller of one embodiment of the present invention. In FIG. 25 the tuner 190 of the present invention is shown in conjunction with controller 212 whose operation is based upon a polynomial function having a plurality of control coefficients. Tuner 190 includes calculating means 216 for calculating a value of each of the plurality of control coefficients by fitting the control polynomial to a plurality of control transfer characteristic data. Tuner 190 also includes error computing means 218 for computing over time an output error signal based upon the difference between the system output and a desired output . First multiplying means 213 multiplies the coefficients of the controller by a first scaling value. Second multiplying means 211 multiplies the input or inputs to the controller by one or more second scaling values. Further, tuner 190 includes adjusting means 214 for tuning the value of the first and second scaling values using a descent-based optimization method to minimize the output error signal. Comparison means 217 compares the output error signal to an error threshold. If the error is greater than the threshold after a number of iterations of the optimization method, the order of the polynomial of controller 212 is increased by order increasing means 215.
It should be understood that tuner 190 of the present invention in a preferred embodiment would be implemented using a software program operating on a processor. However, one with ordinary skill in the art will recognize that the functions described herein could further be implemented by a hardware device such as an ASIC or programmable logic array which performs the same functions that would be performed by the software program.
The approach of tuning a scaling value prior to tuning the control coefficients used in the various embodiments of the present invention help the optimization method converge. The tuning of the one or more scaling values is a relatively low-dimensional search which can provide a good starting point for the optimization method used to tune the control coefficients. This increases the probability that the tuning of the control coefficients will yield a global optimum or at least a good local solution if a local optimization method is used. Further, the use of these techniques can speed the rate of convergence on an effective set of control parameters.
It will be apparent to those skilled in the art that the disclosed invention may be modified in numerous ways and may assume many embodiments other than performed form specifically set out and described above. Accordingly, it is intended by the pending claims to cover all modifications of the invention which fall within the true spirit and scope of the invention. What is claimed is

Claims

Claims
1. In a controller, having a control input, for controlling a system to a desired output, the controlled system having a time dependent system output, the controller operation based on a polynomial function having an order, a plurality of control coefficients and a corresponding plurality of polynomial terms, a method for tuning the controller, the method comprising: a) calculating a value for each of the plurality of control coefficients by fitting the polynomial function to a plurality of control transfer characteristic data; b) multiplying the values of the control coefficients by an initial first scaling value; c) computing, over time, an output error signal based on a difference between the time dependent system output and the desired output; d) tuning the first scaling value usi-ng a descent-based optimization method to minimize the output error signal; and e) tuning the control coefficients using a descent-based optimization method to minimize the output error signal.
2. The method of claim 1 further comprising the steps of : comparing the output error signal to an error threshold; increasing the order of the polynomial function if the output error signal exceeds an error threshold by adding at least one new polynomial term and a corresponding at least one new control coefficient; and calculating a new value for the plurality of control coefficients and the at least one new control coefficient .
3. The method of claim 2 further comprising the step of repeating steps b) - e) for the new value for the plurality of control coefficients .
4. The method of claim 1 wherein the system input is a vector quantity comprising a plurality of individual system inputs.
5. The method of claim 1 wherein the control input is a vector quantity comprising a plurality of individual control inputs.
6. The method of claim 1 further comprising the step of generating the control transfer characteristic data from a continuous nonlinear control transfer characteristic.
7. The method of claim 1 wherein the step of calculating the value for each of the plurality of control coefficients includes a least squares method.
8. The method of claim 1 wherein the step of calculating value for each of the plurality of control coefficients includes using a matrix inversion technique.
9. The method of claim 1 further comprising the step of: scaling the control input by multiplying the control input by an initial second scaling value; wherein the steps of tuning include cooperatively tuning the first scaling value and the second scaling value using the descent-based optimization method to minimize the output error signal .
10. In a controller for controlling a system to a desired output, the controlled system having a time dependent system output, the controller operation based on a polynomial function having an order, a plurality of control coefficients, and a like plurality of polynomial terms, a improvement for tuning the control coefficients, the improvement comprising: calculating means, operatively coupled to the controller, for calculating a value for each of the plurality of control coefficients by fitting the polynomial function to a plurality of control transfer characteristic data; first multiplying means operatively coupled to the calculating means for multiplying the values of the control coefficients by an initial first scaling value; error computing means for computing, over time, an output error signal based on a difference between the time-dependent system output and the desired output; and adjusting means, operatively coupled to the computing means and to the controller, for tuning the first scaling value and the control coefficients using a descent-based optimization method to minimize the output error signal.
PCT/US1995/008652 1994-08-10 1995-07-11 Cascade tuning controller and method of use therefor WO1996005541A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU29682/95A AU2968295A (en) 1994-08-10 1995-07-11 Cascade tuning controller and method of use therefor

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US28837994A 1994-08-10 1994-08-10
US08/288,379 1994-08-10

Publications (1)

Publication Number Publication Date
WO1996005541A1 true WO1996005541A1 (en) 1996-02-22

Family

ID=23106853

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1995/008652 WO1996005541A1 (en) 1994-08-10 1995-07-11 Cascade tuning controller and method of use therefor

Country Status (3)

Country Link
US (1) US5805447A (en)
AU (1) AU2968295A (en)
WO (1) WO1996005541A1 (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5991525A (en) * 1997-08-22 1999-11-23 Voyan Technology Method for real-time nonlinear system state estimation and control
US6041172A (en) * 1997-11-26 2000-03-21 Voyan Technology Multiple scale signal processing and control system
DE19925259A1 (en) * 1999-06-01 2000-12-07 Linde Ag Automatic load adjustment
DE60236351D1 (en) * 2001-03-08 2010-06-24 California Inst Of Techn REAL-TIME REAL-TIME COHERENCE ASSESSMENT FOR AUTONOMOUS MODUS IDENTIFICATION AND INVARIATION TRACKING
US8180464B2 (en) 2002-04-18 2012-05-15 Cleveland State University Extended active disturbance rejection controller
US8041436B2 (en) 2002-04-18 2011-10-18 Cleveland State University Scaling and parameterizing a controller
US6961677B1 (en) * 2003-08-25 2005-11-01 Itt Manufacturing Enterprises, Inc. Method and apparatus for categorizing unexplained residuals
CN105981019B (en) * 2013-12-02 2020-08-07 皇家飞利浦有限公司 Apparatus, system, method and storage medium for calculating a current circadian rhythm of a person
US9507365B2 (en) 2014-06-24 2016-11-29 Woodward, Inc. Adaptive PID control system for industrial turbines
CN106489105B (en) * 2015-06-18 2018-06-22 三菱电机株式会社 Control parameter adjusting apparatus

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5038269A (en) * 1987-11-25 1991-08-06 National Research Development Corporation Industrial control systems
US5115391A (en) * 1990-01-26 1992-05-19 At&T Bell Laboratories Kalman filter-based optimizer and method and optimizing
US5136538A (en) * 1987-09-04 1992-08-04 At&T Bell Laboratories Preconditioned conjugate gradient system
US5195028A (en) * 1990-04-18 1993-03-16 Kabushiki Kaisha Toshiba Two degree of freedom controller
US5282130A (en) * 1992-05-20 1994-01-25 Elsag International B.V. Method and apparatus for obtaining process characteristics in a self-tuning controller

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4481567A (en) * 1982-03-01 1984-11-06 The Babcock & Wilcox Company Adaptive process control using function blocks
SE447608B (en) * 1985-04-03 1986-11-24 Hightech Network Ab PROCEDURE AND DEVICE FOR SETTING A DIGITAL REGULATOR
US5091843A (en) * 1988-12-20 1992-02-25 Allied-Signal, Inc. Nonlinear multivariable control system
US5200681A (en) * 1990-03-09 1993-04-06 Kabushiki Kaisha Toshiba Process control system
US5394322A (en) * 1990-07-16 1995-02-28 The Foxboro Company Self-tuning controller that extracts process model characteristics
JP3196390B2 (en) * 1992-12-25 2001-08-06 富士電機株式会社 Parameter identifier
US5381361A (en) * 1993-05-14 1995-01-10 California Institute Of Technology Method and apparatus for real-time constraint solution
US5404289A (en) * 1993-08-30 1995-04-04 National University Of Singapore Controller apparatus having improved transient response speed by means of self-tuning variable set point weighting

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5136538A (en) * 1987-09-04 1992-08-04 At&T Bell Laboratories Preconditioned conjugate gradient system
US5038269A (en) * 1987-11-25 1991-08-06 National Research Development Corporation Industrial control systems
US5115391A (en) * 1990-01-26 1992-05-19 At&T Bell Laboratories Kalman filter-based optimizer and method and optimizing
US5195028A (en) * 1990-04-18 1993-03-16 Kabushiki Kaisha Toshiba Two degree of freedom controller
US5282130A (en) * 1992-05-20 1994-01-25 Elsag International B.V. Method and apparatus for obtaining process characteristics in a self-tuning controller

Also Published As

Publication number Publication date
US5805447A (en) 1998-09-08
AU2968295A (en) 1996-03-07

Similar Documents

Publication Publication Date Title
JP3556956B2 (en) System identification device and method
Ou et al. Comparison between PSO and GA for parameters optimization of PID controller
US6738677B2 (en) Method and apparatus for modeling dynamic and steady-state processes for prediction, control and optimization
US5704011A (en) Method and apparatus for providing multivariable nonlinear control
US20060229743A1 (en) Method and apparatus for attenuating error in dynamic and steady-state processes for prediction, control, and optimization
Fischer et al. Predictive control based on local linear fuzzy models
AU3956695A (en) A variable horizon predictor for controlling dead time dominant processes, multivariable interactive processes, and processes with time variant dynamics
US20040181300A1 (en) Methods, apparatus and computer program products for adaptively controlling a system by combining recursive system identification with generalized predictive control
US4674028A (en) Identification method of a process parameter
US5805447A (en) Cascade tuning controller and method of use therefor
JPH0883104A (en) Plant controller
Abonyi et al. Adaptive fuzzy inference system and its application in modelling and model based control
US5633987A (en) Auto-scaling controller and method of use therefor
US5649062A (en) Auto-tuning controller and method of use therefor
Kitagawa et al. On Timsac-78
Wolf et al. Rigorous solution vs. fast update: Acceptable computational delay in NMPC
EP2778947B1 (en) Sequential deterministic optimization based control system and method
Rekik et al. Fuzzy supervised nonlinear PID control of a class of unknown nonlinear systems
Belda et al. Online tuned model predictive control for robotic systems with bounded noise
Che et al. Correcting discount-factor mismatch in on-policy policy gradient methods
Ohnishi A switching method of PID controllers based on performance assessment
Takao et al. Memory‐based IMC tuning of PID controllers for nonlinear systems
JPH07121505A (en) Method for optimizing simulation model
Das et al. Fuzzy Fractional Order PID Controller Design for Single Link Robotic Arm Manipulator
M'Sahli et al. Constrained nonlinear model-based predictive control using ARX-plus Volterra models

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AM AT AU BB BG BR BY CA CH CN CZ DE DK EE ES FI GB GE HU IS JP KE KG KP KR KZ LK LR LT LU LV MD MG MN MW MX NO NZ PL PT RO RU SD SE SG SI SK TJ TM TT UA UG UZ VN

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): KE MW SD SZ UG AT BE CH DE DK ES FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

NENP Non-entry into the national phase

Ref country code: CA