I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances1
Adaptive rejection of unknown disturbances Application to active vibration control
I.D. Landau, A. ConstantinescuLaboratoire d’Automatique de Grenoble(INPG/CNRS), France
SevillaOctober 2004
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances2
OutlineOutline
• Introduction• Rejection of unknown stationary disturbances. Basic facts• Rejection of unknown narrow band disturbances in active
vibration control. Realtime results• Adaptive control solutions (indirect/direct)• Further experimental results
(comparison direct/indirect adaptive control)• Conclusions
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances3
Unknown disturbance rejection Unknown disturbance rejection –– classical solutionclassical solution
• requires the use of an additional transducer• difficult choice of the location of the transducer• adaptation of many parameters
++A / Bq d ⋅u(t)
Plant )(p1 t
)(tδ
pp DN /
FIRDisturbance
Environment
Disturbance correlated
measurementDisturbance +Plant
model
AdaptationAlgorithm
y(t)
Obj: minimization of E{y2}
Disadvantages:
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances4
Rejection of unknown disturbances
• Assumption: Plant model almost constant and known (obtained by systemidentification)
• Problem: Attenuation of unknown and/or variable stationary disturbanceswithout using an additional measurement
• Solution: Adaptive feedback control Estimate the model of the disturbance Use the internal model principle Use of the Youla parameterization (direct adaptive control)
Attention :The area is “dominated “ by adaptive signal processing solutions(Widrow’s adaptive noise cancellation) which require an additional transducer
Most surprising : there is an elegant “direct adaptive control” solution
Remainder : Models of stationary disturbances have poles on the unit circle
A class of applications : suppression of unknown vibrations(active vibration control)
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances5
Internal Model Principle
For asymptotic rejection of a disturbance the controllershould incorporate the model for the disturbance
Remember:
Step disturbance model : )1
1(
11−− q
ors
The controller should incorporate an « integrator »(which is the model of the disturbance)
DistrubanceModel
Distrubanceδ
(Dirac)
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances6
Indirect adaptive controlIndirect adaptive control
Twosteps methodology:
1. Estimation of the disturbance model,
2. Compute the controller using the « internal model principle »(the controller contains the model of the disturbance)
)( 1−qDp
++A / Bqd ⋅
u(t)Plant )(p1 t
)(tδ
pp DN /
Disturbance
Environment
Disturbancemodel
y(t)Controller
DisturbanceModel
Estimation
DesignMethod
Specs.
It can be time consuming (if the plant model B/A is of large dimension)
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances7
Direct adaptive rejection of unknown disturbances
Plant
ModelModel
^Adaptationalgorithm
•One directly adapts a filter which is part of the controller.•It tunes the « internal model » inside the controller•Does not changes the poles of the closed loop (YK param.)
Model = Plantw=Ap
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances8
Plant
Model
0/1 S
0R
ABq d−
Q̂
ABq d−
A
ParameterAdaptationAlgorithm
y(t)u(t)
w(t)
p(t)+
++

 
Direct adaptive rejection of unknown disturbances
Equivalent representation of the scheme (case A = as.stable)
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances9
Rejection of unknown narrow band disturbancesin active vibration control
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances10
The Active Suspension System
controller
residual acceleration (force)
primary acceleration / force (disturbance)
1
23
4
machine
support
elastomere cone
inertia chamber
piston
mainchamber
hole
motor
actuator(pistonposition)
sTs m 25.1=++−
A / Bqd ⋅S / R
D / Cq 1d ⋅
u(t)
ce)(disturban
(t)up
Controller
force) (residualy(t)
Plant )(p1 t
Two paths :•Primary•Secondary (double differentiator)
Objective:•Reject the effect of unknownand variable narrow banddisturbances•Do not use an aditionalmeasurement
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances11
The Active Suspension
Residualforce
(acceleration)measurement
Activesuspension
Primary force(acceleration)(the shaker)
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances12
Active Suspension
Primary path
Frequency Characteristics of the Identified Models
Secondary path
0;16;14 === dnn BA
Further details can be obtained from : http://iawww.epfl.ch/News/EJC_Benchmark/
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances13
Direct Adaptive Control : disturbance rejection
Closedloop
Open loop
Disturbance : Chirp
Initialization of theadaptive controller
25 Hz47 Hz
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances14
Direct adaptive control
Time Domain ResultsAdaptive Operation
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances15
19.8 19.9 20 20.1 20.2 20.3 20.4 20.5 20.64
2
0
2
4
Time(s)
Out
put
(res
idua
l for
ce)
19.8 19.9 20 20.1 20.2 20.3 20.4 20.5 20.6
2
0
2
Time(s)
Inpu
t (c
ontro
l act
ion)
32 Hz 20 Hz
29.8 29.9 30 30.1 30.2 30.3 30.4
2
0
2
Time(s)O
utpu
t (re
sidu
al fo
rce)
29.8 29.9 30 30.1 30.2 30.3 30.42
1
0
1
2
Time(s)
Inpu
t (co
ntro
l act
ion)
20 Hz
32 Hz
0 10 20 30 40 50 604
2
0
2
4
Time(s)
Out
put (
resi
dual
forc
e)
0 10 20 30 40 50 602
1
0
1
2
Time(s)
Inpu
t (co
ntro
l act
ion)
32 Hz 20 Hz 32 Hz 42 Hz 32 Hz
Direct Adaptive Control
Output
Input
Initialization of theadaptive controller
Adaptation transient Adaptation transient
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances16
Notations
K G
v(t) p(t)y(t)
v(t)r(t) u(t)

)q(A)q(Bq)q(G
1
1d1
−
−−− =
)()(')()('
)()(
)( 11
11
1
11
−−
−−
−
−− ==
qHqSqHqR
qSqR
qKR
S
Output Sensitivity function :
)z(R)z(Bz)z(S)z(A)z(P 11d111 −−−−−− +=Closed loop poles :
)()()(')(
)( 1
1111
−
−−−− =
zPzHzSzA
zS Syp
The gain of Syp is zero at the frequencies where Syp(ejω)=0(perfect attenuation of a disturbance at this frequency)
+
ypS
HR and HS are prespecified
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances17
Dirac circle;unit on the poles
edisturbanc ticdeterminis : )()(
)()( 1
1
=→
⋅= −
−
d(t) D
tqD
qNtp
p
p
p δ
Deterministic framework
Stochastic framework
)(0, sequence noise hiteGaussian w circle;unit on the poles
edisturbanc stochastic : )()(
)()( 1
1
σ=→
⋅= −
−
e(t) D
teqD
qNtp
p
p
p
Disturbance model
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances18
).()(')(
);()(')(
:Controller
111
111
−−−
−−−
⋅=
⋅=
qHqSqS
qHqRqR
S
R
Internal model principle: HS(z1)=Dp(z1)
Closed loop system. NotationsClosed loop system. Notations
)()(qD
1
)P(q
)(q)(q)S'(q)HA(qy(t)
1p
1
111S
1
tN p δ⋅⋅=
++−
A / Bq d ⋅S / Ru(t)
Controller Plant )(p t
)(tδ
pp DN / Dirac circle;unit on the poles
edisturbanc ticdeterminis : )()(
)()( 1
1
=→
⋅= −
−
d(t) D
tqD
qNtp
p
p
p δ
)()()()()( :poles CL
)()()()(
)()()( :Output
11111
11
11
−−−−−−
−−
−−
+=
⋅=⋅=
qRqBzqSqAqP
tpqStpqP
qSqAty
d
yp
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances19
Indirect adaptive controlIndirect adaptive control
Twosteps methodology:
1. Estimation of the disturbance model,
2. Computation of the controller, considering
)( 1−qDp
)(ˆ)( 11 −− = qDqH pS
++A / Bqd ⋅
u(t)Plant )(p1 t
)(tδ
pp DN /
Disturbance
Environment
Disturbancemodel
y(t)Controller
DisturbanceModel
Estimation
DesignMethod
Specs.
It can be time consuming (if the plant model B/A is of large dimension)
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances20
Indirect adaptive controlIndirect adaptive control
Step II: Computation of the controller
'
'ˆ
ˆ
SDS
PBRqSDA
DH
p
dp
pS
=
=+
=−
Solving Bezout equation (for S’ and R)
Remark:It is time consuming for large dimension of the plant model
Step I : Estimation of the disturbance model ARMA identification (Recursive Extended Least Squares)
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances21
Plant
ModelModel
Central contr: [R0(q1),S0(q1)].
CL poles: P(q1)=A(q1)S0(q1)+qdB(q1)R0(q1).
Control: S0(q1) u(t) = R0 (q1) y(t)
Control: S0(q1) u(t) = R0 (q1) y(t)  Q (q1) w(t),
where w(t) = A (q1) y(t)  qdB (q1) u(t).
CL poles: P(q1)=A(q1)S0(q1)+qdB(q1)R0(q1).
Qparameterization :R(z1)=R0(q1)+A(q1)Q(q1);S(q1)=S0(z1)qdB(q1)Q(q1).
InternalInternal modelmodel principleprinciple andand QQparameterizationparameterization))
Model= Plantw=Ap
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances22
Internal model principle and Q parameterization
Central contr: [R0(q1),S0(q1)].
CL Poles: P(q1)=A(q1)S0(q1)+qdB(q1)R0(q1).
Control: S0(q1) u(t) = R0 (q1) y(t)
Qparameterization :R(z1)=R0(q1)+A(q1)Q(q1);S(q1)=S0(z1)qdB(q1)Q(q1).
Closed Loop Poles remain unchanged
pd MDBQqSS =−= −
0 0SBQqMD dp =+ −Solve:
? ?
Internal model assignment on Q
Q(q1) computed such as [S(q1)] contains the internal model of the disturbance
Q can be used to “directly”tune the internal model without changing the closed loop poles(see next)
Will lead also to an « indirect adaptive control solution »
BUT:
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances23
Goal: minimize y(t) (according to a certain criterion).
).()()(
)()(
)()(
)( 11
1
1
10 twqQ
qPqBq
twqPqS
td
⋅−⋅= −−
−−
−
−
ε
)( of valueestimatedan be ˆLet 11 −qQ)(t,qQ 
Direct Adaptive Control (unknown Dp)
)0 termedisturbanc )1((
)1()()(
)()],1(ˆ)([)1(
thatshowcan We
1
111
→=+
++⋅⋅+−=+−
−∗−−−
tv
tvtwqP
qBqqtQqQt
dε
Hypothesis: Identified (known) plant model (A,B,d).
[ ] [ ])(
)P(q))Q(q(qq)(qS
)()(qD)(q
)P(q))Q(q(qq)(qS)A(q
y(t)
e.disturbanc ticdeterminis : )()()(
)(Consider
1
11d10
1p
1
1
11d10
1
1
1
1
twB
tNB
tqDqN
tp
p
p
p
=⋅⋅=
⋅=−
−
δ
δ
(Based on an ideea of Y. Z. Tsypkin)
Leads to a directadaptive control
Define:w
ε+

Q̂
PS /0
S
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances24
[ ] [ ]
).()()1()(
);()()1()(A1) w(t
);()(
)()(
);1()(
)()1(
and
1)(for ,)1()()( ;)(q̂)(q̂(t)ˆ
where
),()1(ˆ)1()1( :error adaptation
);()(ˆ)1()1( :error adaptation
11
11
1
1
2
1
10
1
2210
1
10
tuqBtuqB
tuqBqtyq
twqP
qBqtw
twqP
qStw
ntwtwttt
tttwtposterioriA
tttwtprioriA
d
d
QTT
T
T
⋅=+⋅
⋅−+⋅=+
⋅=
+⋅=+
=−==
+−+=+
−+=+
−∗−
−∗−−
−
−∗−
−
−
φθ
φθε
φθε
Parameter adaptation algorithm:
+=++++=+
−− ).()()()()()1(1);(t(t)1)F(t(t)ˆ1)(tˆ
21
11
0
ttttFttF Tφφλλεφθθ
The Algorithm
1−=PDQ nn
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances25
Plant
ModelModel
^Adaptationalgorithm
Direct adaptive rejection of unknown disturbances
• The order of the Q polynomial depends upon the order of the disturbance modeldenominator (DP) and not upon the complexity of the plant model
• Less parameters to estimate then for the identification of the disturbance model
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances26
Further experimental results on the active suspensionComparison between direct/indirect adaptive control
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances27
Narrow band disturbances = variable frequency sinusoid ⇒ nQ = 1Frequency range: 25 ÷ 47 Hz
Nominal controller [R0(q1),S0(q1)]: nR0=14, nS0=16
Evaluation of the two algorithms in realtime
RealRealtimetime resultsresults
• The algorithm stops when it converges and the controller is applied.• It restarts when the variance of the residual force is bigger than a given threshold.• As long as the variance is not bigger than the threshold, the controller is constant.
Implementation protocol 1: Selftuning
Implementation protocol 2: Adaptive• The adaptation algorithm is continuously operating• The controller is updated at each sample
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances28
Frequency domain results – indirect adaptive method
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances29
Frequency domain results – direct adaptive method
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances30
Indirect adaptive method Direct adaptive method
Time Domain ResultsSelftuning Operation
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances31
Indirect adaptive method Direct adaptive method
Time Domain ResultsAdaptive Operation
0 0.5 1 1.5 2 2.5 3 3.5 4
x 104
6
4
2
0
2
4
6
Indirect method in adaptative operation
Samples
Res
idua
l for
ce [
V]
32 Hz 25 Hz 32 Hz 47 Hz 32 Hz
•Direct adaptive control leads to a much simpler implementationand better performance than indirect adaptive control•Direct adaptive control in adaptive mode operation gives betterresults than direct adaptive control in selftuning mode
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances32
ConclusionsConclusions
Using internal model principle, adaptive feedback control solutions can be provided for the rejection of unknown disturbances
Both direct and indirect solutions can be provided
Two modes of operation can be used : selftuning and adaptive
Direct adaptive control is the simplest to implement
Direct adaptive control offers better performance
The methodology has been extensively tested on an activesuspension system
Open problem:Theoretical study of the plant – model mismatch
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances33
).()()(
)()(
)()(
)( 11
1
1
10 twqQ
qPqBq
twqPqS
td
⋅−⋅= −−
−−
−
−ε
Direct Adaptive Control (unknown Dp)
0SBQqMD dp =+ −
We need to express ε(t)as:
[ ] )(),1(ˆ)()1( 11 tqtQqQt Ψ+−=+ −−ε
(*)
Using: , (*) becomes
)1()(
)()()(
)()()],1(ˆ)([)1( 1
11
1
111 ++⋅⋅+−=+ −
−−
−
−∗−−− tp
qP
qDqMtw
qPqBqqtQqQt p
dε
Vanishing term
)1()(
)()()1(
)(
)()(1
11
1
11
+=+ −
−−
−
−−
tqP
qNqMtp
qP
qDqM pp δ
)1()(
)()(
)()(
1
1
1
1+⋅=⋅ −
−−
−
−∗−tw
qPqBq
twqP
qBq dd
Details:
[ ]QiqtQt
iQˆ,minarg)*,(ˆ
0
2ˆ
1 ∑==
− ε
search recursively for :Instead of solving 0SBQqMD dp =+ −