lecture 15: nonlinear adaptive systems - umu.se · lecture 15: nonlinear adaptive systems •...
TRANSCRIPT
Lecture 15: Nonlinear adaptive systems
• Adaptive feedback linearization
• Adaptive backstepping design
• Adaptive forwarding design
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 1/12
Feedback Linearization
Consider the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + f(x1)
ddt
x2 = u
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 2/12
Feedback Linearization
Consider the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + f(x1),ddt
x2 = u
Introduce the nonlinear change of coordinates
ξ1 = x1
ξ2 = x2 + f(x1)
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 2/12
Feedback Linearization
Consider the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + f(x1),ddt
x2 = u
Introduce the change of coordinates as
ξ1 = x1, ξ2 = x2 + f(x1)
Then
ddt
ξ1 = ξ2
ddt
ξ2 = ddt
x2 + ddt
f(x1) = u + ξ2f ′(ξ1)
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 2/12
Feedback LinearizationConsider the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + f(x1),ddt
x2 = u
Introduce the nonlinear change of coordinates
ξ1 = x1, ξ2 = x2 + f(x1)
Thenddt
ξ1 = ξ2, ddt
ξ2 = u + ξ2f ′(ξ1)
Making the feedback transform (u → v)
u = −a2ξ1 − a1ξ2 − ξ2f ′(ξ1) + v
we bring the system dynamics into the linear form
ddt
ξ1 = ξ2, ddt
ξ2 = −a2ξ1 − a1ξ2 + v
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 2/12
Adaptive Feedback Linearization
Consider the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1)
ddt
x2 = u
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 3/12
Adaptive Feedback Linearization
Consider the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
Introduce the nonlinear change of coordinates
ξ1 = x1
ξ2 = x2 + θ · f(x1)
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 3/12
Adaptive Feedback Linearization
Consider the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
Introduce the nonlinear change of coordinates
ξ1 = x1, ξ2 = x2 + θ · f(x1)
Then
ddt
ξ1 = x2 + θ0 · f(x1) = ξ2 + (θ0 − θ)f(ξ1)
ddt
ξ2 = ddt
x2 + ddt
[θ · f(x1)] = u + ddt
[θ] · f(x1) + θ · ddt
f(x1)
= u + ddt
[θ] · f(x1) + θ · f ′(x1) [x2 + θ0 · f(x1)]
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 3/12
Adaptive Feedback Linearization
Consider the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
Introduce the nonlinear change of coordinates
ξ1 = x1, ξ2 = x2 + θ · f(x1)
Then
ddt
ξ1 = ξ2 + (θ0 − θ)f(ξ1)
ddt
ξ2 = u + ddt
[θ] · f(x1) + θ · f ′(x1) [x2 + θ0 · f(x1)]
Introduce the feedback transform (u → v)
u = −a2ξ1−a1ξ2− ddt
[θ]·f(x1)−θ·f ′(x1) [x2 + θ · f(x1)]+v
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 3/12
Adaptive Feedback Linearization
The system dynamics before feedback transform
ddt
ξ1 = ξ2 + (θ0 − θ)f(ξ1)
ddt
ξ2 = u + ddt
[θ] · f(x1) + θ · f ′(x1) [x2 + θ0 · f(x1)]
Introduce the feedback transform (u → v)
u = −a2ξ1−a1ξ2− ddt
[θ]·f(x1)−θ·f ′(x1) [x2 + θ · f(x1)]+v
The system dynamics after the feedback transform is
d
dt
[
ξ1
ξ2
]
=
[
0 1
−a2 −a1
] [
ξ1
ξ2
]
+
[
f(ξ1)
θf ′(x1)f(x1)
]
(θ0−θ)+
[
0
1
]
v
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 3/12
Adaptive Feedback Linearization (Cont’d)
Choose the target dynamics for
d
dt
[
ξ1
ξ2
]
=
[
0 1
−a2 −a1
] [
ξ1
ξ2
]
+
[
f(ξ1)
θf ′(x1)f(x1)
]
(θ0−θ)+
[
0
1
]
v
as
d
dt
[
xm1
x2m
]
=
[
0 1
−a2 −a1
] [
xm1
x2m
]
+
[
0
a2
]
vm
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 4/12
Adaptive Feedback Linearization (Cont’d)
Choose the target dynamics for
d
dt
[
ξ1
ξ2
]
=
[
0 1
−a2 −a1
] [
ξ1
ξ2
]
+
[
f(ξ1)
θf ′(x1)f(x1)
]
(θ0−θ)+
[
0
1
]
v
as
d
dt
[
xm1
x2m
]
=
[
0 1
−a2 −a1
] [
xm1
x2m
]
+
[
0
a2
]
vm
Thenv = a2vm
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 4/12
Adaptive Feedback Linearization (Cont’d)
Introducing the error signal
e(t) = ξ(t) − xm(t)
we get the error dynamics
d
dt
[
e1
e2
]
=
[
0 1
−a2 −a1
]
︸ ︷︷ ︸
A
[
e1
e2
]
+
[
f(ξ1)
θf ′(x1)f(x1)
]
︸ ︷︷ ︸
B
(θ0 − θ)
It is almost as we have before, but B is dependent on states!
The possible choice for θ-dynamics is
d
dtθ = γB(·)T Pe
where γ > 0 and P is a solution for: AT P + P A < 0
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 5/12
Backstepping design
Consider the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + f(x1)
ddt
x2 = u
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 6/12
Backstepping design
Consider the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + f(x1),ddt
x2 = u
Treat x2 as a virtual control signal v1 for x1 in the 1st equation
x1 = v1 + f(x1), x2 = v1
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 6/12
Backstepping design
Consider the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + f(x1),ddt
x2 = u
Treat x2 as a virtual control signal v1 for x1 in the 1st equation
x1 = v1 + f(x1), x2 = v1
Use Lyapunov-based design with
V1(x1) = 12
x21 ⇒ V1 = x1(v1 + f(x1)) < 0
so that we can take with c1 > 0
v1 = −f(x1) − c1 x1 ⇒ V1 = −c1 x21 < 0
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 6/12
Backstepping designConsider the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + f(x1),ddt
x2 = u
Treat x2 as a virtual control signal v1 for x1 in the 1st equation
x1 = v1 + f(x1), x2 = v1
Use Lyapunov-based design with
V1(x1) = 12
x21 ⇒ V1 = x1(v1 + f(x1)) < 0
so that we can take with c1 > 0
v1 = −f(x1) − c1 x1 ⇒ V1 = −c1 x21 < 0
Define α1(x1) = v1 to be the desired law of change for x2.
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 6/12
Backstepping design (Cont’d)
For the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + f(x1),ddt
x2 = u
Define α1(x1) to be the desired law of change of the variable x2
α1(x1) = −f(x1) − c1 x1
and introduce the new variable z2 to measure the difference:
ddt
x1 = f(x1) + α1(x1)︸ ︷︷ ︸
−c1 x1
+ (x2 − α1(x1))︸ ︷︷ ︸
z2
, ddt
x2 = u
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 7/12
Backstepping design (Cont’d)
For the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + f(x1),ddt
x2 = u
Define α1(x1) to be the desired law of change of the variable x2
α1(x1) = −f(x1) − c1 x1
and introduce the new variable z2 = x2 − α1(x1):
ddt
x1 = −c1 x1 + z2, ddt
z2 = u − α′
1(x1)(ddt
x1)
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 7/12
Backstepping design (Cont’d)
For the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + f(x1),ddt
x2 = u
Define α1(x1) to be the desired law of change of the variable x2
α1(x1) = −f(x1) − c1 x1
and introduce the new variable z2 = x2 − α1(x1):
ddt
x1 = −c1 x1 + z2, ddt
z2 = u − α′
1(x1)(−c1 x1 + z2)
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 7/12
Backstepping design (Cont’d)
For the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + f(x1),ddt
x2 = u
Define α1(x1) to be the desired law of change of the variable x2
α1(x1) = −f(x1) − c1 x1
and introduce the new variable z2 = x2 − α1(x1):
ddt
x1 = −c1 x1 + z2, ddt
z2 = u − α′
1(x1)(−c1 x1 + z2)
Use Lyapunov-based design with
V2 = V1(x1)+12
z22 ⇒ V2 = −c1 x2
1+x1 z2+z2 ( ddt
z2) < 0
so that we can take with c2 > 0
u = α2(x1, z2) ⇒ V2 = −c1 x21 − c2 z2
2 < 0
where α2(x1, z2) = α′
1(x1)(−c1 x1 + z2) − x1 − c2 z2.
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 7/12
Adaptive backstepping design
Consider the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1)
ddt
x2 = u
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 8/12
Adaptive backstepping design
Consider the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
Treat x2 as a virtual control signal v1 for x1 in the 1st equation
x1 = v1 + θ0 · f(x1), x2 = v1
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 8/12
Adaptive backstepping design
Consider the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
Treat x2 as a virtual control signal v1 for x1 in the 1st equation
x1 = v1 + θ0 · f(x1), x2 = v1
Use Lyapunov-based design with θ = θ − θ0
V1(x1, θ) = 12(x2
1+1γθ2) ⇒ V1 = x1(v1+θ0·f(x1))+
1γθθ ≤ 0
so that we can take with c1 > 0 and γ > 0
v1 = −θ·f(x1)−c1 x1, θ = γ x1 f(x1) ⇒ V1 = −c1 x21 ≤ 0
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 8/12
Adaptive backstepping designConsider the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
Treat x2 as a virtual control signal v1 for x1 in the 1st equation
x1 = v1 + f(x1), x2 = v1
Use Lyapunov-based design with θ = θ − θ0
V1(x1, θ) = 12(x2
1+1γθ2) ⇒ V1 = x1(v1+θ0·f(x1))+
1γθθ ≤ 0
so that we can take with c1 > 0 and γ > 0
v1 = −θ·f(x1)−c1 x1, θ = γ x1 f(x1) ⇒ V1 = −c1 x21 ≤ 0
Define α1(x1, θ) = v1 to be the desired law of change for x2.
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 8/12
Adaptive backstepping design (Cont’d)
For the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
Define α1(x1, θ) to be the desired law of change of x2
α1(x1, θ) = −θ f(x1) − c1 x1
and introduce the new variable z2 to measure the difference:
ddt
x1 = θ0 · f(x1) + α1(x1, θ)︸ ︷︷ ︸
−c1 x1−θ f(x1)
+ (x2 − α1(x1, θ))︸ ︷︷ ︸
z2
, ddt
x2 = u
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 9/12
Adaptive backstepping design (Cont’d)
For the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
Define α1(x1, θ) to be the desired law of change of x2
α1(x1, θ) = −θ f(x1) − c1 x1
and introduce the new variable z2 = x2 − α1(x1, θ):
ddt
x1 = −c1 x1−θ f(x1)+z2, ddt
z2 = u−∂α1
∂x1
( ddt
x1)−∂α1
∂θθ
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 9/12
Adaptive backstepping design (Cont’d)
For the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
Define α1(x1, θ) to be the desired law of change of x2
α1(x1, θ) = −θ f(x1) − c1 x1
and introduce the new variable z2 = x2 − α1(x1, θ):
ddt
x1 = −c1 x1−θ f(x1)+z2, ddt
z2 = u−∂α1
∂x1
( ddt
x1)+f(x1) θ
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 9/12
Adaptive backstepping design (Cont’d)
For the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
Define α1(x1, θ) to be the desired law of change of x2
α1(x1, θ) = −θ f(x1) − c1 x1
and introduce the new variable z2 = x2 − α1(x1, θ):
ddt
x1 = −c1 x1−θ f(x1)+z2, ddt
z2 = u−∂α1
∂x1
( ddt
x1)+f(x1) θ
We will use Lyapunov-based design with
V2(x1, z2, θ) = V1(x1, θ) + 12
z22 = 1
2
(
x21 + 1
γθ2 + z2
2
)
achieving with c2 > 0
V2 = −c1 x21 − c2 z2
2 ≤ 0
with u = α2(x1, z2, θ).
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 9/12
Adaptive backstepping design (Cont’d)
For the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
introduce new state variables z2 and θ
z2 = x2 − α1(x1, θ) = x2 + θ f(x1) + c1 x1
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 10/12
Adaptive backstepping design (Cont’d)
For the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
introduce new state variables z2 and θ
z2 = x2 − α1(x1, θ) = x2 + θ f(x1) + c1 x1
Dynamics can be rewritten asddt
x1 = −c1 x1 − θ f(x1) + z2,
ddt
z2 = u+(θ f ′(x1)+ c1) (−c1 x1 − θ f(x1)+ z2)+ f(x1) θ
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 10/12
Adaptive backstepping design (Cont’d)
For the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
introduce new state variables z2 and θ
z2 = x2 − α1(x1, θ) = x2 + θ f(x1) + c1 x1
Dynamics can be rewritten asddt
x1 = −c1 x1−θ f(x1)+z2, ddt
z2 = v−(θ f ′(x1)+c1) θ f(x1)
v = u + (θ f ′(x1) + c1) (−c1 x1 + z2) + f(x1) θ
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 10/12
Adaptive backstepping design (Cont’d)
For the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
introduce new state variables z2 and θ
z2 = x2 − α1(x1, θ) = x2 + θ f(x1) + c1 x1
Dynamics can be rewritten asddt
x1 = −c1 x1−θ f(x1)+z2, ddt
z2 = v−(θ f ′(x1)+c1) θ f(x1)
v = u + (θ f ′(x1) + c1) (−c1 x1 + z2) + f(x1) θ
Derivative of the Lyapunov function
V2(x1, z2, θ) =1
2
(
x21 + 1
γθ2+ z2
2
)
is given byV2 = x1
ddt
x1 + z2ddt
z2 + 1γθθ
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 10/12
Adaptive backstepping design (Cont’d)
For the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
introduce new state variables z2 and θ
z2 = x2 − α1(x1, θ) = x2 + θ f(x1) + c1 x1
Dynamics can be rewritten asddt
x1 = −c1 x1−θ f(x1)+z2, ddt
z2 = v−(θ f ′(x1)+c1) θ f(x1)
v = u + (θ f ′(x1) + c1) (−c1 x1 + z2) + f(x1) θ
Derivative of the Lyapunov function
V2(x1, z2, θ) =1
2
(
x21 + 1
γθ2+ z2
2
)
is given by
V2 = x1(−c1 x1−θ f(x1)+z2)+z2(v−(θ f ′(x1)+c1) θ f(x1))+1γθθ
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 10/12
Adaptive backstepping design (Cont’d)
For the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
introduce new state variables z2 and θ
z2 = x2 − α1(x1, θ) = x2 + θ f(x1) + c1 x1
Dynamics can be rewritten asddt
x1 = −c1 x1−θ f(x1)+z2, ddt
z2 = v−(θ f ′(x1)+c1) θ f(x1)
v = u + (θ f ′(x1) + c1) (−c1 x1 + z2) + f(x1) θ
Derivative of the Lyapunov function
V2(x1, z2, θ) =1
2
(
x21 + 1
γθ2+ z2
2
)
is given by
V2 = −c1 x21 − c2 z2
2 + z2 (v + x1 + c2 z2) + θ(· · · + 1γθ)
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 10/12
Adaptive backstepping design (Cont’d)
Finally, for the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
andz2 = x2 + θ f(x1) + c1 x1
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 11/12
Adaptive backstepping design (Cont’d)
Finally, for the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
andz2 = x2 + θ f(x1) + c1 x1
We have
V2(x1, z2, θ) =1
2
(
x21 + 1
γθ2+ z2
2
)
, V2 = −c1 x21−c2 z2
2
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 11/12
Adaptive backstepping design (Cont’d)
Finally, for the nonlinear system with f(·) ∈ C1
ddt
x1 = x2 + θ0 · f(x1),ddt
x2 = u
andz2 = x2 + θ f(x1) + c1 x1
We have
V2(x1, z2, θ) =1
2
(
x21 + 1
γθ2+ z2
2
)
, V2 = −c1 x21−c2 z2
2
provided
−x1 − c2 z2 = u + (θ f ′(x1) + c1) (−c1 x1 + z2) + f(x1) θ
and
θ = γ(
x1 + z2 (θ f ′(x1) + c1))
f(x1)
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 11/12
Next Lecture / Assignments:
Last meetings: May 23, 13:00-15:00, in A206Tekn – Recitations;June 9, 10:00-12:00, in A206Tekn: – Project reports / EXAMHomework problem: Consider the nonlinear system
x1 = x2 + a x21, x2 = b x1 x2 + u
where a and b are unknown parameters.• Design an adaptive state feedback controller using the
backstepping method.• Argue why x1(t) → 0 and x2(t) → 0.• Simulate the closed-loop system with a = b = 1.• How to modify the design to ensure that the output y = x1
follows the modelGm(s) =
1
s2 + 1.4 s + 1
driven by a unit step signal uc(t)?
c©Leonid Freidovich. May 21, 2008. Elements of Iterative Learning and Adaptive Control: Lecture 15 – p. 12/12