Professional Documents
Culture Documents
Chuong 3 LTDKNC
Chuong 3 LTDKNC
Giảng viên:
ê TS. Huỳnh Thái Hoàng
Bộ môn Điều Khiển Tự Động
Khoa Điện – Điện Tử
Đại học Bách Khoa TP
TP.HCM
HCM
Email: hthoang@hcmut.edu.vn
Homepage: http://www4.hcmut.edu.vn/~hthoang/
Điều khiển tối ưu tĩnh: chỉ tiêu chất lượng không phụ thuộc thời gian
Điều khiển tối ưu động: chỉ tiêu chất lượng phụ thuộc thời gian
Bài toán
t á chỉnh
hỉ h ttoàn
à phương
hươ tuyến
t ế tí tínhh (Linear
(Li Quadractic
Q d ti
Regulator – LQR)
Bài toán điều khiển tối ưu H2
…
250
200
150
L 100
50
-50 u* 4
6 2
4 2 0
0
u2
-2 -4 -6 -4
4
-2
u1
⇒ Biến đổi bài toán tìm cực tiểu hàm L(x,u) với ràng buộc f(x,u) = 0
thà h bài toán
thành t á tìm
tì cực tiểu
tiể không
khô ràng
à buộc
b ộ hàhàm Hamilton H( )
H ilt H(x,u)
ế gọn lại: λ T = − Lx [ f x ]
−1
Viết
⎧ H x ( x , u ) = Lx ( x , u ) + λ T f x ( x , u ) = 0
⎪
⎨ H u ( x , u) = Lu ( x, u) + λ f u ( x, u) = 0
T
⎪⎩ H λ ( x , u) = f ( x, u) = 0
trong đó: H ( x , u) = L( x, u) + λT f ( x , u)
Giải hệ phương
h ttrình,
ì h ta
t đđược:
u* = [− 0.8412 0.4735] λ = −0.5353
T
250
200
150
L 100
50
-50
u* 4
6 2
4 2 0
0
u2
-2 -4 -6 -4
4
-2
u1
Tìm hàm: L( x, u ) = ( x − 2) 2 + (u − 2) 2
Tì cực trịị hà
Với điều kiện ràng buộc: u = x 2 + 3x − 6
Giải:
Viết lại
ạ điều kiện
ệ ràngg buộc:
ộ
u = x 2 + 3x − 6 ⇔ x 2 + 3x − 6 − u = 0
Hàm
Hà HHamilton:
ilt
H ( x, u ) = L( x, u ) + λT f ( x, u )
⇒ H ( x, u ) = ( x − 2) 2 + (u − 2) 2 + λ ( x 2 + 3x − 6 − u )
H ( x, u ) = ( x − 2) 2 + (u − 2) 2 + λ ( x 2 + 3x − 6 − u )
22 March 2011 © H. T. Hoàng - HCMUT 22
Tìm cực trị có ràng buộc – Thí dụ 3
Giải:
Hà H
Hàm Hamilton:
ilt
H ( x , u ) = L( x , u ) + λ T f ( x , u )
⇒ H ( x, u ) = x12 + 3 x22 + u 2 + λ1 (2 x1 + x2 − 4) + λ2 ( x1 + u + 2)
L : ℜn × ℜn × ℜ → ℜ
Chú ý: Phiếm hàm là hàm của hàm
(f ti l = function
(functional f ti off function)
f ti )
*
Phiếm hàm J ( x ) có cực tiểu cục bộ tại x (t ) nếu
J ( x (t )) ≥ J ( x * (t ))
nằm trong lân cận ε của (t )
*
với mọi hàm x (t ) x
x (t ) − x * (t ) ≤ ε
22 March 2011 © H. T. Hoàng - HCMUT 26
Tìm cực trị phiếm hàm?
Nhắc llạii cực ttrịị hà
Nhắ hàm:
¾ Điều kiện cần: đạo hàm bậc 1 của hàm cần tìm cực trị bằng 0
⇒ điểm dừng
¾ Điểm dừng có đạo hàm bậc 2 xác định dương
⇒ điểm cực ự tiểu
x (t )
x (t ) + δx (t )
t
1
⇒ δJ ( x) = ∫ [2 xδx]dt
0
Cho phiếm
ế hàm dạng tích phân tổng
ổ quát:
tf
J ( x ) = ∫ L( x )dt
t0
Biến p
phân của phiếm
p hàm dạng
ạ g tích pphân được
ợ tính như sau:
tf
⎧⎡ ∂L( x ) ⎤ ⎫
δJ ( x ) = ∫ ⎨⎢ ⎥δx ⎬dt
t0 ⎩⎣
∂x ⎦ ⎭
Biến p
phân pphiếm hàm:
tf ⎡ ∂L( x, x& , t ) ∂L( x, x& , t ) ⎤
δJ = ∫ ⎢ δx + δx& ⎥dt
t0
⎣ ∂x ∂x& ⎦
t
Chú ý rằng: δx (t ) = ∫ δx& (τ )dτ + δx (t0 )
t0
δx (t0 ) = δx (t f ) = 0
Thực
ự hiệnệ biến đổi tích phân
p ((sử dụng
ụ g công
g thức tích pphân từng
g phần),
p ),
suy ra:
tf
⎡ ∂L( x, x& , t ) d ∂L( x, x& , t ) ⎤
δJ = ∫ ⎢ − ⎥δxdt
t0 ⎣
∂x dt ∂x& ⎦
22 March 2011 © H. T. Hoàng - HCMUT 31
Điều kiện cần để phiếm hàm đạt cực trị cục bộ
Điều kiện cần để phiếm hàm J ( x ) đạt cực trị cục bộ tại x * (t
(t ) là biến
*
phân của J ( x ) phải bằng 0 tại x (t )
δJ ( x ) = 0 x=
x x *
Suy ra, điều kiện cần để bài toán tối ưu động không ràng buộc có
cực trị là:
∂L( x, x& , t ) d ∂L( x, x& , t ) ∂L d ∂L
− =0 ⇔ − =0
∂x dt ∂x& ∂x dt ∂x&
Phương trình trên được gọi là phương trình Euler-Lagrange.
Trường hợp đặc biệt khi L không phụ thuộc tường minh vào t, t dạng
đơn giản của phương trình Euler-Lagrange là:
tf
⎡ ∂L( x, x& , t ) d ∂L( x, x& , t ) ⎤
(= ∫là⎢⎣ hằng
∂L
L − x& = c δJ (c hằ ∂xsố)ố) − dt ∂x& ⎥
⎦
δxdt
∂x
& t 0
L : ℜn × ℜn × ℜ → ℜ
f : ℜn × ℜn × ℜ → ℜ p
( ) với ràng
ự tiểu J(x)
⇒ Biến đổi bài toán tìm cực ộ f ( x, x& , t ) = 0
g buộc
thành bài toán tìm cực tiểu không ràng buộc phiếm hàm J ( x )
Điều kiện
ệ cần để pphiếm hàm J ( x ) có cực
ự trịị là:
∂H ( x, x& , λ , t ) d ∂H ( x, x& , λ , t )
− =0
∂x dt ∂x&
(Phương trình Euler-Lagrange của bài toán tối ưu động có ràng buộc)
22 March 2011 © H. T. Hoàng - HCMUT 36
Tối ưu hóa động có ràng buộc dạng tích phân
Bài toán tối ưu động có ràng buộc: tìm vector hàm x(t) xác định trên
đoạn [t0, tf] sao cho phiếm hàm J(x) đạt cực tiểu:
tf
J ( x ) = ∫ L( x, x& , t )dt → min
t0
tf
với điều kiện ràng buộc ∫t0
f ( x, x& , t )dt = q
J ( x ) = ∫ L( x , x& , t )dt
t0 tf
Giải:
Hàm Hamilton:
H ( x, x& , λ , t ) = L( x, x& , t ) + λf ( x, x& , t )
⇒ H ( x, x& , λ , t ) = x& 2 (t ) + λx(t )
λ
x(t ) = t 2 + c1t + c2
4
22 March 2011 © H. T. Hoàng - HCMUT 41
Tối ưu hóa động có ràng buộc – Thí dụ 2
Tìm vector hàm x (t ) = [x1 (t ) x2 (t )]T sao cho phiếm hàm dưới đây
đạt cực tiểu:
[ ]
2
J ( x ) = ∫ 5( x1 − 1) 2 + x22 dt → min
0
Giải:
Hàm Hamilton:
H ( x, x& , λ , t ) = L( x, x&, t ) + λf ( x, x& , t )
⇒ H ( x, x& , λ , t ) = [5( x1 − 1) 2 + x22 ] + λ ( x&1 + 2 x1 − x2 )
Nghiệm x*(t) của phương trình vi phân (*) ứng với tín hiệu điều
khiển ố ưu u*(t) gọi là quỹ đạo trạng thái tối
ể tối ố ưu.
J (u) = φ ( x (t f )) + ∫ L( x (t ), ) t ) + λT (t )[ f ( x (t ),
) u(t ), ) u(t )) − x& (t )]dt
0
Định nghĩa hàm Hamilton: H (t ) = L( x , u, t ) + λT (t ) f ( x , u, t )
tf
∂∂H
H = φ + ∫ − λT
λ& (t) = − J ( u ) ( x (t )) [ H (t ) (t ) x& ]dt
d
¾ được gọi là phương trình đồng trạng tháif
∂x 0
min J (u) = ∫ L( x (t ),
) u(t ),
) t )dt
u(t )
0
∂x
∂H
Điều kiện dừng: =0
∂u
Điều kiện đầu: x (t0 ) = x0
Điều kiện
ệ cuối: x (t f ) = x f (Bài toán điểm cuối cố định)
∂φ (t f )
hoặc λ (t f ) =
T
(Bài toán điểm cuối tự do)
∂x
Bước 5: Giải hệ phương trình ở trên sẽ tìm được u*(t) và x*(t)
22 March 2011 © H. T. Hoàng - HCMUT 52
Điều khiển tối ưu – Thí dụ 1
Đặc tính động học nhiệt độ lò sấy cho bởi phương trình:
y& (t ) = −2( y (t ) − ya ) + u (t )
trong đó y(t) là nhiệt độ phòng và ya = 250C là nhiệt độ môi trường;
u(t) là cường độ dòng nhiệt cấp lò sấy và t là thời gian (giờ)
Yêu cầu: Thiết kế luật điều khiển u(t) điều khiển nhiệt độ nhiệt độ lò
sấy
ấ sao cho sau một giờ đạt đếnế càng gầnầ nhiệt độ đặt yd = 750C
càng tốt và tối thiểu năng lượng tiêu tốn.
Giải:
Bước 1: Thành lập phương trình trạng thái:
Đặt biến trạng thái: x(t ) = y (t ) − ya
⇒ Phương trình trạng thái của lò sấy là: x& (t ) = −2 x(t ) + u (t )
2 20
(Đây là bài toán tối
ố ưu điểm
ể cuối
ố tự do)
trong đó ρ là trọng số tùy chọn (muốn trạng thái cuối càng gần xf thì
chọn ρ càng lớn)
Điều kiện đầu: x0 = 0; t f = 1
Bước 3: Định nghĩa hàm Hamilton:
H ( x, u, λ , t ) = L( x, u, t ) + λ (t ) f ( x , u, t )
1 2
⇒ H ( x , u, λ , t ) = u (t ) + λ (t )[−2 x(t ) + u (t )]
2
22 March 2011 © H. T. Hoàng - HCMUT 54
Điều khiển tối ưu – Thí dụ 1 (tt)
Bước 4: Điều kiện cần để có nghiệm tối ưu
PT trạng thái: x& (t ) = −2 x(t ) + u (t ) (1)
& ∂H (2)
PT đồng trạng thái: λ (t ) = − ⇒ λ& (t ) = 2λ (t )
∂x
Điề kiệ
Điều kiện dừ
dừng: ∂H
=0 ⇒ u (t ) + λ (t ) = 0 (3)
∂u
Điề kiệ
Điều kiện đầ
đầu: x(t0 ) = x0 = 0 (4)
∂φ (t f )
Điều kiện cuối: λ (t f ) = ⇒ λ (1) = ρ ( x(1) − 50) ((5))
∂x
1 2
H ( x , u, λ , t ) = u (t ) + λ (t )[−2 x(t ) + u (t )]
2
22 March 2011 © H. T. Hoàng - HCMUT 55
Điều khiển tối ưu – Thí dụ 1 (tt)
Bước 5: Giải phương trình vi phân
¾ Nghiệm phương trình (2):
λ (t ) = C1e 2t (6)
C1 2t
⇒ x(t ) = − e + C2 e − 2t
4
¾ Kết
ế luận: Tín hiệu điều
ề khiển
ể và quỹ đạo trạng thái tối
ố ưu là:
u (t ) = −C1e 2t
C1 2t
x(t ) = − e + C2 e − 2t
4
Điề kiệ
Điều kiện đầ
đầu:
x (0) = [0;0] (4)
T
Điều
ề kiện cuối:
ố
x (1) = [10;0] (5)
T
1 2
H ( x , u, λ , t ) = u (t ) + λ T (t )[Ax (t ) + Bu (t )]
2
22 March 2011 © H. T. Hoàng - HCMUT 62
Điều khiển tối ưu – Thí dụ 2 (tt)
Bước 5: Giải phương trình vi phân
¾ Nghiệm phương trình (2):
− A ( t −t f )
λ (t ) = e λ (t f ) = e − A(t −1) λ (1) (6)
¾ Th (6) vào
Thay à (7):
(7)
u (t ) = − B T e − A( t −1) λ (1) (8)
Đoạn 3 xN
xk Đoạn 1
x0
x1
Minh họa nguyên lý tối ưu Bellman
22 March 2011 © H. T. Hoàng - HCMUT 65
Thí dụ tìm đường ngắn nhất dùng DP
Tìm đường ngắn nhất đi từ A đến J, cho biết mạng lưới đường như
hình vẽ.
Nguyên lý tối ưu Bellman: tìm đường ngắn nhất ngược từ nút đích
đến nút đầu.
22 March 2011 © H. T. Hoàng - HCMUT 66
Thí dụ tìm đường ngắn nhất dùng DP
Phân bài toán tìm đường thành các bước từ 1 đến 5
Ký hiệu Nki là nút thứ i ở bước k
N21 N31
N41
N42
N33
N23
Ký hiệu:
*
J k ( N ki ) là khoảng cách ngắn nhất từ nút N ki đến nút đích J
g cách từ nút N ki đến nút N k +1, j
d ( N ki , N k +1, j ) là khoảng
{ }
Phương trình Bellman: J k* ( N ki ) = min d ( N ki , N k +1, j ) + J k*+1 ( N k +1, j )
j
Dễễ thấy
ấ J1* ( N11 ) chính là đường đi ngắn
ắ nhất
ấ
Vòng ngược:
¾ Bước 5: bắt đầu từ nút đích J 5* ( N 51 ) = 0
¾ Bước 4: từ nút N 41 hoặc N 42 chỉ đơn giản đi đến nút đích vì không
có lựa chọn nào khác. Đoạn đường ngắnắ nhấtấ từ một nút ở bước 4 là:
J 4* ( N 41 ) = d ( N 41 , N 51 ) + J 5* ( N 51 ) = 3
J 4* ( N 42 ) = d ( N 42 , N 51 ) + J 5* ( N 51 ) = 4
{ }
J 3* ( N 3i ) = min d ( N 3i , N 4 j ) + J 4* ( N 4 j )
j
d ( N 3i , N 4 j ) + J 4* ( N 4 j ) Quyết định
Từ *
J ( N 3i )
3 đi đến
N 41 N 42
N 31 4 8 4 N41 (H)
N 32 9 7 7 N42 (I)
N 33 6 7 6 N41 (H)
22 March 2011 © H. T. Hoàng - HCMUT 71
Thí dụ tìm đường ngắn nhất dùng DP (tt)
¾ Bước 2: tìm đưởng tối
ưu từ nút N2i đến nút
đích N51 (tức nút J), sử J 3* ( N 31 ) = 4
dụng kết
ế quả tối
ố ưu đoạn J 3* ( N 32 ) = 7
cuối tìm được ở bước 3 J 3* ( N 33 ) = 6
J 2* ( N 2i ) = min{d ( N 2i , N 3 j ) + J 3* ( N 3 j )}
j
d ( N 2i , N 3 j ) + J 3* ( N 3 j ) Quyết định
Từ *
J ( N 2i )
2 đi đến
N 31 N 32 N 33
N 21 11 11 12 11 N 31 hoặc N 32
N 22 7 9 10 7 N 31
N 23 8 8 11 8 N 31 hoặc N 32
22 March 2011 © H. T. Hoàng - HCMUT 72
Thí dụ tìm đường ngắn nhất dùng DP (tt)
¾ Bước 1: tìm đường tối
ưu từ nút N11 (tức nút A)
J 2* ( N 21 ) = 11
đến nút đích N51 (tức nút
J 2* ( N 22 ) = 7
J), sử dụng kết
ế quả tối
ố
ưu đoạn cuối tìm được ở J 2* ( N 23 ) = 8
bước 2
Với J N* ( x ( N )) = φ ( N , x N ) (k = 0,1,..., N − 1)
Bước 2: Giải phương trình Bellman qua 2 vòng:
¾ Vòng ngược: k = N − 1 → 0 tìm u ( k ) phụ thuộc x (k )
*
*
¾ Vòng thuận: k = 0 → N − 1 tính cụ thể u ( k ) từ điều kiện đầu x 0
J k* ( x (k )) = min
u( k )
{ ) u(k )) + J k*+1 ( f ( x (k ),
i L( x (k ), }
) u(k )))
với J k*+1 (.) là biểu thức hàm mục tiêu tối ưu tối ưu đoạn quỹ đạo
cuối đã tìm được ở bước trước đó.
∂J k (.)
Chú ý: để tìm u (k
*
(k ) , áp dụng PP tối ưu tĩnh,
tĩnh giải PT: =0
∂u(k )
với: J 4* ( x(4)) = 0
Lời giải: u * (3) = − x(3) (để thỏa mãn điều kiện ràng buộc)
⇒ J 3* ( x(3)) = 2 x 2 (3)
∂u (0) 8 8 21
2 2
5 20
Với k = 0: u (0) = − x(0) = −
*
21 21
1 1⎛ 20 ⎞ 32
x(1) = ( x(0) + u (0)) = ⎜ 4 − ⎟ =
*
2 2⎝ 21 ⎠ 21
x(1) 8
Với k = 1: u * (1) = − =−
4 21
1 1 ⎛ 32 8 ⎞ 12
x(2) = ( x(1) + u (1)) = ⎜ − ⎟ =
*
2 2 ⎝ 21 21 ⎠ 21
2 2 ⎝ 21 21 ⎠
⎧ 20 8 4 4⎫
Kết luận: Chuổi tín hiệu ĐK tối ưu là: u = ⎨− ;− ;− ;− ⎬
*
⎩ 21 21 21 21⎭
Đặt: Hàm mục tiêu tối ưu đoạn quỹ đạo cuối từ thời điểm ti, trạng
thái xi đến thời điểm cuối tf, trạng thái cuối x(tf) là
J (ti , xi ) = min{φ ( x (t f )) + ∫ L( x (t ), u(t ), t )dt }
tf
*
u(t ) ti
Nếu tồn tại lời giải tối ưu của bài toán ((*)) thì hàm mục tiêu tối ưu đoạn quỹ
đạo cuối phải thỏa mãn phương trình Hamilton-Jacobi-Bellman:
T
∂J (t , x )
*
⎡ ∂J (t , x ) ⎤
*
− i {L( x, u, t ) + ⎢
= min ⎥ f ( x, u, t )}
∂t u(t )
⎣ ∂x ⎦
22 March 2011 © H. T. Hoàng - HCMUT 87
ĐIỀU CHỈNH TOÀN PHƯƠNG TUYẾN TÍNH
(Linear Quadratic Regulator – LQR)
∂x
∂H
=0 T
, u, t ) + λ (t ) f ( x , u, t )
H (t ) = L( x∂u
22 March 2011 © H. T. Hoàng - HCMUT 90
Cách tìm lời giải tối ưu
Rút u(t) từ (3):
u(t ) = − R −1 B T λ (t ) (4)
Th (4) vào
Thay à (1),
(1) tta đượ
được
x& (t ) = Ax (t ) − BR −1 B T λ (t ) (5)
Kết
ế hợp (5) và (2), ta được phương trình vi phân:
⎡ x& (t )⎤ ⎡ A − BR −1 B T ⎤ ⎡ x (t )⎤
⎢λ& (t ) ⎥ = ⎢ ⎥⎢
λ ⎥ (6)
⎣ ⎦ ⎣ − Q − A ⎦⎣ (t ) ⎦
Giải phương trình vi phân (6), tìm được x(t) và λ(t)
Thay λ(t) vào (4) tìm được lời giải tối ưu
Tí hiệu
Tín hiệ điề khiể tối ưu: u* (t ) = − K (t ) x (t )
điều khiển
trong đó: K (t ) = R −1 B T P (t )
và P(t) là nghiệm bán xác định dương của phương trình vi phân Ricatti:
− P& = PA + AT P + Q − PBR −1 B T P
P (t f ) = M
⎡0 p1 ⎤ ⎡ 0 0 ⎤ ⎡2 0⎤ 1 ⎡ p22 p2 p3 ⎤
⇒⎢ +⎢ +⎢ − ⎢ =0
⎥ ⎥ ⎥ 2 ⎥
⎣0 p2 ⎦ ⎣ p1 p2 ⎦ ⎣0 0⎦ 2 ⎣ p2 p3 p3 ⎦
⎡ 1 2 1 ⎤
⎢ 2 − p2 p1 − p2 p3 ⎥
⇒⎢ 2 2 =0
1 1 ⎥
⎢ p1 − p2 p3 2 p2 − p32 ⎥
⎣ 2 2 ⎦
22 March 2011 © H. T. Hoàng - HCMUT 96
Điều khiển LQR liên tục – Thí dụ 2
⎧ 1 2
⎪2 − 2 p 2 = 0 ⎧ p1 = 2 2
⎪⎪ 1 ⎪ ⎡2 2 2 ⎤
⇒ ⎨ p1 − p2 p3 = 0 ⇒ ⎨ p2 = 2 ⇒ P=⎢ ⎥
⎪ 2 ⎪p = 2 2 ⎣ 2 2 2⎦
⎪2 p2 − 1 p32 = 0 ⎩ 3
⎪⎩ 2
Viết lại
ạ chỉ tiêu chất lượng:
ợ g
∞
1 ⎡2 0⎤ ⎡ x1 ⎤
J = ∫ ([ x1 x2 ]⎢ ⎥ ⎢ ⎥ + 1 u 2
{ (t ))dt
20 ⎣10 1 ⎦ ⎣ x2 ⎦
23 R
Q
22 March 2011 © H. T. Hoàng - HCMUT 98
Điều khiển LQR liên tục – Thí dụ 3
Phương trình đại số Ricatti:
PA + AT P + Q − PBR −1 B T P = 0
⎡ p1 p2 ⎤ ⎡ 0 1 ⎤ ⎡0 − 1 ⎤ ⎡ p1 p2 ⎤ ⎡ 2 0⎤
⇒⎢ +⎢ +⎢
⎣ p2
⎥
p3 ⎦ ⎣− 1 − 2⎦ ⎣1 − 2⎥⎦ ⎢⎣ p2
⎢ ⎥ ⎥
p3 ⎦ ⎣0 1⎥⎦
⎡ p1 p2 ⎤ ⎡0⎤ ⎡ p1 p2 ⎤
−⎢ ⎥ ⎢ ⎥ [0 1]⎢ ⎥ =0
⎣ p2 p3 ⎦ ⎣1⎦ ⎣ p2 p3 ⎦
⎡ − p2 p1 − 2 p2 ⎤ ⎡ − p2 − p3 ⎤ ⎡2 0⎤ ⎡ p22 p2 p3 ⎤
⇒⎢ ⎥ +⎢ ⎥ +⎢ ⎥ −⎢ 2 ⎥
=0
⎣ − p3 p2 − 2 p3 ⎦ ⎣ p1 − 2 p2 p2 − 2 p3 ⎦ ⎣0 1⎦ ⎣ p2 p3 p3 ⎦
⎡ − 2 p2 + 2 − p22 p1 − 2 p2 − p3 − p2 p3 ⎤
⇒⎢ 2 ⎥
=0
⎣− p3 + p1 − 2 p2 − p2 p3 2 p2 − 4 p3 + 1 − p3 ⎦
⎡2.403 0.732⎤
⇒P=⎢ ⎥
⎣ 0.732 0.542 ⎦
Độ lợi hồi tiếp trạng thái:
⎡ 2.403 0.732⎤
K = R B P ⇒ K = [0 1]⎢
−1 T
⎥ ⇒ K = [0.732 0.542]
⎣0.732 0.542⎦
⎡ x1 (t ) ⎤
Luật điều khiển tối ưu: u (t ) = − Kx (t ) = −[0.732 0.542]⎢
*
x (t ) ⎥
⎣ 2 ⎦
⇒ u * (t ) = −0.732 x1 (t ) − 0.542 x2 (t )
22 March 2011 © H. T. Hoàng - HCMUT 100
Bài toán LQR rời rạc
Cho đối tượng tuyến tính rời rạc mô tả bởi phương trình trạng thái:
x (k + 1) = Ad x (k ) + Bd u(k ) (*)
t
trong đó: x (k ) = [ x1 (k ),
đó ) xn (k )]T: vector
) x2 (k ),..., t trạng
t thái
u(k ) = [u1 (k ), u2 (k ),..., um (k )]T: vector tín hiệu điều khiển
Bài toán
á đặ
đặt ra là tìm
ì tín
í hiệu
hiệ điều khiể u(k) điều
điề khiển điề chỉnh
hỉ h hệ thống
hố từ ừ
trạng thái đầu x (0) = x0 bất kỳ về trạng thái cuối x(N) = 0 sao cho
tối thiểu chỉ tiêu chất lượng
ợ g dạng
ạ g toàn pphương:
g
1 T 1 N −1 T
[
J (u) = x ( N ) Mx ( N ) + ∑ x (k )Qx (k ) + uT (k ) Ru(k )
2 2 k =0
]
=0
Tí hiệu
Tín hiệ điề khiể tối ưu: u* (k ) = − K (k ) x (k )
điều khiển
trong đó: [ ]
−1
K (k ) = B P (k + 1) Bd + R BdT P (k + 1) Ad
T
d
và P(k) là nghiệm bán xác định dương của phương trình Ricatti:
( (
P ( k ) = A P ( k + 1) − P ( k + 1) Bd B P ( k + 1) Bd + R
T
d
T
d )
−1
)
BdT P ( k + 1) Ad + Q
P (N ) = M
Nghiệm phương trình Ricatti rời rạc: lần lượt thay k = ( N − 1) → 0
vao phương trình Ricatti sẽ tìm được P(k)
và P là nghiệm bán xác định dương của phương trình đại số Ricatti:
( (
P = A P − PBd B P Bd + R
T
d
T
d )
−1
)
BdT P Ad + Q
Chú ý: trong trường hợp này K và P là không phụ thuộc k
Giá trị cực tiểu của chỉ tiêu chất lượng: J min = x T (0) Px (0)
22 March 2011 © H. T. Hoàng - HCMUT 103
Lời giải bài toán LQR thời gian vô hạn dùng Matlab
Nghiệm phương trình đại số Ricatti liên tục (continuous algebraic
Ricatti equation – care)
>> P=care(A,B,Q,R)
( Q )
Lời giải bài toán LQR (Linear quadratic Regulator – LQR) liên tục
>> K=lqr(A,B,Q,R)
Nghiệm
hi phương
h trình
ì h đđạii số
ố Ricatti
i i rờiời rạc(discrete
(di algebraic
l b i Ricatti
i i
equation – dare)
>> P P=dare(A
dare(A,B,Q,R)
B Q R)
Lời giải bài toán LQR (Linear quadratic Regulator – LQR) rời rạc
>> K=dlqr(A,B,Q,R)
22 March 2011 © H. T. Hoàng - HCMUT 104
BỘ LỌC KALMAN
−∞
+∞
Lời giải: xˆ = E [X Y = y ] = ∫ xpp XY
( x | y )dx
−∞
Nhắc lại các công thức xác suất thống kê: Cho X là biến ngẫu nhiên
có hàm mật độ phân bố xác suất là p(X)
(X)
+∞
¾ Kỳ vọng: μ X = E [X ] = ∫ xp X ( x)dx
−∞
¾ Phương sai: σ = Var ( X ) = E[( X − μ X )T ( X − μ X )]
2
X
⎧ x&ˆ (t ) = [ Axˆ (t ) + Bu (t )] + L[ y (t ) − yˆ (t )]
Bộ lọc Kalman liên tục: ⎨
⎩ yˆ (t ) = Cxˆ (t )
Trong đó L là độ lợi của bộ lọc Kalman:
L = ΠC T RN−1
với Π là nghiệm của phương trình Ricatti:
AΠ + ΠAT − ΠC T RN−1C Π + Q N = 0
22 March 2011 © H. T. Hoàng - HCMUT 107
Sơ đồ khối bộ lọc Kalman rời rạc
u(t) x(t) ()
y(t)
x& (t ) = Ax (t ) + Bu (t ) C
L
+
−
xˆ (t )
B ++
+ ∫ C
yˆ (t )
⎧ xˆ& (t ) = Axˆ (t ) + Bu (t ) + L( y (t ) − yˆ (t ))
Bộ lọc Kalman: ⎨
⎩ yˆ (t ) = Cxˆ (t )
L +
−
++ −1
xˆ (t )
Bd z Cd
+ yˆ (t )
Ad
Trong đó: (
L(k ) = Ad Π (k )C C d Π (k )C + RN
T
d
T
d )
−1
⎩2 0 ⎭
t
trong đó Q là các
á ma trận
t ậ ttrọng số
ố bá
bán xác
á đị
định
h dươ
dương
R là ma trận trọng số xác định dương
22 March 2011 © H. T. Hoàng - HCMUT 112
Nguyên lý tách rời
Nguyên lý tách rời: Bài toán tối ưu LQG có thể giải bằng cách giải
riêng bài toán điều khiển tối ưu tiền định và bài toán ước lượng trạng
thái tối ưu.
+
L −
++
xˆ (t )
B + ∫ C
yˆ (t )
Yêu cầu: Thiết kế bộ điều khiển giữ cân bằng con lắc quanh vị trí
thẳng đứng
Thiết kế dùng
dù M Matlab:
tl b
¾ >> K = lqr(A,B,Q,R)
¾ Tùy theo độ lớn tương đối giữa trọng số Q và R mà hệ thống có
đáp ứng quá độ và năng lượng tiêu tốn khác nhau.
¾ Muốn trạng thái đáp ứng nhanh tăng thành phần Q tương ứng
¾ Muốn giảm năng lượng tăng R
[rad],[rad/s]
θ&
⎡1 0 0 0⎤
0
⎢0 1 0 0⎥⎥ -0.5
Q=⎢
0 1 2 3 4 5 6
⎢0 0 1 0⎥
1
x
⎢ ⎥
m/s]
0.5 x&
⎣0 0 0 1⎦
[m],[m
0
-0.5
R =1 10
0 1 2 3 4 5 6
u
5
[N]
Góc lệ
Gó lệch
h con lắ
lắc đđược -5
0 1 2 3 4 5 6
Time [s]
giữ cân bằng tốt, tuy
nhiên vị trí xe dao K= [−34.3620 − 10.7009 − 1.000 − 2.4109]
động khá lớn
22 March 2011 © H. T. Hoàng - ÐHBK TPHCM 122
Kết quả mô phỏng điều khiển LQR hệ con lắc ngược
0
0.5
θ
[rad],[rad/s]
0 θ&
⎡1 0 00⎤ -0.5
⎢0 1 0 0⎥⎥ -1
Q=⎢
0 1 2 3 4 5 6
⎢0 0 100 0⎥
2
x
⎢ ⎥
m/s]
1 x&
⎣0 0 0 1⎦
[m],[m
0
-1
R =1 20
0 1 2 3 4 5 6
u
10
[N]
Tăng trọng số
Tă ố q33 -10
0 1 2 3 4 5 6
Time [s]
(tương ứng với vị trí
xe)) ⇒ vị trí xe ít dao K=[−70.1356 − 22.1091 − 10.000 − 11.0514]
động hơn
22 March 2011 © H. T. Hoàng - ÐHBK TPHCM 123
Kết quả mô phỏng điều khiển LQR hệ con lắc ngược
0.5
θ
[rad],[rad/s]
0 θ&
⎡1 0 00⎤ -0.5
⎢0 1 0 0⎥⎥ -1
Q=⎢
0 1 2 3 4 5 6
⎢0 0 100 0⎥
2
x
⎢ ⎥ x&
m/s]
1
⎣0 0 0 1⎦
[m],[m
0
-1
R =1 0 1 2 3 4 5 6
20
u
10
Khuyết điểm của bộ
[N]
0
điều khiển LQR
Q là nếu -10
10
có nhiễu đo lường thì 0 1 2 3
Time [s]
4 5 6
Bộ lọc Kalman
Q N = 0.000001I ⎡ 6.5617 − 0.0571⎤
⎢ 21.5437 − 0.1876⎥
⎡0.001 0 ⎤
⇒ L=⎢ ⎥
RN = ⎢ ⎢− 0.5713 0.1470 ⎥
0 0 .01⎥ ⎢ ⎥
⎣ ⎦ ⎣ − 1.9568 0.0271 ⎦
(Do ta giả sử không có nhiễu hệ thống nên chọn QN rất bé.
bé Hai thành
phần của RN chính là phương sai của nhiễu đo lường)
22 March 2011 © H. T. Hoàng - ÐHBK TPHCM 126
Mô phỏng điều khiển LQG hệ con lắc ngược
{
Cách 1: Φ (t ) = e At = L−1 ( sI − A) −1 }
Cách 2: Φ(t ) = e At = C0 I + C1 [A] + C2 [A]2 + K + Cn −1 [A]n −1
thay các trị riêng λi của ma trận A (nghiệm của det(λI − A) = 0 ) vào
phương trình trên sẽ tính được các hệ số Ci
22 March 2011 © H. T. Hoàng - HCMUT 134
Nghiệm của phương trình trạng thái (tt)
Các trường hợp riêng của phương trình vi phân bậc 1:
¾ Nếu B=0: x& (t ) = Ax (t )
x(t ) = Φ(t ) x(t0 ) = e A(t −t0 ) x(t0 )
Sau khi học xong chương 3, sinh viên phải có khả năng:
Giải bài toán tối ưu động không ràng buộc và có ràng buộc
Thành
Thà h lập
lậ các
á bài toán
t á điề
điều khiể
khiển tối ưu độ
động
Giải bài toán tối ưu động liên tục dùng phương pháp biến phân
Giải bài toán tối ưu rời rạc dùng phương pháp qui hoạch động
Thiết kế bộ điều khiển LQR, bộ lọc Kalman, bộ điều khiển LQG