disturbances system identification daniel e. rivera, …csel.asu.edu/downloads/publications/sysid...
TRANSCRIPT
D.E. Rivera, Introduction to System Identification, ChE 494/598, January 20, 2004
© Copyright 1998-2004 by D.E. Rivera, All Rights Reserved
1
Daniel E. Rivera, Associate Professor
Control Systems Engineering LaboratoryDepartment of Chemical and Materials Engineering
Arizona State UniversityTempe AZ 85287-6006
[email protected](480) 965-9476
© Copyright, 1998-2004
ChE 494/598Introduction to System
Identification
Course Objectives
• Provide lab exercises that will give students a working feel for the course topics. MATLAB (particularly the System Identification Toolbox) will be the program of choice.
• Present fundamental background to allow students to make judicious choices of design variables in system identification.
• Provide a glimpse of cutting-edge identification research at ASU and other academic institutions around the world.
System Identification“Identification is the determination, on the basis of input and output, of a system within a specified class of systems, to which the system under test is equivalent.” - L. Zadeh, (1962)
SystemSystemInputs Outputs
Disturbances
System identification focuses on the modeling of dynamical systems from experimental data
Some System Identification Facts
• problem not exclusively associated with control design, although it forms a significant part of control implementation
• often times, the system identification task is the most expensive and time consuming part of advanced control implementation
• broadly applicable technology with applications in many diverse fields
D.E. Rivera, Introduction to System Identification, ChE 494/598, January 20, 2004
© Copyright 1998-2004 by D.E. Rivera, All Rights Reserved
2
Shell Heavy Oil Fractionator Example
Top Draw
• Manipulate top, side draw and/or bottoms reflux duty to maintain top and side endpoints at setpoint,
• Reject disturbances from the upper and intermediate reflux duties.
• Keep Bottoms Reflux Temperature above constraints.
LC
A
T
T
T
LC
LC
FEED
BOTTOMS REFLUX
INTERMEDIATE REFLUX
UPPER REFLUX
TOP DRAW
SIDE DRAW
BOTTOMS
SIDESTRIPPER
FC
FC
Q(F,T)CONTROL
F
T
PC
T
A
T
TopEndpoint
SideEndpoint
Side Draw
Upper Reflux Duty
Intermediate Reflux Duty
BottomsReflux Duty
BottomsReflux Temp
-2
0
2
4
0 20 40 60 80 100 120 140 160 180 200
OUTPUT #1
0
0 20 40 60 80 100 120 140 160 180 200
INPUT #1
Distillation Column Data
• response of overhead temperature (top) to changes in reflux flowrate (bottom)
Epi Reactor Temperature Control• keep center, front, side and rear temperatures constant by
adjusting power to the lamp banks
solid: center; dashed: side; dotted:front; dash-dotted: rear
0 200 400 600 800 1000 1200 1400 1600 1800 2000-40
-30
-20
-10
0
10
Time [seconds]
Tem
p. D
evia
tion
[C]
solid:master; dashed:side; dotted:front; d-dotted:rear
0 200 400 600 800 1000 1200 1400 1600 1800 2000-8
-6
-4
-2
0
Time [seconds]
Pow
er [%
]
solid:master; dashed:side; dotted:front; d-dotted:rear
Epi Reactor Identification Data
D.E. Rivera, Introduction to System Identification, ChE 494/598, January 20, 2004
© Copyright 1998-2004 by D.E. Rivera, All Rights Reserved
3
LT
ADI
SFGI
CW
LT
LT
Controller
Demand
Forecast
Real
D1D2D3t
ADI: Assembly-Die Inventory
SFGI: Semi-Finished Goods Inventory
CW: Component Warehouse
Fab/Sort starts
A/T starts
Shipments
Demand
A/T: Assembly/Test Facility
Semiconductor Mfg Supply Chain Managment Fab/Test Node Dynamic Response
Lo
adO
uts
Sta
rts
Time
Wing Flutter Example
0 1 2 3 4 5 6 7 8-10
-5
0
5
10
Exci
tatio
n
Time [s]
Filtered data used for modeling
0 1 2 3 4 5 6 7 8-5
0
5
Res
pons
e
Time [s]
Filtered data used for modeling
• artificial mechanical vibrations (top) introduced to a wing at certain flight conditions; responses shown on bottom
Other Challenging Application Areas
• Economic/financial systems
• modeling economic indicators such as the Dow Jones, S&P 500 indices
• Behavioral/social systems
• time-varying adaptive interventions for the prevention of chronic, relapsing disorders (such as alcoholism, smoking and drug abuse)
D.E. Rivera, Introduction to System Identification, ChE 494/598, January 20, 2004
© Copyright 1998-2004 by D.E. Rivera, All Rights Reserved
4
Stages of System Identification
• Experimental Design and Execution
• Data Preprocessing
• Model Structure Selection
• Parameter Estimation
• Model Validation
STAGES OF SYSTEM IDENTIFICATIONStart
Experimental Design and Execution
"Identification"
Model Validation
Does the model meet validation criteria?
( Step, Pulse, or PRBS-Generated Data)
( Linear Plant and Disturbance Models)
(Simulation, Residual auto and cross- correlation,step-response)
No
End
Yes
a priori processinformation
• Model Structure Determination
• Parameter Estimation
• Data Preprocessing
Stages of System Identification - II
• courtesy P. Lindskog, ISY, Linköping University, Sweden
Prio
r sy
stem
kno
wle
dge:
phy
sics
, lin
guis
tics,
firs
t-ha
nd, e
tc.
Experimentdesign
Pre-treatdata
Choosemodel
structure Chooseperformance
criterion
Parameter estimation
Validatemodel Not OK revise!
OK accept model!Not OK revise prior?
Controller Design & Commissioning
Keys to Successful System Identification in Practice
• Understanding the various identification methods and associated decision variables in terms of bias-variance tradeoffs
• Effective use of a priori knowledge regarding the system to be identified and the intended application (e.g., simulation, prediction, control)
"the classical statistical approach," per Ljung...
D.E. Rivera, Introduction to System Identification, ChE 494/598, January 20, 2004
© Copyright 1998-2004 by D.E. Rivera, All Rights Reserved
5
• Skill-level issues: many system identification methods assume the user has extensive background in statistics, signal processing, discrete-time systems, and optimization.
• Large number of design variables.
• Process operating restrictions make identification one of the most time consuming tasks in advanced control implementation projects.
System Identification Challenges
(Disturbance)
(Input)
(Output)
CONTROLLER
Objective: Use fuel gas flow to keep outlet temperature under control, in spite of significant changes in the feed flowrate.
Furnace Control Example
The "Shower Problem"
Hot Cold
Consider the problem of adjusting hot water flow to maintain shower temperature despite cold water fluctuations...
Transportation lagMakes this a difficult control problem...
Many references for this technique, example: Seborg, Edgar, and Mellichamp, Process Dynamics and Control, Wiley, 1989, Chapter 7.
p(s) = K e-θs
τ s + 1,
Response of a first-order with deadtime model for a step input of magnitude A
Graphical System Identification Using Step Testing
θTime
KA
τ
D.E. Rivera, Introduction to System Identification, ChE 494/598, January 20, 2004
© Copyright 1998-2004 by D.E. Rivera, All Rights Reserved
6
0 200 400 600 800 1000 1200 1400 1600 1800 20000
5
10
15
20
25Measured Output
Time[Min]
0 200 400 600 800 1000 1200 1400 1600 1800 2000-1
-0.5
0
0.5
1Input
Time[Min]
Open-loop disturbance (no control)
2000 minutes
Fuel Gas Flow (Manipulated Variable)
Temperature(ControlledVariable)
Consider the application of step testing to a system subject to a drifting, nonstationary disturbance.
Furnace Example (Continued) Perils of Step Testing
-10
-9.5
-9
-8.5
-8
-7.5
-7
-6.5
-6
-5.5
0 5 10 15 20 25 30 35 40
Time[Min]
Compare Step Responses: FOPDT Model[--], PLANT Data[-], TRUE PLANT[-.]
40 minutes
Temperature Response to a Step Increase in Fuel Gas Flow
p(s) (est) = 0.748 exp(-6s)-------------------- 7.095 s + 1
p(s) (true) = exp(-5s) -------------- 10 s + 1
Design Variable Selection Issues• Input Signal Selection: Random Binary,
Pseudo-Random Binary, or Multiple Step/Pulse Inputs?
• Input Signal Parameters: Example: PRBS - number of shift registers, switching time, signal magnitude, and signal duration
• Data Preprocessing: Detrending, control-relevant prefiltering, outlier removal, etc.
• Model Structure Selection and Parameter Estimation: ARX, ARMAX, Output Error, Box-Jenkins
• Model Validation: Simulation, Crossvalidation, Correlation Analysis; Examination of Step, Impulse, Frequency Responses.
Principal Sources of Error in System Identification
• BIAS. Systematic errors caused by
- input signal characteristics (i.e., excitation) - choice of model structure
- mode of operation (i.e., closed-loop instead of open-loop)
• VARIANCE. Random errors introduced by the presence of noise in the data, which do not allow the model to exactly reproduce the plant output. It is affected by the following factors:
- number of model parameters
- duration of the identification test
- signal-to-noise ratio
ERROR = BIAS + VARIANCE
D.E. Rivera, Introduction to System Identification, ChE 494/598, January 20, 2004
© Copyright 1998-2004 by D.E. Rivera, All Rights Reserved
7
OPENLOOP
RESPONSE
Furnace example with PRBS input, PID with filter controller
IDENTIFICATION DATA
CLOSED LOOP
RESPONSE
Input
MeasuredOutput
From Identification to Controller Implementation
0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000-15
-10
-5
0
5
10
15Input
Time[Min]
0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000-5
0
5
10
15
20
25Measured Output
Time[Min]
Course Outline• Signals and Systems Overview
• Input Signal Design and Nonparametric Estimation
• Parametric Model Estimation and Validation
• Control-Relevant and Closed-Loop Identification
• Multivariable Identification
• Issues in nonlinear and semiphysical identification
Course Focus
• Very broad subject
- Linear or Nonlinear?
(Mostly) LINEAR
- Continuous or Discrete?
DISCRETE
- Parametric or nonparametric?
BOTH
- Time or frequency domain?
BOTH
Systems Representations
Nonlinear Lumped Parameter System
State-SpaceModel
Linearization
s-domainTransfer Function
Model
Laplace transforms{Step/
ImpulseResponse
and FrequencyResponse z-domain
Transfer FunctionModel
T
Sampling
(difference equation)
}Discrete-timeStep/
Impulse Response
and FrequencyResponse
Discrete-time S-S Model
T
Sampling
Realization
D.E. Rivera, Introduction to System Identification, ChE 494/598, January 20, 2004
© Copyright 1998-2004 by D.E. Rivera, All Rights Reserved
8
Discrete Model Representations
PLANTStep
Response
PLANTImpulse
Response
U(k) Y(k+1)D
DifferenceEquations
G(z)U(z) Y(z)
Z-Transforms
Nonparametric
{
Parametric
{
Pulse Transfer Functionscomputer
controlalgorithm
Zero-orderHold P(s) computer
kukyu(t) y(t)
ZOH-equivalent Pulse Transfer Function
T
time
timetime
time
discreteinput
continuousinput
continuousoutput discrete
output
ky
u(t)y(t)
ku
Examples
Impulse
Step
First-OrderLag
Integrating/Ramp
First-Orderwith Delay
s-domain z-domain
1 1
time
δ (t)
s(t) =1 t ≥ 0
0 t < 0
1s
zz −1
Kτs +1
Ks
Kτs +1
exp(−θs)
θ = NT
ZOH PulseTransferFunctionZOH PulseTransferFunctionZOH PulseTransferFunction
KTz −1
K(1 - exp(-T /τ))z -Nz - exp(-T/τ)
K(1 - exp(-T /τ))z - exp(-T /τ)
System Identification Structure
Random Signal
Input Signal
Output Signal
u
yP(z)
a
++
H(z)
υυυυ Disturbance Signal
P(z) and H(z) are discrete-time (z-domain) transfer functions
y(t) = p(z)u(t) +H(z)a(t)
D.E. Rivera, Introduction to System Identification, ChE 494/598, January 20, 2004
© Copyright 1998-2004 by D.E. Rivera, All Rights Reserved
9
Signals Overview
• White versus autocorrelated signals
• Crosscorrelated versus uncorrelated signals
• Deterministic versus stochastic signals
• Stationary versus nonstationary signals
Mean, auto and cross-covariance, power and cross-spectra will be the measures/tools utilized here
Example 1: White-noise signal
tx = ta ta = N(0, a2σ )
1txta
0
0.5
1
1.5
0 1 2 3
Frequency [Radians]
phi
POWER SPECTRUM OF WHITE NOISE
0
0.5
1
1.5
0 2 4
Lag
rhok
AUTOCORRELATION OF WHITE NOISE
kρ = kγa2σ a
2σ = 1Φ(ω )
ω
0 200 400 600 800 1000 1200 1400 1600 1800 2000-1
-0.5
0
0.5
1
1.5
Sample Number
Signal
-20 0 20 40-0.5
0
0.5
1
Lag k
rhok
Autocorrelation Coefficients
10-2 10-1 10010-2
10-1
100
Frequency [Radians/Time]
Power Spectral Density
Example 1: White Noise Signal Analysis (From Sample Estimators)
0 200 400 600 800 1000 1200 1400 1600 1800 2000-3
-2
-1
0
1
2
3
Sample Number
Signal
-20 0 20 40-0.5
0
0.5
1
Lag k
rhok
Autocorrelation Coefficients
10-2 10-1 10010-2
10-1
100
101
Frequency [Radians/Time]
Power Spectral Density
Example 3: AR(1) signal
D.E. Rivera, Introduction to System Identification, ChE 494/598, January 20, 2004
© Copyright 1998-2004 by D.E. Rivera, All Rights Reserved
10
System Identification, Revisitedwhite noise signal
Input Signal (Random orDeterministic)
Output Signal (random, autocorrelated)
u
yP(z)
a
++
H(z)
υυυυDisturbance Signal (random, autocorrelated)
• u and y are crosscorrelated• a and y are crosscorrelated• If u and a are statistically independent, then u
and ν will be uncrosscorrelated...
"Plant Friendly" Input Signal Design
• be as short as possible
• not take actuators to limits, or exceed move size restrictions
• cause minimum disruption to the controlled variables (i.e., low variance, small deviations from setpoint)
A plant friendly input signal should:
Note that theoretical requirements may strongly conflict with "plant-friendly" operation!
Pseudo-Random Binary Sequence
1 0 1 1 0 1 1 0 1
1 nr
Exclusive OR(Modulo 2 Adder)
Test Signal
Shift Registers
The PRBS is a periodic, deterministic input which can be generated using shift registers and Boolean algebra
The main design variables are switching time (Tsw), number of shift registers (nr), and signal amplitude
PRBS, continued
PRBS design for Tsampl = 1, Tsw = 3, n (registers) = 4, and signal magnitude = +/- 1.0. One cycle duration is 45 minutes long.
0 5 10 15 20 25 30 35 40 45-1
-0.5
0
0.5
1
One cycle of the PRBS time input signal
Time[Min]
100
10-3
10-2
10-1
100
Radians/Min
AR
Power Spectrum of the PRBS input
D.E. Rivera, Introduction to System Identification, ChE 494/598, January 20, 2004
© Copyright 1998-2004 by D.E. Rivera, All Rights Reserved
11
Inputs to Consider• Step/Pulse Inputs
• Gaussian White Noise
• Random Binary Signal (RBS)
• Pseudo-Random Binary Signal (PRBS)
• multi-level Pseudo-Random Signals
• Multisine inputs (e.g., Schroeder-phased, minimum crest factor)
Nonparametric Methods
• Correlation Analysis:
- direct estimation of impulse response coefficients from identification data
• Spectral Analysis:
- direct estimation of frequency response from identification data
Correlation Analysis Results, Hairdryer Data
0
0.05
0.1
0.15
-20 -10 0 10 20
Covf for filtered y
-0.5
0
0.5
1
1.5
-20 -10 0 10 20
Covf for prewhitened u
-0.2
0
0.2
0.4
0.6
-20 -10 0 10 20
Correlation from u to y (prewh)
-0.05
0
0.05
0.1
0.15
-20 -10 0 10 20
Impulse response estimate
Wing Flutter Example, Spectral Analysis
4 5 6 7 8 9 10 11-25
-20
-15
-10
-5
0
Am
plitu
de [
dB]
Frequency [Hz]
Smoothed SPA model (solid). Raw ETFE (*).
4 5 6 7 8 9 10 110
50
100
150
Pha
se [
degr
ee]
Frequency [Hz]
Smoothed SPA model (solid). Raw ETFE (*).
D.E. Rivera, Introduction to System Identification, ChE 494/598, January 20, 2004
© Copyright 1998-2004 by D.E. Rivera, All Rights Reserved
12
Smoothing, Filtering, Prediction
• In the prediction problem, current and previous measurements from the plant are used to obtain estimates k+1 (or beyond) time steps in the future
A(z)y(t) =B(z)F (z)
u(t− nk) +C(z)D(z)
e(t)
A(z) = 1 + a1z−1 + . . .+ anaz
−na
B(z) = b1 + b2z−1 + . . .+ bnbz
−nb+1
C(z) = 1 + c1z−1 + . . .+ cncz
−nc
D(z) = 1 + d1z−1 + . . .+ dndz
−nd
F (z) = 1 + f1z−1 + . . .+ fnfz
−nf
In transfer function form:
y(t) = p(z)u(t) + pe(z)e(t)
p(z) =B(z)
A(z)F (z)z−nk pe(z) =
C(z)A(z)D(z)
Prediction-Error Model Structures
C(z)D(z)
1A(z)
e
yu B(z)F(z)
−nkz ++
Prediction-Error Family of Models
Popular PEM StructuresMethod p(z) pe(z)ARX B(z)
A(z)z−nk 1
A(z)
ARMAX B(z)A(z)z
−nk C(z)A(z)
FIR B(z)z−nk 1Box-Jenkins B(z)
F (z)z−nk C(z)
D(z)
Output Error B(z)F (z)z
−nk 1
A(z)y(t) =B(z)F (z)
u(t− nk) +C(z)D(z)
e(t)
y(t) = p(z)u(t) + pe(z)e(t)
ARX Parameter EstimationThe one-step ahead predictor for y
y(t|t−1) = −a1y(t−1)−. . .−anay(t−na)+b1u(t−nk)+. . .+bnbu(t−nk−nb+1)
can be expressed as a linear regression problem via
ϕ = [−y(t− 1) . . . −y(t− na) u(t− nk) . . . u(t− nk − nb + 1) ]T
and θ, the vector of parameter estimates:
θ = [ a1 . . . ana b1 . . . bnb ]T
Rewriting the objective (“loss”) function as
minθV = min
θ
1N
N∑i=1
[y − ϕT (t)θ
]2
leads to the well-established linear least-squares solution
θ = 1N
N∑t=1
ϕ(t)ϕT (t)−1 1N
N∑t=1
ϕ(t)y(t)
D.E. Rivera, Introduction to System Identification, ChE 494/598, January 20, 2004
© Copyright 1998-2004 by D.E. Rivera, All Rights Reserved
13
Model Validation Techniques• Simulation (plot the measured output time series versus the predicted
output from the model).
• Crossvalidation (simulate on a data set different than the one used for parameter estimation; for a number of different model structures, plot the loss function and select the minimum.
• Impulse, step, and frequency responses (compare with physical insight regarding process).
• Scatter Plots/correlation analysis on the prediction errors (make sure they resemble white noise).
• Information criteria (Akaike or Rissanen's Maximum Description Length)
Modeling Requirements for Process Control
Modeling
Control
Modeling/Control
START"Decomposed" "Integrated/Synergistic"
Same result is not obtained from both approaches!
Control-Relevant Identification
• Some general ideas behind control-relevant modeling
• Design variables for control-relevant id
– Control-relevant prefiltering
– Control-relevant input signals
• Brief comments on uncertainty estimation from id data
• Integrated system id and PID controller design
Control-Relevant Prefiltering
Time
Ove
rhea
d T
empe
ratu
re Solid: Raw Data; Dashed: Prefiltered Data
-2
0
2
4
0 20 40 60 80 100 120 140 160 180 200
Time
Ref
lux
Flow
-2
0
2
0 20 40 60 80 100 120 140 160 180 200
The purpose of c-r prefiltering is to emphasize information in the data most important for control purposes
D.E. Rivera, Introduction to System Identification, ChE 494/598, January 20, 2004
© Copyright 1998-2004 by D.E. Rivera, All Rights Reserved
14
Problems in Closed-Loop Identification
C P
PC dF
+++
+ + ++-
r yu
d
ud
υυυυ
-
• crosscorrelation will exist between disturbance (d) and input (u) as a result of the control
• control action will introduce additional bias by "eating away" at excitation
Refinery Debutanizer
FEED FLOW
REFLUX FLOW
REBOIL FEED TEMP
T
FC
FC
TF
FEED TEMP
P
G
T
FUEL GAS SPECIFIC GRAVITY
FUEL GAS FLOW
BOTTOMS TEMP
BOTTOMS-TO-FEED DIFFERENTIAL PRESSURE
MPC loop between Bottoms
Temperature and Fuel Gas Flow SP
-4
-2
0
2
4
0 50 100 150 200 250 300
Output Series
time
-0.1
-0.05
0
0.05
0.1
0 50 100 150 200 250 300
PRBS Signal and Input Series
Debutanizer Closed-Loop Testing
Bottoms
Temperature
Fuel Gas Flowrate
Setpoint
Closed-loop data set generated by signal injection at the Fuel Gas Flowrate Setpoint; dashed line shows external signal (ud); solid lines show u and y, respectively
Multivariable System Identification
• Motivation for multivariable identification
• Multiple input extensions to:
– PRBS, RBS design
– ARX estimation
– PEM
• Brief overviews of Bayard’s, Zhu’s, and subspace methods
• Overview of ASU’s MIMO control-relevant methodology
– “zippered” multisine signals
Illustrations from various applications
D.E. Rivera, Introduction to System Identification, ChE 494/598, January 20, 2004
© Copyright 1998-2004 by D.E. Rivera, All Rights Reserved
15
MIMO PRBS Input Experimental Data (Noise free)
PRBS: Specifying τLdom = 5, τHdom = 33, αs = 2, βs = 3, Tmaxsettle = 165,
and Tsampl = 2 min leads to nr = 7, Tsw = 6 min, and D = 168 min.
Signal magnitude set at usat = 0.001.
0 100 200 300 400 500 600 700 800-0.02
0
0.02
y1[T
21]
MIMO PRBS Input Experiment Data
0 100 200 300 400 500 600 700 800-1
0
1x 10-3
u1[L
]
0 100 200 300 400 500 600 700 800-0.02
0
0.02
y2[T
7]
0 100 200 300 400 500 600 700 800-1
0
1x 10
-3
Time[Min]
u2[V
]
Control-Relevant Identification Methodology
Schroeder-Phased
PRBS
Random Binary Sequence
SIMO
SIMOMIMO
MIMOSIMO
High-Order ARX Estimation
DFTAnalysis Frequency-Weighted
Curvefittingand
Controller Design
“Plant-Friendly”Input Design
Nonparametric Estimation
Control-RelevantParameterEstimation
SIMO: Single-Input, Multi-Output
MIMO:Multi-Input, Multi-Output
Move Horizon OO
OO
OO
OO O
O
FuturePast
k k+1 k+2 k+M k+P
u(k)
y(k)O O
O
O^
Prediction Horizon
Model Predictive Control
Following prediction, the MPC controller solves the fol-lowing multiobjective optimization problem,
min[∆u(k),...,∆u(k+m)]
Keep controlled variables at setpoint︷ ︸︸ ︷p∑�=1
∥∥∥∥ΓY� (y(k + � | k)− r(k + �))∥∥∥∥2
+
Move suppression︷ ︸︸ ︷m∑�=1‖Γu�∆u(k + �− 1)‖2
Semiphysical ModelingBrine-Water Mixing Tank Example
Consider the dynamics of a tank mixing fresh and brine flow streams
D.E. Rivera, Introduction to System Identification, ChE 494/598, January 20, 2004
© Copyright 1998-2004 by D.E. Rivera, All Rights Reserved
16
Mixing Tank Example, ContinuedThe first-principles model for this system is:
Vdc
dt= qc cc − (qc + qw) c
Using a forward-difference approximation on the derivative leads to
c(t + 1)− c(t)T
=qc(t) cc(t)
V− (qc(t) + qw(t)) c(t)
Vwhich solving for c(t + 1) yields
c(t + 1) = c(t) +qc(t) cc(t) T
V− (qc(t) + qw(t)) c(t) T
VRearranging and consolidating terms leads to the semiphysical structure
c(t) = θ1c(t−1)+θ2qc(t−1) cc(t−1)+θ3qc(t−1) c(t−1)+θ4qw(t−1) c(t−1)
θ1, θ2, θ3, and θ4 can be estimated via linear regression.
System Identification Toolbox (SITB)Graphical User Interface (GUI)