WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
Receding horizon based adaptive control having means for minimizing operating costs    
United States Patent5301101   
Link to this pagehttp://www.wikipatents.com/5301101.html
Inventor(s)MacArthur; J. Ward (Minneapolis, MN); Wahlstedt; David A. (Minneapolis, MN); Woessner; Michael A. (Minneapolis, MN); Foslien; Wendy K. (Minneapolis, MN)
AbstractDisclosed is an adaptive and predictive controller having self tuning capabilities. The receding horizon window and sample interval are determined by the tunning mechanism automatically, based on the relationship between the controlled and manipulated variables. The interval and window may be set by the user as well. Constraints on the manipulated and controlled variables at the end of the horizon window are accommodated automatically. In addition to providing servo regulatory control the invention teaches simultaneous minimization of operating costs.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History
Drawing from US Patent 5301101
Receding horizon based adaptive control having means for minimizing

     operating costs - US Patent 5301101 Drawing
Receding horizon based adaptive control having means for minimizing operating costs
Inventor     MacArthur; J. Ward (Minneapolis, MN); Wahlstedt; David A. (Minneapolis, MN); Woessner; Michael A. (Minneapolis, MN); Foslien; Wendy K. (Minneapolis, MN)
Owner/Assignee     Honeywell Inc. (Minneapolis, MN)
Patent assignment
All assignments
Publication Date     April 5, 1994
Application Number     08/047,768
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     April 14, 1993
US Classification     700/36 360/75 700/31 700/37
Int'l Classification     G05B 013/04
Examiner     Smith; Jerry
Assistant Examiner     Tousi; Cameron H.
Attorney/Law Firm     Atlass; Michael B.
Address
Parent Case     This application is a continuation-in-part of application Ser. No. 07/541,558, filed Jun. 21, 1990 now abandoned.
Priority Data    
USPTO Field of Search     364/156 364/151 364/157
Patent Tags     receding horizon based adaptive control minimizing operating costs
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
4959767
Buchner
700/31
Sep,1990

[0 after 0 votes]
4769766
Tung
700/29
Sep,1988

[0 after 0 votes]
4736316
Wallman
700/29
Apr,1988

[0 after 0 votes]
4616308
Morshedi
700/39
Oct,1986

[0 after 0 votes]
4349869
Prett
700/39
Sep,1982

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


We claim:

1. A controller for controlling manipulated variable inputs to a plant to achieve a desired controlled variable output trajectory which is sensitive to the outputs from said plant wherein said controller receives user input and provides output signals to effect control moves wherein said controller establishes a model indentification based on the manipulated variable inputs and the controlled variable outputs from the plant and comprises:

a tuner for establishing a control sample rate with reference to how long the controlled variable settling time is and on how many controlled and manipulated variable samples are used to identify the model, and for establishing the first m increments of a horizon window which has a total of m+1 increments and

a control law calculator means having a recursive model based predictor to predict the nominal control variable output trajectory that would occur without changes to the manipulated variables, said predictor deriving its model from the indentified model, and having a model based corrector, also based on the same identified model, to specify the changes required of the manipulated variable outputs to satisfy the following criteria:

a) the errors between the controlled variables and their respective setpoints become zero after m control moves,

b) the errors between the controlled variables and their respective setpoints are zero for 1 additional control moves, and

c) the change in the manipulated variables during the last n control moves of the m+1 horizon take on prescribed beta values which are determined by said control law calculator to be those values necessary to smooth the change in manipulated variables after m control moves and reduce the steady state controlled variable errors, and "means for controlling the controlled variable output based on said specified manipulated variable changes."

2. A controller as set forth in claim 1 wherein said controller further comprises:

optimizer calculator means for providing manipulated variable sequences that results in optimal cost performance without compromising servo-regulatory performance having:

access means for using the control law calculator predictor such that the predictor can be used to predict the effect on the plant as would be measured by the outputs of any hypothetical change made in any manipulated variable,

calculator means for determining the optimal set of manipulated variable changes during the horizon window based on the predicted effects of the changes over the horizon window.

3. A controller as set forth in claim 2 wherein said optimizer means establishes an optimal cost value set for the free manipulated variable at the current time increment by iteratively finding the costs for a range of values of the free manipulated variables and selecting the lowest cost subset using the feedforward capability of the control law.

4. A controller as set forth in claim 3 wherein the iterative cost finding function is repeated for each increment within the horizon window and the optimization process is repeated at each control step.

5. A controller as set forth in claim 1 wherein the tuner further comprises a heuristic supervisor means which receives plant output information and manipulated variable information and compares this information on an ongoing basis to detect system instability, and when detected, effects modification of the horizon window to remove the instability.

6. A controller as set forth in claim 5 wherein the determination of instability will provide for one of three alternative actions on the part of the tuner:

a) change the horizon window,

b) change the identified model,

c) initiate a retune.

7. A controller as set forth in claim 1 where the horizon window established by the tuner is based on the inflection point as well as the line-out of the plant output.

8. A controller as set forth in claim 1 wherein the user input may include specification of the horizon window by specifying any subset or all of the following: one or both of the total lengths of m and l (either by specifying a number of set time length increment units or direct time measurements, such as seconds), the set point, the manipulated variable values in the manual control mode, the control mode (automatic, manual, tune), and a cost function.

9. A multivariable-input multivariable-output controller for controlling a process having at least one receding horizon type controller (hereinafter "RHC") as set forth in claim 1, and at least one other controller, both providing control move output for at least two of said multivariable output variables.

10. A controller as set forth in claim 9 wherein said other controller is also a receding horizon type controller (RHC), and wherein said two variables may be classified as one being primary and the other being secondary and wherein said RHC's may be classified as primary optimum and secondary constrained controllers and wherein said primary optimum RHC produces its output at a first iteration assuming the primary variable must make a control move since the secondary variable is optimized and wherein said secondary constrained RHC produces its output assuming a constrained or no control move situation for said primary variable and produces output based on achieving setpoint using the secondary variable.

11. A controller as set forth in claim 10 wherein said primary optimum and said secondary constrained RHC's outputs are both fed to a constraint checker which determines when said secondary variable has exceeded one or more of the constraints from the following list of constraints (a) the secondary variable suggested exceeds the range of available control moves for the actuator or (b) moving the secondary variable controlled actuator exceeds the user defined cost function for that actuator.

12. A controller as set forth in claim 11 wherein, in the event the constraint checker determines the secondary variable has exceeded these constraints from said list of constraints which are applicable, said constraint checker signals to said secondary constrained RHC this fact.

13. A multivariable-input multivariable-output controller for controlling a process having a multiplicity of receding horizon type controllers (hereinafter referred to as a "RHC") as set forth in claim 1, each providing control move output for at least one of said multivariable output variables, and each said provided output being checked in a constraint handling unit which provides an indicator signal when a constraint on any control move output or combination thereof is exceeded.

14. A controller as set forth in claim 13 wherein one of said multivariables may be classified as being primary to at least one variable and wherein said RHC's may be classified as controlling the primary or one of said secondary variables and wherein said primary RHC produces its output at a first iteration assuming the primary variable must make a control move since any of secondary variables are optimized and wherein said secondary RHC's produce their output assuming constrained or no control move situation for said primary variable and produce output based on achieving setpoint using its secondary variable.

15. A controller as set forth in claim 10 wherein when said constraint handler determines said primary variable has exceeded one or more of its constraints, it instructs by sending a signal to said primary RHC to reissues its primary variable output as constrained and also signals at least one of said secondary RHC's to recompute, assuming the primary variable is constrained and its variable is to be used to effectuate the reference.

16. A process for regulating a system with a controller which provides inputs to a plant and receives outputs from the plant indicating changes in the plant comprising the steps of:

a) establishing by the controller a horizon window comprised of sampling increments of time such that the sampling interval will be long enough to provide useful control move change periods and short enough to substantially reduce the appearance of unwanted oscillations of the controlled variable trajectory.

a) predicting the nominal controlled variable output trajectory,

c) predicting the controlled output trajectory based on the control moves required to reach a user-defined setpoint trajectory at a given time of m increments within the horizon window,

d) constraining the controlled output trajectory to remain at the user defined output state for l increments beyond said m increments, and constraining the control moves to equal n user-specified betas for the last n increments of the l part of the horizon window.
 Description Submit all comments and votes
 


This invention relates to systems having automatic feedback capabilities wherein the controller provides controls over inputs (manipulated variables) to adjust a process or an environment, and wherein outputs (controlled variables) from that controlled environment or process provide inputs to the controller.

More specifically this patent provides a description of the controller features which allow the controller to operate in a predictive manner on a multiplicity of variables with the ability to perform nonlinear cost minimization.

BACKGROUND OF THE INVENTION

Fundamental to the performance of any control algorithm, is its servo-regulatory ability. That is, changes in the set-point should be tracked quickly and smoothly and the controlled variable should be kept at or near its set-point despite unmeasured disturbances affecting the process. In addition the controller should maintain stability and acceptable control performance in the face of structural and/or parametric uncertainty. In certain applications the cost of providing effective control is also a significant factor. While most multivariable control laws utilize some form of cost minimization, the costs typically reflect control movement rather than actual costs. The invention described in this patent teaches a scheme that is based on minimizing costs while still providing effective control. The nonlinear cost functions used in defining the control sequence can be stated to reflect either actual operating costs (dollars) or auxiliary costs (efficiency, quality, etc.) Cost minimization is predicated on the assumption that there are more manipulated variables than controlled variables. Thus it is up to the controller to allocate the correct blend of the manipulated variables such that both control and cost objectives are met. The control scheme described herein was designed specifically to address these basic criteria.

A predictive control law provides the fundamental structure for the new controller. The adaptive controller utilizes a receding horizon formulation. The receding horizon formulation can be used for multivariable control with or without cost minimization. It can also be used for robust univariate servo-regulatory control. Predictive control in and of itself is by no means new. Indeed predictive control is the central theme behind the benchmark works of Cutler and Ramaker in their Dynamic Matrix Control (DMC) algorithm (Cutler, C. R., and B. L. Ramaker, "Dynamic Matrix Control--A Computer Control Algorithm," Joint Automatic Controls Concerence Proceedings, San Francisco (1980)) and Richalet et. al. in their Model Algorithmic Control (MAC) algorithm (Richalet, J. A., A. Rault, J. D. Testud, and J. Papon,, "Model Predictive Heuristic Control: Application to Industrial Processes," Automatica 14, 413 (1978)).

Much of the current control work reported in the literature today is based in some degree on these approaches. Horizon based prediction and control has also been described and implemented in the past (Tung, L. S., "Sequential Predictive Control of Industrial Processes," Proc. ACC, San Francisco (1983); Ydstie, B. E., L. S. Kershenbaum, and R. W. H. Sargent, "Theory and Application of an Extended Horizon Controller," AlChE J., 31, 771 (1985); and Lee, K. S., and W. K. Lee, "Extended Discrete Time Multivariable Adaptive Control Using Long Term Predictor," Int. J. Control, 38, 495 (1983)). The unique aspects of the new control law described herein are that it combines the attractive features of DMC and horizon control and eliminates the inherent disadvantages of the original formulations.

In DMC there is no direct mechanism to tune the controller. In addition the size of the matrix to be inverted at each control update is specified by the number of input terms used in the prediction. These deficiencies which cause considerable practical difficulties in implementing a controller based on such strategies can be eliminated by using a horizon formulation. Unfortunately, previously known horizon based techniques do not eliminate the impracticalities since the number of terms that need to be estimated by the identifier depend on the horizon window. For many uses this can be computationally too burdensome to be acceptable. In the new formulation, a horizon based technique is utilized where the prediction is accomplished using an auto-regressive moving average (ARMA) model in a recursive fashion. In addition, the controller using the new control law described herein allows for the direct imposition of constraints on both process and control outputs at the end of the horizon window.

Use of optimization strategies in plant operation is also not a new concept. Many optimization techniques are global strategies that determine appropriate allocation levels among competing resources. Typically the global approaches do not take into account transient performance at the regulatory level. In a recent patent (U.S. Pat. No. 4,873,649) Grald and MacArthur teach an on-line method for control of vapor compression space conditioning equipment such that COP (coefficient of performance) is optimized. The optimization technique however does not deal directly with transient response and hence satisfactory servo-regulatory performance can not be insured. Morshedi et al (Morshedi, A. M., C. R. Cutler, and T. A. Skrovanek, "Optimal Solution of Dynamic Matrix Control with Quadratic Programming Techniques (QDMC)," Proc. ISA, Part 1, 40 (1985)) describe a pseudostatic approach for incorporating cost into the control design. In their formulation the manipulated variables in question are assigned pseudo set-points which are determined by solving a static linear optimization subproblem for the final value of the inputs. The nominal inputs are then treated as controlled variables with their set-points given by the computed values of the steady state inputs. The conventional control strategy is then augmented to reflect this additional information.

In the controller described in the instant patent, a technique for coupling dynamic nonlinear cost minimization with uncompromised servo-regulatory response is accomplished for the first time. While cost minimization is a desirable option of the controller, robust servo-regulatory performance is still the fundamental objective. To this end one simple form of the controller uses a multivariable feedforward/feedback algorithm. Feedforward compensation offers the potential for improved control performance since it allows the controller to react before a measurable disturbance has a chance to affect the response of the plant. In addition, as will be described later, it provides the mechanism for coupling the cost minimization to the desired servo-regulatory response.

To be effective, the controller requires an internal model that relates all controller outputs and measurable disturbances to all process outputs. (The process outputs are the outputs of the plant as indicated by sensing means located proximate thereto.) The parameters of this internal model are determined on-line by measuring the system response to the controller outputs over time, and provide the adaptive ability of the controller. Evaluation of the unknown model coefficients for each process output is accomplished by a recursive least squares (RLS) estimate. Other standard techniques may be used to accomplish this model identification and are well known.

While techniques for model identification are well known, insufficient excitation or inappropriate sample rate selection will render the identification inaccurate. The invention described in this patent teaches a method for automatically determining the correct control and identification sample rate. In addition, a technique is given for automatically selecting the horizon window and for adjusting the control algorithm when excitation is insufficient for accurate model identification.

SUMMARY OF THE INVENTION

With the advent of controllers having computer resources integrally built in (or microcomputer-based controllers), more sophisticated control functionality such as is taught in this patent is possible by utilizing the memory and processing capability that accompanies the micro-computer to implement a control program.

The main objective of the present invention is to provide a new and improved means for efficient robust adaptive control with the ability to control a plurality of process outputs such that operating efficiency is maximized or operating costs are minimized.

Equipped with or connected to sensor means, microcomputer means, memory means, and actuator means, the microcomputer-based controller can measure the desired process output variables. From these measurements and user inputs the controller can automatically determine the appropriate identification and control sample rate as well as the horizon window, estimate and continuously update a dynamic model of the process being controlled, predict the future effect of current and past inputs on process outputs over the horizon window, determine the appropriate sequence of control moves to insure that all process outputs attain their user specified set-point by the end of the horizon window, impose user specified constraints on manipulated and controlled variables, determine the control moves which result in minimum cost or maximum efficiency without compromising servo-regulatory control, and output these efficient control moves as signals to the actuators.

An exemplary use of the controller taught herein would be to employ it in conjunction with a variable speed vapor compression heat pump to maintain a comfort level set by the occupants of a building. In this exemplary use, the occupants (user) would specify the setpoint (comfort level) and the controller would adjust the compressor speed, blower speed and evaporator superheat to maintain comfort at the desired set-point while insuring maximally efficient operation. Since this strategy results in optimal control, it is apparent that in steady state operation any other choice of compressor speed, blower speed and evaporator superheat will result in either increased energy consumption or reduced comfort.

Previous attempts at incorporating optimization into regulatory control have failed to recognize that static or pseudostatic techniques do not correctly deal with transient operation due to set-point or load changes.

A state-of-the-art configuration of the control system according to the present invention provides a process control means having a microcomputer with a real-time clock, memory and floating point processing. It will have a data input means through which the user can specify desired set-points and constraints, overriding the horizon determined by the tuner and selecting perturbation step(s) for initial identification if desired, and mode selection (auto, manual, tune). The system will likely have multiple sensors for measuring all parameters necessary for control purposes although in some instances only one sensor will be needed. There should be at least as many sensor outputs as controlled variables. The system also needs to be able to provide manipulated variable (also called control output) signals to an actuator or actuators. In the preferred embodiment, the adaptive receding horizon control program is in the controller's memory; however, it is possible to implement the scheme in hardware. The controller provides fundamental robust servo-regulatory control based on multiple sensory data. The controller calculates the control and identification sample rate and to synthesize a dynamic process model, and predicts future effects of control moves on process outputs. The controller also employs optimization to minimize operating cost without compromising servo-regulatory behavior.

The above and other objects, features and advantages of the invention will become more apparent from the ensuing detailed description taken in conjunction with the accompanying drawings and appended claims.

In some situations, the Receding Horizon Control (RHC) may suggest control moves which are greater than the actuator can perform. In such situations, it is useful to use other manipulated variables to control other actuators to assist in accomplishing the desired result or achieving set point. The ability to switch to other control actuators can be accomplished with some additional features described herein. These additional features also accommodate situations wherein one wishes to not only avoid only the unacceptable control instructions but also to enhance the cost control function by assigning a primary status to control moves of the less costly function(s) and secondary status to control moves of more costly control function(s). These additional features include having a separate RHC for each of the manipulated variables and setting each RHC for a new feedback data path and adding a constraint handling logic selector which both selects which RHC output to use, and may also provide feedback to one or more RHC units.

The concept is taught with reference to a two-actuator system having cubic feet per minute (CFM) and compressor revolution per minute (RPM) actuators (a fan and a compressor motor), as would be typical in a heating or cooling air system. A CFM move is considered less costly, in general, than an RPM control move.

In the event the CFM control move that is required to satisfy the criteria for the controller is out of range for the CFM fan to accomplish, the system will accommodate this by making an RPM control move. In the cost function case, where the size of the CFM control move required for achieving set point is not near the least cost curve, and where the same or better result can be achieved with an RPM control move, the RPM control move is made. The cost function in this example is called the Coefficient of Performance, or COP, by those of ordinary skill in this industry.

In this invention this is done by the constraint handler determining that at least some portion of the CFM-Primary sequence of control moves are for out-of-range (or out of proper cost) conditions. Where that is the case, feedback is supplied to the RPM optimizing RHC indicating that CFM is constrained. The RPM optimizing RHC then uses these constrained values and computes the control moves for RPM required to achieve setpoint within m control moves and maintain stability for m and L control moves with the constrained CFM.

The end result of this process is a CFM and RPM control value supplied to the process (55 of FIG. 15). A multiplicity of RHC units may be configured into a larger system having a multiplicity of control outputs (n in FIG. 16).

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of the preferred embodiment of the control system showing interactive channels between elements.

FIG. 2 is a graph used to show the concept used by the tuner to evaluate critical process response parameters for use in determining sample rate and horizon window.

FIG. 3 is a graph of the performance of the tuner with 50% full scale noise.

FIGS. 4a and 4b are graphs of a response variable and a manipulated variable, respectively, illustrating the hueristics used for control adaptation during process upsets.

FIG. 5 is a graph of two response trajectories, illustrating the horizon concept for a SISO process for use in deriving the fundamental control law.

FIGS. 6a and 6b are graphs of the response variable and the manipulated variable, respectively, showing typical receding horizon performance for a highly underdamped SISO (Single Input, Single Output) process.

FIG. 7 is a graph of a steady state cost surface for a particular process.

FIGS. 8a and 8b are graphs of the response and manipulated output variables, respectively, showing the servo-performance of the controller for set point response without cost minimization.

FIGS. 9a and 9b are graphs of the same variables used in FIGS. 8a and 8b, respectively, and show the servo-performance of the controller for set point response with cost minimization taught by this patent.

FIGS. 10a and 10b are graphs of the response and manipulated output variables, respectively, showing the servo-performance of the controller for set point response with steady state cost minimization.

FIGS. 11a and 11b are graphs showing cost performance of the controller corresponding to the servo-performance illustrated in FIGS. 8a through 10b.

Paired FIGS. 12a and 12b, and 13a and 13b are graphs of the response and manipulated output variables, respectively, in each pair, showing controller performance for various set point and load disturbances.

FIGS. 14a and 14b are graphs showing cost performance of the controller corresponding to the servo-regulatory performance illustrated in FIGS. 12a through 13b.

FIG. 15 is a block diagram illustrating a preferred embodiment having additional features to enhance cost control and resolve actuation constraints.

FIG. 16 is a heuristic block diagram of extensions to the basic two-RHC design, having more than two RHC's.

FIG. 17 is a flow chart.

FIG. 18 is a paired set of line charts, showing the effect on m and n on control performance where l=3.

FIG. 19 is a line chart showing the effect of l on control performance (augmented prediction, m=6, n=0).

DESCRIPTION OF THE PREFERRED EMBODIMENT

A preferred embodiment of the control system of the invention will now be described with reference to FIG. 1. As shown in FIG. 1, the controller is composed of several interacting components. The overall block diagram of the dynamic system 10 comprises both the controller (which has components 23, 24, 25, 26, and 28 and works with the inputs from interface unit (sometimes called a sequencer 27)) and the environment (identified as plant 20) for which the controller is responsible. The plant 20 may be exposed to unmeasured disturbances represented here by disturbance 21, which may affect the plant 20 but which is only measurable by its influence on the plant output(s) 22. At least one and probably a multiplicity of sensors are provided that measure and report on the plant 20 (but are not shown). These sensors monitor and report on the output(s) 22 from plant 20. For example, to reference the heat pump mentioned in the Summary of the Invention, the sensors may measure the humidity, temperature, et cetera. As illustrated in FIG. 1, the outputs of these sensors are shown as line 22. These output(s) provide input to and affect the tuner 23, the identifier 24, the predictor 25, the control law 26 and indirectly the optimizer 28.

Analog to Digital (A/D) and Digital to Analog (D/A) conversion boxes are shown at locations 1 and 2 to indicate appropriate placement. However, if the entire controller, or parts thereof are implemented in analog components whether different placement or removal would be indicated, as will be apparent to one of ordinary skill in this art.

Data input means are provided for establishing a link between the user and interface unit 27. User input data is accomplished via user manipulation of this interface 27. The user may change the horizon window, define cost functions or, to cite a simplistic single variable example, change the set-point. Various forms of interface devices may be used without deviation from this invention.

Components 23, 24, 25, 26, and 28 provide the fundamental features of the controller. These elements can be configured in either software or firmware as desired by the builder of the controller. A brief description of the functionality of each component follows.

Outputs from the sensing elements at plant 20 and outputs from the interface unit 27 are either converted to, or already are in digital form. These signals are supplied to a microcomputer device in the controller which may be a single processor performing variety of the component functions over time, as directed by programming control, as will be understood by one of ordinary skill.

Tuner 23 is responsive to said sensing element output(s) and interface 27 output as well as to the outputs of control law calculator 26 and identifier calculator 24. The tuner is activated upon start-up, i.e., when the controller is commissioned. In the manual mode (a mode in which the manipulated variables are held fixed as set directly by the user), the tuner forces a step change to each of the controller outputs 29. Said tuner monitors the process response and based on the time history of the process response, selects the appropriate control and identification sample rate as well as the horizon window, and makes these parameters available as outputs.

After the appropriate sample rate and horizon have been determined, the tuner invokes identifier calculator 24 which is responsive to sensor outputs 22 and the outputs of the control law calculator and said tuner calculator. The invocation is done in the preferred embodiment by having the tuner repeatedly send data as it is developed by the tuner. Data recorded by tuner calculator during the open loop step is then used to drive said identifier. The output of said identifier calculator is the dynamic process model. As discussed in the Summary of the Invention, any number of modeling techniques could be employed. Once identification is complete, the model is then made available to predictor calculator 25 and said control calculator 26.

The manual mode is then terminated and automatic control commences. At this point, the identifier remains active continually monitoring the process response. Said tuner is also used to monitor the process in normal automatic (also called closed loop) operation. If the control performance degrades, said tuner will adjust the control parameters in a heuristic fashion based on frequency response data. If control performance is unacceptable, said tuner will recommission itself as described above.

The optimizer calculation means 28 is responsive to said control and predictor calculation means. Said optimizer 28 continuously searches for alternate control sequences that result in a lower cost of operation. Within each time step said optimizer uses both 25 and 26 to determine the control moves that result in minimum cost yet offer uncompromised servo-regulatory control performance.

The control sequence is determined by said control law calculator 26 based on said predictor calculator 25. Said predictor 25 is responsive to the tuner, the control calculator, and uses the discrete time model obtained from the identifier to determine the nominal output trajectory that would occur if no future changes are made to the input. The output of the predictor calculator is the nominal output trajectory which is based on current and past recorded data. The control calculator is responsive to; interface 27, prediction calculator, tuner, identifier calculator, and optimizer calculator for affecting the calculation of the values for each of the manipulated variables. The control variable command signals may be converted to analog outputs by a D/A converter where the equipment requires analog input.

In the discussion below, a more detailed description of the tuner, the the control law calculator, the predictor calculator, and the optimizer will be given.

THE TUNER

As described previously, the primary function of the tuner is to select the appropriate control and identification sample rate and the horizon window. These parameters can be directly determined from the open-loop response characteristics of the process. The selection is based on settling time for overdamped open-loop processes and on rise time and period of oscillation for underdamped open-loop processes. For overdamped systems the sample rate is determined by recording the settling time and dividing this number by five times the minimum number of terms in the predictive model. For underdamped systems the sample rate is determined by recording the time to reach the second inflection point and dividing this number by five times the minimum number of terms in the predictive model. For open-loop-unstable processes, the sample rate is determined by recording the time taken to exceed a predefined range limit (set by the user). This number is then divided by twice the minimum number of terms in the predictive model to determine the sample rate. The default horizon is set to fifteen times the sample rate. While other numbers could be used, experience shows these to be most reliable.

The following is a detailed description of the method used for determining an appropriate horizon overdamped systems. The basic concept is to apply a step in the process input and observe the process output in order to determine the maximum slope, the time at which it occurs, the magnitude of the output at that time, and ultimately the settling time of the response. Establishing reliable time/slope data with no a priori process knowledge in spite of noise-corrupted data is the primary contribution of the tuner. Although for overdamped systems the settling time is itself sufficient to determine the window and sample rates for the preferred implementation, the approach can also be used to fit a second order model with delay to the observed data. Numerical techniques relating the transport delay, gain and time constants to the time/slope information are well known and will not be discused here.

FIG. 2 illustrates graphically the concept used by the tuner. The tuner assumes the value of the output will start at zero and makes sure the output value changes in the positive direction when the step in the input occurs. Based on the direction of the control input step and the direction of control (reverse- or direct-acting), the expected direction of movement of the output is determined. If a negative change is expected, the output is multiplied by -1. This output value, which starts at zero and changes in the positive direction, is what is referred to as "the output" in the remaining of the description of the tuner.

To reduce the effect of noise, the output is averaged over a number of samples. The number of samples used depends on the response of the system and is determined differently in various stages of the analysis. A running sum of the output is kept, and when established criteria (described in the following paragraphs) are met, this sum is divided by the number of samples included in the summation to yield the average output value for that time period. The goal is to average over as many steps as possible to allow the algorithm to function accurately in the presence of large noise levels, without letting the average continue right through the significant changes in the output. The averaged output value is referred to as "y", and the slope of y with respect time as "dy". The time, referred to as "t", associated with each y value is the time at the middle of the range of samples averaged. The slope associated with a given y and t is calculated as the average of the slopes from y to the previous y and from y to the next y.

The tuner begins by looking for the point at which the slope begins to decrease (the inflection point). When the inflection point is found, a parabola of dy as a function of t is fit to the first point at which the slope decreases and the two which precede it. The slope and time of the inflection point are determined by finding the maximum dy of the parabola and the associated time. The y value at the inflection point is obtained by interpolation. These values are saved as t1, y1, and dy1. In the presence of noise, false inflection points may be found (when the slope in the noise decreases), but these are detected and handled in the later phases of the analysis.

The length of time over which to average for this initial stage of the analysis is limited by two criteria. When one average is calculated, a y limit and a t limit are set and when either one of these limits is exceeded, the next average is calculated. The time limit is set to the twice the previous time limit, with an initial time limit of one time step. The y limit is set to 1.4 times the largest non-averaged y value occurring since the beginning of the run. The y limit is the most important because it is the one which determines the appropriate spacing of the averages through the significant changes in the output. By the time the output reacts to the step input, the t limit can grow to be large enough to miss the entire change in the output, but the y limit (which gets set to 1.4 times the noise) forces the averaging to occur frequently enough to provide several data points through the area of the inflection point. If, instead of 1.4, a smaller value were used the allowable noise to signal ratio of the system would be reduced, since the averages would be calculated more frequently and the effect of the noise would be reduced less. If a much larger value were used, the y limit would be set above the line-out value of the output before the inflection point was found meaning it would be missed completely.

In the next phase of the analysis, the tuner will determine whether it has found a false inflection point. It will look for the point where the slope decreases to less than 80% of the slope at the inflection point. If, during this phase, the slope either increases twice in a row or becomes greater than the slope at the inflection point, the inflection point is considered to be false and the tuner reverts back to the initial phase and looks for another decrease in slope. In this phase and in later phases, the y limit is abandoned and a time limit equal to the total time spanned by the three averages around the inflection point is used. When a slope less than 80% is found, the t, y, and dy values are saved as t2, y2, and dy2. (The 80% figure has yielded good results, but a similar number could be employed.)

In the third phase of the analysis, the tuner is just looking to make sure it was not just an artifact of the noise that created an apparent inflection point. The time limit for the averages is set equal to t2 minus t1 (the time to get from maximum slope to 80% slope). If the slope increases or goes negative in either of the next two averages, the inflection point is considered false and again the tuner reverts back to the initial phase and looks for another decrease in slope. Beyond this phase there are no more checks for false inflection points, but one could include more if desired.

In the final phase of the analysis, the tuner determines the settling time. The time limit used is the same as in the previous phase. There are three criteria, any one of which is considered to constitute line-out (also known as reaching approximate steady state): (1) if the absolute value of the slope is less than 5% of dy1 (the slope at the inflection point) three times in a row; (2) if the value of y decreases and remains lower than its largest value for three averages in a row; or (3) after ten averages are calculated in this phase.

FIG. 3 shows a process reaction curve contaminated with noise. The actual process has a transport delay of 200 seconds, a unity gain and two time constants of 150 and 160 seconds. The tuner was able to determine settling time, and the maximum slope and the time at which it occurred with sufficient accuracy to identify the process time constants, gain and transport delay with a maximum error of 10%.

The tuner also acts as a heuristic supervisor which monitors the controller output (manipulated variable, also line 29 of FIG. 1) and the measured process output (process variable, also line 22 of FIG. 1) for symptoms of system instability during automatic control mode. Upon detection of unacceptable system stability, the tuner, acting as heuristic supervisor, applies a set of recovery rules to stabilize the system.

The heuristic supervisor's corrective actions may include changing the identified process model or altering the horizon window to recover from the observed instability. In the preferred embodiment the heuristic supervisor is limited to one model change per system upset (set-point change or system disturbance) but can alter the horizon window any number of times. If a model change has been necessary to stabilize the system, the heuristic supervisor switches the controller into manual control mode and forces a complete system re-tune as described previously.

The heuristic supervisor monitors the process variable at all times during automatic control mode whereas the manipulated variable is monitored only after a window is computed directly from observed system dynamics. The formulation of this manipulated variable observation window is discussed below.

The process variable parameters identified by the heuristic supervisor during a system upset are shown in FIGS. 4a and 4b. These are the peak amplitudes, a.sub.1 a.sub.2, the dimensionless amplitude decay ratio, d, the period of oscillation, p, and the closed loop settling time, T.sub.s. The amp