You are on page 1of 142

Môn học

LÝ THUYẾT ĐIỀU KHIỂN NÂNG CAO

Giảng viên:
Giả iê PGS.
PGS TS.
TS Huỳnh
H ỳ h Thái Hoàng
H à
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/

15 January 2014 © H. T. Hoàng - HCMUT 1


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Chương 3

ĐIỀU
Ề KHIỂN
Ể TỐI
Ố ƯU

15 January 2014 © H. T. Hoàng - HCMUT 2


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Nội dung chương 3
 Giới thiệu
 Tối ưu hóa tĩnh
 Tối ưu hóa động và phương pháp biến phân
 Điều khiển tối ưu liên tục dùng phương pháp biến
phân
 Phương pháp qui hoạch động Bellman
 Điều khiển tối ưu toàn phương tuyến tính LQR
 Ước lượng trạng thái tối ưu (lọc Kalman)
 Điều khiển tối ưu LQG

15 January 2014 © H. T. Hoàng - HCMUT 3


CuuDuongThanCong.com https://fb.com/tailieudientucntt
GIỚI THIỆU

15 January 2014 © H. T. Hoàng - HCMUT 4


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Giới thiệu
 Điều khiển tối ưu : xác định luật ĐK cho hệ thống động
cho trước sao cho tối thiểu hóa một chỉ tiêu chất lượng.
 ĐK tối ưu được phát triển trên cơ sở toán học: phương
pháp biến phân (Bernoulli, Euler, Lagrange, Weiertrass,…)
 Từ những năm 1950, ĐK tối ưu phát triển mạnh mẽ và trở
thành một lĩnh vực độc lập.
 Phương pháp quy hoạch động do Richard Bellman đưa
ra trong
t thập
thậ niên1950.
iê 1950
 Nguyên lý cực tiểu Pontryagin do Lev Pontryagin và
các đồng sự đưa ra trong thập niên 1950
1950.
 Bài toán điều chỉnh toàn phương tuyến tính và lọc
Kalman do Rudolf Kalman đưa ra trong g những
g
năm1960.
15 January 2014 © H. T. Hoàng - HCMUT 5
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Phân loại bài toán điều khiển tối ưu

 Có nhiều
hiề bài ttoán
á điều
điề khiển
khiể tối ưu, tù
tùy th
theo:
 Loại đối tượng điều khiển
 Miền thời gian liên tục hay rời rạc
 Chỉ tiêu chất lượng
 Bài toán tối ưu có ràng buộc hay không

 ĐK tối ưu tĩnh: chỉ tiêu chất lượng không phụ thuộc thời
gian
 ĐK tối ưu động: chỉ tiêu chất lượng phụ thuộc thời gian
 Bài toán chỉnh toàn phương tuyến tính (Linear
Quadractic Regulator – LQR)
 Bài toán điều khiển tối ưu H2
…

15 January 2014 © H. T. Hoàng - HCMUT 6


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Ứng dụng
 Trước khi máy tính số ra đời,
đời chỉ có thể giải được
một số ít bài toán điều khiển tối ưu đơn giản
 Máyy tính số ra đời cho phép
p p ứng g dụng
ụ g lý
ý thuyết
y điều
khiển tối ưu vào nhiều bài toán phức tạp.
 Ngày nay, điều khiển tối ưu được ứng dụng trong
nhiều
ề lĩnh vực:
 Không gian (aerospace)
 Điều khiển quá trình (proccess control)
 Robot
 Kỹ thuật sinh học (bioengineering)
 Kinh tế
 Tài chính
…

15 January 2014 © H. T. Hoàng - HCMUT 7


CuuDuongThanCong.com https://fb.com/tailieudientucntt
TỐI
Ố ƯU HÓA
Ó TĨNH
Ĩ

15 January 2014 © H. T. Hoàng - HCMUT 8


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tối ưu hóa tĩnh không ràng buộc
 Bài toán tối ưu tĩnh không ràng buộc: tìm m thông
số thực (hay phức) u1, u2,…, um sao cho hàm
L( 1, u2,…, um) đạt
L(u đ t cực tiể
tiểu:
L(u)=L(u1, u2,…, um)  min
trong đó u=[u
[ 1, u2,…, um]T

 Điểm u* được gọi là điểm cực tiểu cục bộ nếu


L(u)L(u*) với mọi u nằm trong lân cận  của u*.

 Điểm u* được gọi là điểm cực tiểu toàn cục nếu


L(u)L(u*) với mọi u

15 January 2014 © H. T. Hoàng - HCMUT 9


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều kiện cực trị không ràng buộc
 Giả sử L(u) khả đạo hàm theo u,u thì điều kiện cần và
đủ để u* là điểm cực tiểu cục bộ là:
 Lu (u* )  0

 uu )  0
*
L ( u
trong đó:
 L u1 
 L u 
L  2
Lu  
u   
 
L um 
  2
L  u u
1 1  2
L  u u
1 2   2
L u1um 
 L 
2

Luu  2      
u
 2 L umu1  2 L umu2   2 L umum 
 
15 January 2014 © H. T. Hoàng - HCMUT 10
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tìm cực trị không ràng buộc – Thí dụ 1
 Tìm cực trị hàm: L(u)  5u12  2u22  2u1u2  8u1  3u2
 Giải:
 Điều kiện
ệ cần có cực
ự trị:ị
 L 
L  u1  10u1  2u2  8  0 u1*  0.7222
Lu   0    *
u  L  2u1  4u 2  3  0 u2  0.3889
 u2 
 Xét vi phân bậc hai:
 2L 2L 
  10 2
u 2
u1 u 2  Luu  0
Luu   2 1  Luu    
  L 2L   2 4 
 u u u 22 
 1 2
 1 2 )  (0.7222;0.3889)
* *
(u , u là điểm cực tiểu.
15 January 2014 © H. T. Hoàng - HCMUT 11
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tìm cực trị không ràng buộc – Thí dụ 1
u*  (0.7222;0.3889)

250

200

150

L 100

50

-50 u* 4
6 2
4 2 0
0
u2
-2 -4 -6 -4
4
-2
u1

15 January 2014 © H. T. Hoàng - HCMUT 12


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tối ưu hóa tĩnh có ràng buộc
 Bài toán tối ưu tĩnh có ràng buộc: tìm vector thông số
u sao cho hàm L(x,u) đạt cực tiểu, đồng thời thỏa
điều kiện f(x,u)
f(x u)=00
L(x,u)  min
f(x u)=0
f(x,u)=0
trong đó x=[x1, x2,…, xn]T
u=[u1, u2,…, um]T
L :  n   m   : hàm đánh giá
f :  n   m   p : điều
điề kiệ
kiện ràng
à b buộc

15 January 2014 © H. T. Hoàng - HCMUT 13


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Hàm Hamilton
 Định nghĩa hàm Hamilton:
H ( x , u)  L ( x , u)   T f ( x , u)
trong đó    là vector hằng số
p
số, gọi là thừa số Larrange
Do ràng buộc f(x,u) = 0 nên cực tiểu của L(x,u) cũng
chính
hí h là cực tiểu
tiể của
ủ H(x,u).
H( )
 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ành bài toán tìm cực tiểu
ể không ràng buộc
hàm Hamilton H(x,u)
 Vi phân hàm Hamilton:
H ( x, u) H ( x, u)
dH ( x , u)  dx  du
x u
15 January 2014 © H. T. Hoàng - HCMUT 14
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thừa số Lagrange
 Do ta cần tìm cực trị theo u nên có thể tự do chọn
thừa số Lagrange sao cho:
H ( x , u) L( x, u) T f ( x , u)
H x ( x , u)    0
x x x
1
 L( x, u)   f ( x , u) 
   
T

 x   x 
  

Viết gọ ạ    Lx  f x 
gọn lại: T 1

15 January 2014 © H. T. Hoàng - HCMUT 15


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Độ dốc của hàm mục tiêu với điều kiện ràng buộc
L( x , u) L( x , u)
 Vi phân
hâ hà
hàm mục tiê
tiêu: dL( x , u)  dx  du
x u
f ( x, u) f ( x , u)
( , ) = 0 nên: df ( x, u) 
 Do f(x,u) dx  du  0
x u
1
 f ( x , u )  f ( x , u)
 dx     du
 x  u
 Thay (2) vào (1), ta được:
1
L( x, u)  f ( x, u)  f ( x, u) L( x , u)
dL( x , u)     du  du
x  x  u u
f ( x, u) L( x , u)  H ( x , u)
 dL( x, u)   T   du  dL( x , u)  du
 u u  u
 Với ĐK f(x,u)=0, độ dốc của L(x,u) theo u chính bằng Hu(x,u)
 Điều kiện để L(x,u)
L(x u) đạt cực trị với ràng buộc f(x,u)=0
f(x u)=0 là:
H u ( x , u)  0
15 January 2014 © H. T. Hoàng - HCMUT 16
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều kiện cần cực trị có ràng buộc
 Kết hợp với điều kiện xác định hằng số Lagrange
Lagrange,
điều kiện cần để L(x,u) đạt cực trị có ràng buộc
f ( x , u)  0 là:

 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)

15 January 2014 © H. T. Hoàng - HCMUT 17


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tìm cực trị có ràng buộc – Thí dụ 1

 Tì cực trị
Tìm hà L(u)  5u12  2u22  2u1u 2  8u1  3u2
t ị hàm:
Với điều kiện ràng buộc:
f (u)  u1  6u2  2  0
 Giải:
 Hàm
Hà H Hamilton:
il
H ( u)  L ( u )   f ( u) T

 H (u)  5u1  2u 2  2u1u 2  8u1  3u 2   (u1  6u 2  2)


2 2

15 January 2014 © H. T. Hoàng - HCMUT 18


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tìm cực trị có ràng buộc – Thí dụ 1
 Điều kiện cần để có cực trị:
H (u)
 100u1  2u2  8    0
 H x ( u)  0 u1
 H (u)
 H u ( u)  0   2u1  4u2  3  6  0
 f (u)  0 u2

f (u)  u1  6u2  2  0
 Giải hệ phương trình, ta được:
u   0.8412 0.4735   0.5353
* T

H (u)  5u12  2u22  2u1u2  8u1  3u2   (u1  6u2  2)


15 January 2014 © H. T. Hoàng - HCMUT 19
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tìm cực trị có ràng buộc – Thí dụ 1
u*   0.8412 0.4735
T

250

200

150

L 100

50

-50
u* 4
6 2
4 2 0
0
u2
-2 -4 -6 -4
4
-2
u1

15 January 2014 © H. T. Hoàng - HCMUT 20


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tìm cực trị có ràng buộc – Thí dụ 2

 Tì cực trị
Tìm hà L( x, u )  ( x  2)  (u  2)
t ị hàm: 2 2

Với điều kiện ràng buộc: u  x 2  3 x  6


 Giải:
 Viết lại điều kiện ràng buộc:
u  x 2  3x  6  x  3x  6  u  0
2

 Hà Hamilton:
Hàm H ilt
H ( x, u )  L( x, u )  T f ( x, u )
 H ( x, u )  ( x  2) 2  (u  2) 2   ( x 2  3 x  6  u )

15 January 2014 © H. T. Hoàng - HCMUT 21


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tìm cực trị có ràng buộc – Thí dụ 2
 Điều kiện cần để có cực trị:
H ( x, u )
 2( x  2)  2x  3  0
 H x ( x, u )  0 x
 H ( x, u )
 H u ( x, u )  0   2(u  2)    0
 f ( x, u )  0 u

f ( x, u )  x  3 x  6  u  0
2

 Giải hệ phương
h trình,
ì h ta được
đ b
ba nghiệm:
hiệ
( x, u )  (4.53;0.92), (1.71;2.04), (1.68;8.22)
Thay 3 nghiệm trên vào L( x , u )  ( x  2)  (u  2) , ta được
2 2

các giá trị tương ứng là: 43.78; 0.087; 117.94.
* 2* )  (1.71
 Kết
ế luận: cực trị cần ( x, u )  ( x  2)  (u  2) 2 ;2.04
ầ Htìm là ( x , u ( x 2)  3x  6  u )
15 January 2014 © H. T. Hoàng - HCMUT 22
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tìm cực trị có ràng buộc – Thí dụ 3

 Tì cực trị
Tìm hà L( x , u )  x  3 x  u
t ị hàm: 2
1
2
2
2

Với các điều kiện ràng buộc:


 f1 ( x , u )  2 x1  x2  4
f ( x, u )      0
 f 2 ( x , u )  x1  u  2 
 Giải:
 Hàm Hamilton:

H ( x , u )  L( x , u )   f ( x , u )
T

 H ( x , u )  x12  3 x22  u 2  1 (2 x1  x2  4)  2 ( x1  u  2)

15 January 2014 © H. T. Hoàng - HCMUT 23


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tìm cực trị có ràng buộc – Thí dụ 3
 ĐK cần để có cực trị:
H ( x, u ) / x1  2 x1  21  2  0
H x ( x, u )  0 H ( x, u ) / x 2  6 x2  1  0

H u ( x, u )  0  H ( x, u ) / u  2u  2  0
 f ( x, u )  0
 f1 ( x, u )  2 x1  x2  4  0
f 2 ( x, u )  x1  u  2  0
 Giải hệ phương trình, ta được:
x *  1.5714 0.8514 u *  3.5714    5.1429 7.1429T
T

 Do L( x , u )  x  3 x  u 2
1
2
2
2
là hàm toàn p phương g nên
cực trị tìm được
H ( x , u )ở
 xtrên
2
1  3 cũng
x 2
2  u 2
 1 (2 x1 là
chính  xcực  2 ( x1  u  2)
2  4)tiểu

15 January 2014 © H. T. Hoàng - HCMUT 24


CuuDuongThanCong.com https://fb.com/tailieudientucntt
TỐI ƯU HÓA ĐỘNG
VÀ PHƯƠNG PHÁP BIẾN PHÂN

15 January 2014 © H. T. Hoàng - HCMUT 25


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tối ưu hóa động không ràng buộc
 Bài toán tối ưu động không ràng buộc: tìm vector hàm
x(t) sao cho phiếm hàm J(x) đạt cực tiểu:
tf
J ( x )   L( x, x , t )dt  min
t0
x (t )  x1 (t ) x2 (t )  xn (t )  n
T
trong
đó
đó: L : n  n    
Chú ý: Phiếm hàm là hàm của hàm
(functional = function of function)
*
 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 ))
*

với mọi hàm x (t ) nằm trong lân cận  của (t ) x *

x (t )  x * (t )  
15 January 2014 © H. T. Hoàng - HCMUT 26
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tìm cực trị phiếm hàm?
 Nhắc lại cực trị 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 g có đạo
ạ hàm bậc
ậ 2 xác định
ị dương g
 điểm cực tiểu
 Cực trị phiếm hàm?
 Khái niệm biến phân (variation): có thể hiểu là “đạo
hàm của p phiếm hàm”
 Phương pháp biến phân (Calculus of Variation): dựa
vào khái niệm biến phân đưa ra điều kiện cực trị của
phiếm
ế hàm tương tự như điềuề kiện cực trị hàm
15 January 2014 © H. T. Hoàng - HCMUT 27
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Khái niệm biến phân

 L
Lượng gia
i của
ủ phiếm hàm: J ( x )  J ( x  x )  J ( x )
hiế hà

g đó x ((t ) là biến phân


trong p của hàm x (t )

x (t )
x (t )  x (t )
t

Minh họa biến phân của hàm x (t )


 Biến phân của phiếm hàm:
J ( x )  lim J ( x )  lim [ J ( x  x )  J ( x )]
x 0 x 0

15 January 2014 © H. T. Hoàng - HCMUT 28


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thí dụ tính biến phân phiếm hàm
1

 ế hàm: J ( x)   x 2 (t )dt
Cho phiếm
0

 Biến phân của phiếm hàm được tính như sau:


1 1
J [ x(t )]  J ( x  x)  J ( x)   ( x  x) 2 dt   ( x) 2 dt
0 0
1 1 1
  [ x 2  2 xx  (x) 2 ]dt   ( x) 2 dt   [2 xx  (x) 2 ]dt
0 0 0
1
 J ( x)  lim J ( x)  lim  [2 xx  (x) 2 ]dt
x 0 x 0
0
1
 J ( x)   [2 xx]dt
0

15 January 2014 © H. T. Hoàng - HCMUT 29


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Công thức tính biến phân phiếm hàm dạng tích phân

 Ch phiếm
Cho hiế hà
hàm dạng
d tích
í h phân
hâ tổng
ổ quát:
á
tf

J ( x )   L( x )dt
t0

 Biến phân của phiếm hàm dạng tích phân được tính như
sau:
tf
 L( x )  
J ( x )    x dt
t0 
x  

15 January 2014 © H. T. Hoàng - HCMUT 30


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Biến phân phiếm hàm bài toán tối ưu động không ràng buộc
tf
 Phiế hà
Phiếm hàm: J ( x )   L( x, x , t )dt
d
t0

 Biến phân phiếm hàm:


t f  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,
phân suy ra:
tf
 L( x, x , t ) d L( x, x , t ) 
J     xdt
t0 
x dt x 
15 January 2014 © H. T. Hoàng - HCMUT 31
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Đ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 ) là biến phân của J ( x ) phải bằng 0 tại x * (t )
J ( x )  0 x  x *

 ĐK cần để bài toán tối ưu động không ràng buộc có cực trị:
L( x, x , t ) d L( x, x , t ) L d L
 0   0
x dt x x dt x
(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, dạng đơn giản của pt Euler-Lagrange là:
t
L J   L( x, x , t )  d L( x, x , t ) xdt
f

L  x  c (c là hằng
x
số)
dt x 
x t  0

15 January 2014 © H. T. Hoàng - HCMUT 32
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tối ưu hóa động không ràng buộc – Thí dụ 1
 /2
Tìm hàm x(t) sao cho : J ( x)   [ x (t )  x (t )]dt  min
2 2
 
0

Vớii điều
điề kiện bi x(0)  1, x( / 2)  3
ki biên:
 Giải:
 Theo đềề bài, ta có: L  x 2  x 2
 Phương trình Euler-Lagrange:
L d  L  d
    0  2 x   2 x   0  x  x  0
x dt  x  dt
ổ quát: x(t )  C1 sin t  C2 cos t
 Lời giải tổng
 Thay điều kiện biên, suy ra: C1  3,C 2  1
 Kết luận: x * (t )  3 sin t  cos t
15 January 2014 © H. T. Hoàng - HCMUT 33
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tối ưu hóa động không ràng buộc – Thí dụ 2
 Tìm hàm x(t) sao cho phiếm hàm dưới đây đạt cực tiểu:
2
J ( x)   1  x 2 (t )dt  min với ĐK biên: x(0)  1, x(2)  0
0
 Giải:
L d  L 
 Phương trình Euler-Lagrange:   0
x dt
d  x 
1
x 1  x 2  x xx
d  x  1  
x 2
  0  0  x  0
dt  1  x 2
 1  
x 2

 Lời g g qquát: x(t )  C1t  C2


giải tổng
1
 Thay điều kiện biên, suy ra: C1   ,C 2  1
2
1
 Kết
ế luận: x* (t )   t  1
2 L  1  x 2
15 January 2014 © H. T. Hoàng - HCMUT 34
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tối ưu hóa động có ràng buộc
 Bài toán tối ưu
ư động có ràng buộc:
b ộc: tìm vector
ector hàm x(t) xác
á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

với điều kiện ràng buộc f ( x, x , t )  0


và điều kiện biên: x(t0)=x0, x(tf)=xf
trong đó: x (t )  x1 (t ) x2 (t )  xn (t )  
T n

L : n  n    
f : n  n     p

15 January 2014 © H. T. Hoàng - HCMUT 35


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Hàm Hamilton và điều kiện cần để có cực trị
 Định nghĩa hàm Hamilton:
H ( x , x ,  , t )  L( x, x , t )   T f ( x , x , t )
t
trong đó  (t )   p là vector
t hàm,
hà gọii là thừa
thừ số
ốLLarrange
t1
 Do f ( x , x , t )  0 nên cực tiểu của J ( x )   L( x, x , t )dt
t0
t1
cũng chính là cực tiểu của J ( x )   H ( x , x ,  , t )dt
t0

 tìm cực tiểu


iể không
kh ràng buộc
b phiếm
hiế hhàm J ( x )
 Điều kiện cần để phiếm hàm J ( x ) có cực trị là:
H ( x, x ,  , t ) d H ( x, x ,  , t )
 0
x dt x
(PT Euler-Lagrange của bài toán tối ưu động có ràng buộc)
15 January 2014 © H. T. Hoàng - HCMUT 36
CuuDuongThanCong.com https://fb.com/tailieudientucntt
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
và điều kiện biên: x(t0)=x0, x(tf)=xf
 Hàm Hamilton và pphươngg trình Euler-Lagrange g g trong g
trường hợp ràng buộc tích phân như sau:
 Hàm Hamilton: H ( x , x  ,  , t )  L( x, x , t )   T f ( x , x , t )
 Phương trình Euler-Lagrange:
H ( x, x ,  , t ) d H ( x, x ,  , t )
 0
x dt x
15 January 2014 © H. T. Hoàng - HCMUT 37
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Trình tự giải bài toán tối ưu động có ràng buộc
 Bước 1: Xác định hàm mục tiêu, tiêu đđ.kiện
kiện ràng buộc và điều
kiện biên: tf
J ( x )   L( x, x , t )dt
t0
tf
Đ.kiện ràng buộc f ( x, x , t )  0 hoặc t f ( x, x , t )dt  q
0

Điều kiện biên x (t0 )  x0 và x (t f )  x f


 Bước 2: Thành lập hàm Hamilton:
H ( x , x ,  , t )  L( x , x , t )   T f ( x , x , t )
 Bước 3: Viết phương trình Euler-Lagrange:
H ( x, x ,  , t ) d H ( x, x ,  , t )
 0
x dt x
 Bước 4: Tìm nghiệm PT Euler-Lagrange
Euler Lagrange thỏa điều kiện
ràng buộc và điều kiện biên
15 January 2014 © H. T. Hoàng - HCMUT 38
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tối ưu hóa động có ràng buộc – Thí dụ 1
 Tìm hàm x(t) sao cho phiếm hàm dưới đây đạt cực tiểu:
4
J ( x)   x 2 (t )dt  min
0
4
với điều kiện ràng buộc:  x(t )dt  3
0
và điều kiện biên: x(0)  0, x(4)  0
 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 )
15 January 2014 © H. T. Hoàng - HCMUT 39
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tối ưu hóa động có ràng buộc – Thí dụ 1
 Phương trình Euler
Euler-Lagrange:
Lagrange:
H ( x, x ,  , t ) d H ( x, x ,  , t )
 0
x dt x
d
  2 x (t )  0    2 x(t )  0 ((1))
d
dt
 Tìm nghiệm phương trình Euler-Lagrange:
 
(1)  x(t )   x (t )  t  c1
2 2

 x(t )  t 2  c1t  c2
4 H ( x, x ,  , t )  x 2 (t )  x(t )
15 January 2014 © H. T. Hoàng - HCMUT 40
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tối ưu hóa động có ràng buộc – Thí dụ 1
 Xác định các hằng số dựa vào điều kiện ràng buộc và điều
kiện biên:
  c2  0
x(0)  .0  c1.0  c2  0
4
x(4)  4  4c1  0 9
c1 
4  8
  3 c1 2  16
4
9
0 x(t )dt  12 t  2 t  0  3  8c1  3 
8

9 2 9
 Kết luận: x (t )   *
t  t 
32 8 x(t )  t 2  c1t  c2
4
15 January 2014 © H. T. Hoàng - HCMUT 41
CuuDuongThanCong.com https://fb.com/tailieudientucntt
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 ) sao cho phiếm hàm
T

dưới đây đạt cực tiểu:
 
2
J ( x )   5( x1  1) 2  x22 dt
d  min
i
0

với điều kiện ràng buộc: f ( x, x , t )  x1  2 x1  x2  0


và điều kiện biên: x1 (0)  0; x1 (2)  1
 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 )

15 January 2014 © H. T. Hoàng - HCMUT 42


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tối ưu hóa động có ràng buộc – Thí dụ 2
 Phương trình Euler
Euler-Lagrange:
Lagrange:
H d H
 0  10( x1  1)  2    0 (1)
x1 dt x1
H d H
 0  2 x2    0 (2)
x2 dt x2
 Tìm nghiệm phương trình Euler-Lagrange thỏa điềuề kiện ràng buộc:
  2 x2 (3)
(2)  
  2x
2 x2
Thay (3) vào (1): 10( x1  1)  4 x2  2 x 2  0 (4)
 x2  x1  22xx1
ề kiện ràng buộc, suy ra: 
Từ điều (5)
 x2  x1  2 x1
y ((5)) vào ((4):
Thay ) 10( x1  1)  4( x1  2 x1 )  2( x1  2 x1 )  0
( xx, x, 10
 2 x1 H18 , t )0[5( x1  1) 2  x22 ]   ( x1  2 x1 (6)
 x2 )
1

15 January 2014 © H. T. Hoàng - HCMUT 43


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tối ưu hóa động có ràng buộc – Thí dụ 2
N hiệ tổ
Nghiệm tổng quát
át của
ủ phương
hươ ttrình
ì h (6)
x1 (t )  C1e 3t  C 2 e 3t  0.556
ề kiện biên x1 (0)  0; x1 (2)  1
Thay điều
C1  C 2  0.556  0 C1  0.5549
  
0.0025C1  403.42C 2  0.556  1 C 2  0.0011
 x1 (t )  0.5549e 3t  0.0011e 3t  0.556 (7)

Thay (7) vào (5):


x2  x1  2x1
 x2 (t )  0.5549e 3t  0.0055e 3t  1.112

15 January 2014 © H. T. Hoàng - HCMUT 44


CuuDuongThanCong.com https://fb.com/tailieudientucntt
ĐIỀU KHIỂN TỐI ƯU LIÊN TỤC
DÙNG PHƯƠNG PHÁP BIẾN PHÂN

15 January 2014 © H. T. Hoàng - HCMUT 45


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Bài toán điều khiển tối ưu liên tục
 Cho đối tượng: x (t )  f ( x (t ),
) u(t )) ((*))

trong đó: x (t )  [ x1 (t ), x2 (t ),..., xn (t )]T : vector trạng thái


u(t )  [u1 (t ), u2 (t ),..., um (t )]T : vector tín hiệu ĐK
Trạng thái đầu: x (0)  x0 , trạng thái cuối: x (t f )  x f

 Bài toán điều khiển tối ưu: tìm tín hiệu ĐK u(t) sao cho:
tf

J (u)   ( x (t f ))   L( x (t ), u(t ), t )dt  min


t0

 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.
15 January 2014 © H. T. Hoàng - HCMUT 46
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Phân loại bài toán điều khiển tối ưu
 Khoảng thời gian xảy ra quá trình tối ưu là tf , có thể phân loại:
 Bài toán tối ưu có tf cố định, ví dụ:
 Điều
Điề khiển đoàn tàutà hỏa giữa 2 ga với
ới lịch trình xác
ác
định sao cho năng lượng đoàn tàu tiêu thụ là thấp nhất;
 Điều khiển quá trình chuyển đổi hóa học trong thời gian
cho trước với chi phí thấp nhất
 Bài toán tối ưu có tf không cố định, ví dụ:
 Điều khiển tên lửa lên độ cao xác định với thời gian
nhanh nhất
 Điều khiển tàu biển đi được xa nhất với một nguồn năng
lượng cố định cho trước

15 January 2014 © H. T. Hoàng - HCMUT 47


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Phân loại bài toán điều khiển tối ưu (tt)
 Các bài toán điều
điề khiển tối ưu
ư động có trạng thái đầu
đầ x0
cho trước. Trạng thái cuối quá trình tối ưu là xf =x(tf), có
thể phân loại:
 Điểm cuối tự do, ví dụ:
 Điều khiển tên lửa lên độ cao lớn nhất;
 Điều khiển tàu biển đi được xa nhất với một nguồn
năng lượng cố định cho trước
 Điểm
Điể cuối ối bị ràng
à buộc,
b ộ víí dụ:
d
 Điều khiển tên lửa vào quỹ đạo với thời gian nhanh
nhất.
nhất
 Điểm cuối cố định cho trước, ví dụ:
 Điều khiển gghépp nối các con tàu
 Điều khiển hệ thống về trạng thái cân bằng
15 January 2014 © H. T. Hoàng - HCMUT 48
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Giải bài toán ĐK toán tối ưu dùng PP biến phân
 Bài toán ĐK tối ưu liên tục có thể phát biểu lại như sau:
tf

min J (u)   ( x (t f ))   L( x (t ), u(t ), t )dt


u(t )
0

với điều kiện x (t )  f ( x (t ), u(t ), t )


trong đó t0, tf, và x (t0 )  x0 cho trước

 Kết hhợp điều


Kế điề kiện
kiệ ràng
à buộc
b ộ vào
à hàm
hà mục tiêu
iê dùng
dù hàm

Lagrange:
tf

J (u)   ( x (t f ))   L( x (t ), u(t ), t )  T (t ) f ( x (t ), u(t ))  x (t )dt


0

15 January 2014 © H. T. Hoàng - HCMUT 49


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Giải bài toán ĐK toán tối ưu dùng PP biến phân
 Định nghĩa hàm Hamilton:
H ( x , u, t ,  )  L( x , u, t )  T (t ) f ( x , u, t )
tf

 J ( u)   ( x (t f ))   [ H ( x, u, t ,  )  T (t ) x ]dt
t0

 Cần tìm u*(t) sao cho: J (u)  0


u u*
u

 Biến phân của phiếm hàm mục tiêu:


tf
 
J  
 
  T x    T x   t t 0   
 H  T 
  (t ) x 
H 
u dt
 x   t t f t 0 
x  u 

15 January 2014 © H. T. Hoàng - HCMUT 50


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều kiện cần để có lời giải bài toán điều khiển tối ưu
 Chú ý là x (t0 )  0 do điều kiện đầu cố định; x (t f )  0
nếu điểm cuối ràng buộc, x (t f )  0 nếu điểm cuối tự do
 ới mọii u cần
Để J (u)  0 với ầ cóó các
á điều
điề kiện:
kiệ
H  H  (t f )
0  (t)    (t f ) 
u x x
 Lưu ý:
 ((tt f )
 Điều kiện  (t f )  chỉ cần đối với bài toán điểm
cuối tự do. x
  (t ) được gọi là đồng trạng thái của hệ thống
t
 H f

  (t))   đ
được Jh(u)   (trình
gọii là phương   [ Htrạng
xì(t fh))đồ
đồng (t )  Tthái
(t ) x ]dt
hái d
x 0

15 January 2014 © H. T. Hoàng - HCMUT 51


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Trình tự giải bài toán điều khiển tối ưu

 B ớ 11: Viết PTTT môô tả đối tượng:


Bước t x (t )  f ( x (t ),
) u(t ),
) t)
 Bước 2: Viết hàm mục tiêu và ĐK biên từ yêu cầu thiết kế
 Bài toán điểm cuối tự do:
tf

min J ( u)   ( x (t f ))   L( x (t ),
) u(t ),
) t )dt
u( t )
t0
Điều kiện đầu: x (t0 )  x0
 Bài toán điểm cuối ràng buộc:
tf

min J ( u)   L( x (t ), u(t ), t )dt


u( t )
t0

Điều kiện đầu x (t0 )  x0 và điều kiện cuối x (t f )  x f


15 January 2014 © H. T. Hoàng - HCMUT 52
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Trình tự giải bài toán điều khiển tối ưu
 Bước 3: Thành lập hàm Hamilton: H (t )  L( x, u, t )   T (t ) f ( x , u, t )
 Bước 4: Viết điều kiện cần để có lời giải tối ưu:
PT trạng thái: x (t )  f ( x (t ),
) u(t ),
) t)
 H
PT đồng trạng thái:  (t)  
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 )  (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)
15 January 2014 © H. T. Hoàng - HCMUT 53
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Đ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 độ lò sấy 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 )

 Trạng thái cuối ố x f  x(1)  y (1)  ya  yd  ya  50


ố mong muốn: 0

15 January 2014 © H. T. Hoàng - HCMUT 54


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển tối ưu – Thí dụ 1 (tt)
 Bước 2: Xác định hàm mục tiêu và điều kiện biên:
Theo yêu cầu thiết kế là trạng thái cuối x(tf ) càng gần xf =50 càng tốt,
đồng thời tối thiểu năng lượng tiêu tốn, suy ra hàm mục tiêu:
tf
1 1 2
J (u )  [ x(t f )  x f ]   u (t )dt  min
2

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
15 January 2014 © H. T. Hoàng - HCMUT 55
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Đ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: HH
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
15 January 2014 © H. T. Hoàng - HCMUT 56
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Đ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)

 Thay (6) vào (3):


u (t )  C1e 2t (7)

 Thay (7) vào (1) (1), ta được:


x (t )  2 x(t )  C1e 2t (8)

C1 2t
 x(t )   e  C2 e  2t
4

22x(t()t ) u0(t )


x (tu)((tt)) (1)
(3)
(2)

15 January 2014 © H. T. Hoàng - HCMUT 57


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển tối ưu – Thí dụ 1 (tt)
 Xác định các hằng số dựa vào điều kiện biên:
 x ( 0)  0
 (1)    x(1)  50 

 C1
 4  C2  0
 
C1e     e  C2 e  2  50 

2 C1 2
  4 
 50 
C1   e 2   (e 2  e  2 ) / 4

12.5 
C2 
  e 2   ( e 2  e  2 ) / 4

15 January 2014 © H. T. Hoàng - HCMUT 58


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển tối ưu – Thí dụ 1 (tt)

 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

15 January 2014 © H. T. Hoàng - HCMUT 59


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển tối ưu – Thí dụ 2
 Cho hệ thống xe như hình vẽ.
vẽ Quan y(t))
y(
hệ vào ra của hệ thống mô tả bởi u(t)
phương trình vi phân: M
My(t )  u(t )
trong ( ) là tín hiệu
g đó u(t) ệ vào (lực
( ự điều khiển); y(t)) là tín hiệu
); y( ệ ra ((vịị trí
xe); m = 0.5kg là khối lượng xe
 Bài toán đặt ra là thiết kế luật điều khiển u(t) để điều khiển xe từ
trạng thái
hái đứ
đứng yên
ê tạii gốc
ố tọa độ đếđến trạng thái
hái đứ
đứng yên
ê tạii vịị tríí
cách gốc tọa độ 10cm trong khoảng thời gian 1 giây, đồng thời tối
thiểu năngg lượngg tiêu tốn.
 Yêu cầu:
 Hãyy thành lập
ập bài toán tối ưu cho yyêu cầu thiết kế trên.
 Giải bài toán tìm tín hiệu điều khiển tối ưu

15 January 2014 © H. T. Hoàng - HCMUT 60


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển tối ưu – Thí dụ 2
 Giải
Giải:
 Bước 1: Viết phương trình trạng thái của đối tượng
 ế trạng thái x1 (t )  y (t ),
Đặt các biến ) x2 (t )  y (t )
 Phương trình trạng thái mô tả đối tượng

 x1 (t )  x 2 (t )
 x (t )  1 u(t )
 2 M

 x1 (t )  x2 (t )
 
 x 2 (t )  2u(t )

15 January 2014 © H. T. Hoàng - HCMUT 61


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển tối ưu – Thí dụ 2
 Bước 2: Xác định hàm mục tiêu và điều kiện biên:
 Yêu cầu thiết kế là trạng thái xe tại thời điểm tf = 1 đứng yên tại vị
trí 10cm (điểm cuối ràng buộc) đồng thời tối thiểu năng lượng tiêu
tốn,
ố suy ra hàm mục tiêu:
1
1 2 (Bài toán tối ưu
J (u )   u (t )dt  min
20 điểm cuối ràng buộc)
 Từ dữ kiện của đề bài, có thể xác định được điều kiện biên:
Điều kiện đầu: x1 (0)  y (0)  0, x2 (0)  y (0)  0
Điều kiện cuối: x1 (1)  y (1)  10, x2 (1)  y (1)  0
 Bước 3: Thành lập hàm Hamilton:
H ( x , u,  , t )  L( x , u, t )   T (t ) f ( x , u, t )
1 2
 H ( x, u,  , t )  u (t )  1 x 2 (t )  2 2u(t )
2
15 January 2014 © H. T. Hoàng - HCMUT 62
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển tối ưu – Thí dụ 2 (tt)
 Bước 4: Điều kiện cần để có nghiệm tối ưu
 x1 (t )  x2 (t ) (1)
PT trạng thái: 
 x 2 (t )  2u(t )
 H

 1 ( t )   0
 x1
PT đồng trạng thái:  (2)
2 (t )   H  1
 x 2
H u ( t )  2 2 ( t )  0
Điều kiện dừng: 0  (3)
u
u
x (0)  0;0
T
Điều kiện đầu: (4)
x (1)  10;0 (5)
T
Điều kiện cuối:
15 January 2014 © H. T. Hoàng - HCMUT 63
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển tối ưu – Thí dụ 2 (tt)
 Bước 5: Giải phương trình vi phân
1 (t )  C1
 Nghiệm
g ệ pphương g trình ((2):
)  (6)
2 (t )  C1t  C 2
 Nghiệm phương trình (3):
u(t )  22 (t )  2C1t  2C 2 (7)
 Thay (7) vào (1), ta được:
 x1 (t )  x 2 (t )

 x 2 (t )  2u (t )  4C1t  4C 2
 x1 (t )  23 C1t 3  2C 2 t 2  C3t  C 4
  (9)
x
 2 ( t )  2 C1 t 2
 4C 2 t  C3
15 January 2014 © H. T. Hoàng - HCMUT 64
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển tối ưu – Thí dụ 2 (tt)
 Thay điều kiện biên:
 x1 (0)  C 4  0 C 4  0
 x 2 (0)  C3  0 C  0
 3
 x (1)  2 C  2C  10  
 1 3 1 2
C1  30
 x 2 (1)  2C1  4C 2  0 C 2  15

Kết
ế luận: Tín hiệu điều
ề khiển
ể tối
ố ưu là
u (t )  60t  30
*
(7)

15 January 2014 © H. T. Hoàng - HCMUT 65


CuuDuongThanCong.com https://fb.com/tailieudientucntt
PHƯƠNG PHÁP QUI HOẠCH ĐỘNG

15 January 2014 © H. T. Hoàng - HCMUT 66


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Nguyên lý tối ưu Bellman
 Phương pháp qui hoạch động (DP – Dynamic
Programing) do Bellman đề xuất (1957)
 Phương pháp qui hoạch động là một thuật toán xác định
dãy giá trị {u(k)} tối ưu để tối thiểu chỉ tiêu chất lượng J.
 Nguyên
g y lý ý tối ưu: Mỗi đoạn cuối của q quỹỹ đạo trạng
g thái
tối ưu cũng là một quỹ đạo trạng thái tối ưu.

x2
Đoạn 2

Đoạn 3 xN
xk Đoạn 1

x0
x1
15 January 2014 © H. T. Hoàng - HCMUT 67
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thí dụ tìm đường ngắn nhất dùng DP
 Tìm đường ngắn nhất đi từ A đến J,
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.
15 January 2014 © H. T. Hoàng - HCMUT 68
CuuDuongThanCong.com https://fb.com/tailieudientucntt
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

N11 N32 N51


N22

N42
N33
N23

Bước 1 Bước 2 Bước 3 Bước 4 Bước 5


15 January 2014 © H. T. Hoàng - HCMUT 69
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thí dụ tìm đường ngắn nhất dùng DP

 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

 J1* ( N11 ) là khoảng cách ngắn
ắ nhất
ấ từ nút đầu
ầ đến
ế nút đích.

15 January 2014 © H. T. Hoàng - HCMUT 70


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thí dụ tìm đường ngắn nhất dùng DP

 Giải PT Bellman qua 2 vòng:


 Vòng ngược: đi ngược từ nút cuối về nút đầu tìm
đoạn đường cuối ngắn nhất
 Vòng xuôi: đi từ nút đầu đến nút cuối  đường đi
tối ưu
15 January 2014 © H. T. Hoàng - HCMUT 71
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thí dụ tìm đường ngắn nhất dùng DP

 Vòng ngược:
 Bước 5: bắt đầu từ nút đích J 5* ( N 51 )  0
 Bước 4: đoạn đường ngắn nhất từ nút N41 hoặc N42
đến đích:
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
15 January 2014 © H. T. Hoàng - HCMUT 72
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thí dụ tìm đường ngắn nhất dùng DP (tt)
 Bước 3: có nhiều lựa
chọn, từ nút N3i phải
chọn
ọ đường g đi đến
đích qua nút N4j nào
tối ưu đoạn quỹ đạo
cuối
ối J 3* ( N 3i ) ?
J 3* ( N 3i )  mind ( N 3i , N 4 j )  J 4* ( N 4 j )
j

Từ nút
d ( N 3i , N 4j )  J *
4 (N4 j ) * Quyết định
J ( N 3i )
3 đi đến
N3i N 41 N 42
N 31 1+3=4 4+4=8 4 N41 (H)
N 32 6+3=9 3+4=7 7 N42 ((I))
N 33 3+3=6 3+4=7 6 N41 (H)
15 January 2014 © H. T. Hoàng - HCMUT 73
CuuDuongThanCong.com https://fb.com/tailieudientucntt
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 3* ( N 31 )  4
J), sử dụng kết
ế quả J 3* ( N 32 )  7
tối ưu đoạn cuối tìm J 3* ( N 33 )  6
được ở bước 3

J 2* ( N 2i )  mind ( N 2i , N 3 j )  J 3* ( N 3 j )
j

Từ nút
d ( N 2i , N 3 j )  J 3* ( N 3 j ) * Quyết định
J ( N 2i )
2 đi đến
N2i N 31 N 32 N 33
N 21 7+4=11 4+7=11 6+6=12 11 N 31 hoặc N 32
N 22 3+4=7 2+7=9 4+6=10 7 N 31
N 23 4+4=8 1+7=8 5+6=11 8 N 31 hoặc N 32
15 January 2014 © H. T. Hoàng - HCMUT 74
CuuDuongThanCong.com https://fb.com/tailieudientucntt
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 J 2* ( N 21 )  11
nút A)) đến nút đích J 2* ( N 22 )  7
N51 (tức nút J), sử J 2* ( N 23 )  8
dụng kết quả tối ưu
đ
đoạn cuối
ối tì
tìm đ
được
ở bước 2


J1* ( N11 )  min d ( N11 , N 2 j )  J 2* ( N 2 j )
j

Từ d ( N11 , N 2 j )  J 2* ( N 2 j ) *
Quyết
Q ết định
J ( N11 )
1 đi đến
N 21 N 22 N 23
N11 2+11=13 4+7=11 2+8=10 10 N 23

15 January 2014 © H. T. Hoàng - HCMUT 75


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thí dụ tìm đường ngắn nhất dùng DP (tt)

 Vò xuôi:
Vòng ôi đi từ bước
b ớ 1 đến
đế bbước
ớ 5 để rút
út ra đường
đ ờ đi tối ưu

Kết luận:
ố ưu: N11  N 23  N 31  N 41  N 51
Đường đi tối
hoặc: N11  N 23  N 32  N 42  N 51

15 January 2014 © H. T. Hoàng - HCMUT 76


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Bài toán điều khiển tối ưu động rời rạc
 Cho đối tượng
ợ g mô tả bởi p
phương
g trình sai p
phân:
x (k  1)  f ( x (k ), u(k )) (*)
trong đó: x (k )  [ x1 (k ), x2 (k ),..., xn (k )]T: vector trạng
g thái
u(k )  [u1 (k ), u2 (k ),..., um (k )]T: vector tín hiệu điều khiển
 Trạng thái đầu: x (0)  x0 , trạng thái cuối: x ( N )  x N
 Bài toán điều khiển tối ưu: tìm tín hiệu u(k) sao cho:
N 1
J   ( N , x N )   L( x (k ),
) u(k ))  min
k 0

Chú ý: Bài toán tối ưu điểm cuối tự do  ( N , x N )  0


Bài toán tối ưu điểm cuối cố định  ( N , x N )  0
 Ý tưởng giải bài toán ĐK tối ưu rời rạc dùng nguyên lý tối ưu
Bellman: tìm kiếm nghiệm u* (k(k ) phụ thuộc x * (k ) theo chiều
ngược hướng quỹ đạo từ điểm cuối xN đến điểm đầu x0
15 January 2014 © H. T. Hoàng - HCMUT 77
CuuDuongThanCong.com https://fb.com/tailieudientucntt
PP qui hoạch động giải bài toán ĐK tối ưu rời rạc
 Đặt hàm mục tiêu tối ưu cho đoạn quỹ đạo t.thái t thái cuối kể từ điểm x(k)
 N 1

J k ( x ( k ))  min  ( N , x ( N ))   L( x (i ), u(i )) , ( k  0, N  1)
*
u ( k ),...,u ( N 1)
 i k 
*
 Biểu diễn J k ( x (k )) dưới dạng:
 N 1

J k ( x (k ))  min  L( x (k ),
*
) u(k ))   ( N , x ( N ))   L( x (i ),
) u(i )) 
u( k ),...,u ( N 1)
 i k 1 

 J k* ( x (k ))  min L( x (k ), u(k ))  J k*1 ( x (k  1))
u (k
(k )


 J k* ( x (k ))  min L( x (k ), u(k ))  J k*1 ( f ( x (k ), u(k )))
u( k )
 (PT Bellman)

 Dễ thấy: J N* ( x ( N ))   ( N , x ( N )) và J 0* ( x (0))  minJ 


 Giải N phương trình Bellman theo thứ tự k  N  1  0 sẽ tìm được
tín hiệu điều khiển tối ưu.
15 January 2014 © H. T. Hoàng - HCMUT 78
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Trình tự giải bài toán ĐK tối ưu rời rạc dùng DP
 Đối tượng: x (k  1)  f ( x (k ),
) u(k ))
 Yêu cầu thiết kế: Tìm tín hiệu u* (k ), k  0,1,..., N  1 điều khiển
hệ
ệ thống ạ g thái đầu x (0)  x0 đến trạng
g từ trạng ạ g thái cuối x ((N )
sao cho tối thiểu chỉ tiêu chất lượng:
N 1
J   ( N , x N )   L( x (k ), u(k ))  min
k 0

 Bước 1: Viết phương trình Bellman:


J k* ( x (k ))  min  ) u(k ))  J k*1 ( f ( x (k ),
i L( x (k ),
u( k )

) u(k ))) (k  0,1,..., N  1)

với J N* ( x ( N ))   ( N , x N )
 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ừ đ/kiện đầu x0


*

15 January 2014 © H. T. Hoàng - HCMUT 79


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Trình tự giải bài toán ĐK tối ưu rời rạc dùng DP (tt)
*
 Vòng ngược: tìm u ((kk ) phụ thuộc x(k) (k=N10),
0) gồm các
bước:
 Tìm u* (N ( N  1) là nghiệm bài toán tối ưu:
( N  1) phụ thuộc x (N
J N* 1 ( x ( N  1))  min L( x ( N  1), u( N  1))   ( N , x ( N ))
u ( N 1)

với ràng buộc f ( x ( N  1),


) u( N  1))  x ( N )
 Với k  N  2  0 :tìm u* (k ) phụ thuộc x (k ) là nghiệm PT Bellman:

J k* ( x (k ))  min L( x (k ), u(k ))  J k*1 ( f ( x (k ), u(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
tì u (k ) , áp
á dụng
d *
PP tối ưu tĩnh,
tĩ h giải
iải PT
PT: 0
u(k )
15 January 2014 © H. T. Hoàng - HCMUT 80
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Trình tự giải bài toán ĐK tối ưu rời rạc dùng DP (tt)
*
 Vòng xuôi: xác định giá trị cụ thể uk (k
(k ) . Thực hiện các bước
sau đây với k=0,1,2,….N1:

 Gán x (k ) vào công thức u* (k (k ) đã tính ở vòng ngược để


được giá trị cụ thể của u* (k )

 Thay u* (k
Tha (k ) vào
ào mô hình toán của đối ttượng
ợng để tính được
đ ợc
trạng thái tối ưu ở thời điểm (k+1)

x (k  1)  f ( x (k ),
) u* (k ))

15 January 2014 © H. T. Hoàng - HCMUT 81


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển tối ưu rời rạc dùng DP – Thí dụ 1
 Xét đối tượng là khâu quán tính bậc 1 có mô hình trạng thái:
1 1
x(k  1)  x(k )  u (k )
2 2
 Xá định
Xác đị h tín
í hiệu
hiệ điề
điều khiể
khiển tối
ối ưu để điề
điều khiển
khiể hệ thống
hố từừ
trạng thái đầu x(0)=4 đến trạng thái cuối x(4)=0 sao cho:
3
J   ( x 2 (k )  u 2 (k ))  min
i
k 0
 Giải:
 Phương trình Bellman:

J k* ( x (k ))  min L( x (k ), u(k ))  J k*1 ( f ( x (k ), u(k )))
u( k )

 J k* ( x(k ))  minx (k )  u 2 2

(k )  J k*1 (0.5 x(k )  0.5u (k )) (k  0  3)
u(k )

với: J 4* ( x(4))  0

15 January 2014 © H. T. Hoàng - HCMUT 82


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển tối ưu rời rạc dùng DP – Thí dụ 1 (tt)
 Vòng ngược: Với k = 3:
Phương trình Bellman:

u ( 3)

J 3* ( x(3))  min x 2 (3)  u 2 (3)  (do J 4* ( x(4))  0 )

Điều kiện ràng buộc:0.5 x(3)  0.5u (3)  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)

15 January 2014 © H. T. Hoàng - HCMUT 83


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển tối ưu rời rạc dùng DP – Thí dụ 1 (tt)
 Vòng ngược: Với k = 2:
Phương trình Bellman:

J 2* ( x(2))  min x 2 (2)  u 2 (2)  J 3* ( x(3))
u ( 2)

 J 2* ( x(2))  minx (2)  u 2 2

(2)  2 x 2 (3)
u ( 2)

  1 1 
2

 J 2 ( x(2))  min
*
i  x (2)  u (2)  2  x(2)  u (2)) 
2 2
u ( 2)
 2 2  
3 2 3 2 
 J 2 ( x(2))  min  x (2)  x(2)u (2)  u (2)
*
u ( 2) 2 2
 
J 2 (.) x ( 2)
Do  x(2)  3u (2)  u * (2)  
u (2) 3
2 2

 J 2* ( x(2))  x 2 (2)    x(2)   2 1  x(2)  x(2) 


 3  2  3 
4 2
 J ( x(2))  3 x (2)
*
2

15 January 2014 © H. T. Hoàng - HCMUT 84


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển tối ưu rời rạc dùng DP – Thí dụ 1 (tt)
 Vòng ngược: Với k = 1:
Phương trình Bellman:

J1* ( x(1))  min x 2 (1)  u 2 (1)  J 2* ( x(2))
u (1)

 2 4 2 
 J1 ( x(1))  min
*
 x (1)  u (1)  x (2)
2
u (1)
 3 

 4  1 
2

 J1 ( x(1))  min  x (1)  u (1)   ( x(1)  u (1)) 
* 2 2
u (1)
 3 2  
 J1* ( x(1))  min  x 2 (1)  x(1)u (1)  u 2 (1)
4 2 4
u (1)
3 3 3 
J (.) 2 8 x(1)
Do: 1  x(1)  u (1)  u * (1)  
u (1) 3 3 4
2 2
 x(1)  4  1  x(1) 
 J1* ( x(1))  x 2 (1)      2  x (1)  
 4  3   4 
5
 J1* ( x(1))  x 2 (1)
4
15 January 2014 © H. T. Hoàng - HCMUT 85
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển tối ưu rời rạc dùng DP – Thí dụ 1 (tt)
 Vòng ngược: Với k = 0:
Phương trình Bellman:
 
J 0* ( x(0))  min x 2 (0)  u 2 (0)  J1* ( x(1))
u0 1

 J 0* ( x(0))  min  x 2 (0)  u 2 (0)  x 2 (1)


5
u (0)
 4 

 5  1 
2

 J 0 ( x(0))  min  x (0)  u (0)   ( x(0)  u (0)) 
* 2 2
u (0)
 4 2  
 J 0* ( x(0))  min  21 x 2 (0)  5 x(0)u (0)  21 u 2 (0)
u ( 0 ) 16 8 16
 
J 0 (.) 5 21 5
Do:  x(0)  u (0)  u (0)   x(0)
*

u (0) 8 8 21
2 2

 J 0* ( x(0))  x 2 (0)    5 x(0)   5  1  x(0)  5 x(0) 


 21  4 2  21 
26
 J 0* ( x(0))  x 2 (0)
21
15 January 2014 © H. T. Hoàng - HCMUT 86
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thí dụ giải bài toán ĐK tối ưu rời rạc dùng DP (tt)
 Vòng xuôi:
Điều kiện đầu: x(0)  4

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

15 January 2014 © H. T. Hoàng - HCMUT 87


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thí dụ giải bài toán ĐK tối ưu rời rạc dùng DP (tt)
 Vòng xuôi:
x(2) 4
Với k = 2: u (2)  
*

3 21
1 1  12 4  4
x(3)  ( x(2)  u * (2))     
2 2  21 21  21
4
Với k = 3: u * (3)   x(3)  
21
1 1 4 4 
x(4)  ( x(3)  u (3))      0
*

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
26 2 416
Chỉỉ tiêu chất
ấ lượng tối
ố ưu: J min  J 0* ( x(0))  x (0) 
21 21
15 January 2014 © H. T. Hoàng - HCMUT 88
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Qui hoạch động giải bài toán ĐK tối ưu liên tục
 Cho đối tượng mô tả bởi phương trình trạng thái:
x (t )  f ( x (t ), u(t ), t )
ạ g thái đầu: x (0)  x0 , trạng
Trạng ạ g thái cuối: x (t f )  x f
 Bài toán điều khiển tối ưu: tìm tín hiệu điều khiển u(t) sao cho:
tf
J (u)   ( x (t f ))   L( x (t ), u(t ), t )dt  min ((*))
ti

 Đặ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 
15 January 2014 © H. T. Hoàng - HCMUT 89
CuuDuongThanCong.com https://fb.com/tailieudientucntt
ĐIỀU CHỈNH TOÀN PHƯƠNG TUYẾN TÍNH
(Linear Quadratic Regulator – LQR)

15 January 2014 © H. T. Hoàng - HCMUT 90


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Bài toán LQR liên tục
 Đối tượng tuyến tính mô tả bởi phương trình trạng thái:
x (t )  Ax (t )  Bu(t ) (*)
t
trong đó: x (t )  [ x1 (t ),
đó ) xn (t )]T : vector
) x2 (t ),..., t trạng
t thái
u(t )  [u1 (t ), u2 (t ),..., um (t )]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
điề khiển
khiể u(t)
( ) điều
đ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(tf) = 0 sao cho
tối thiểu chỉ tiêu chất lượng
ợ g dạng
ạ g toàn phương:
p g
tf
1 T
2
1

J (u)  x (t f ) Mx (t f )   x T (t )Qx (t )  uT (t ) Ru(t ) dt
2 t0

trong đó Q và M là các ma trận trọng số bán xác định dương
R là ma trận
ậ trọng
ọ g số xác định
ị dương g
 Bài toán trên được gọi là bài toán điều chỉnh toàn phương tuyến tính.
15 January 2014 © H. T. Hoàng - HCMUT 91
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều kiện cực trị bài toán LQR liên tục
 Hàm Hamilton:
1 T
 
H  x (t )Qx (t )  uT (t ) Ru(t )  T (t )Ax (t )  Bu(t )
2
 Điều kiện cần để có lời giải tối ưu:
PT trạng thái:
hái x (t )  Ax
A (t )  Bu
B (t ) (1)
H
PT đồng trạng thái:  (t )   Qx (t )  A (t )
 Q (2)
x
H
Điều kiện dừng:  Ru(t )  B T  (t )  0x (t )  f ( x (t ), u(t ),(3)
t)
u
 H
 (t )  
T

x
H
0 T
H (t )  L( x, u , t )   (t ) f ( x , u, t )
15 January 2014 © H. T. Hoàng - HCMUT 92
CuuDuongThanCong.com https://fb.com/tailieudientucntt
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 )   Q  A   (t )
(6)

 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

15 January 2014 © H. T. Hoàng - HCMUT 93


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Lời giải bài toán LQR liên tục

 Tí hiệu
Tín hiệ điều khiể tối ưu: u* (t )   K (t ) x (t )
điề 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

 Lời giải phương trình Ricatti:


 Trường hợp hệ bậc 2: có thể giải bằng tay
 Trường hợp tổng quát: tham khảo thêm trong tài liệu

15 January 2014 © H. T. Hoàng - HCMUT 94


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Bài toán LQR liên tục thời gian vô hạn
 Đối tượng tuyến tính mô tả bởi phương trình trạng thái:
x (t )  Ax (t )  Bu(t )
 Chỉ tiêu chất lượng dạng toàn phương,
phương trong đó thời điểm cuối tf=:

1

J (u)   x T (t )Qx (t )  uT (t ) Ru(t ) dt
20

 Tín hiệu điều khiển tối ưu: u* (t )   Kx (t )
trong đó: K  R 1 B T P
và P là nghiệm bán xác định dương của phương trình đại số Ricatti:
PA  AT P  Q  PBR 1 B T P  0
 Chú ý: trong trường hợp này K và P là không phụ thuộc thời gian
 Giá trị cực tiểu ấ lượng: J min  x T (0) Px (0)
ể của chỉ tiêu chất

15 January 2014 © H. T. Hoàng - HCMUT 95


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển LQR liên tục – Thí dụ 1
 Cho hệ tuyến tính bậc 1 không ổn định mô tả bởi PTTT:
x (t )  3x(t )  2u (t )
 ậ điều khiển u(t)
Yêu cầu: Thiết kế luật ( ) để hệệ kín ổn định
ị và tối thiểu
chỉ tiêu chất lượng: 
1
J   ( x 2 (t )  5u 2 (t ))dt
20
 Giải:
 Phương trình đại số Ricatti: PA  AT P  Q  PBR 1 B T P  0
1 4 2
 P.3  3.P  1  P.2. .2.P  0  P  6P  1  0
5 5
 P  7.663 (chọn nghiệm xác định dương)
1
 Độ lợi hồi tiếp trạng thái: K  R B P  K  .2.(7,663)  3,065
1 T
5
 Luật điều
ề khiển ố ưu: u (t )   Kx(t )  u (t )  3,065 x(t )
ể tối

15 January 2014 © H. T. Hoàng - HCMUT 96


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển LQR liên tục – Thí dụ 2
 x1  x2
 Cho hệ tuyến tính bậc 2 mô tả bởi PTTT: 
 x2  u
 Yêu cầu:
Yê ầ Thiết kế luật
l ật điều
điề khiển (t) để hệ kín
khiể u(t) kí ổn
ổ định
đị h vàà tối thiểu
thiể
chỉ tiêu chất lượng: 
1
J   (2 x12 (t )  2u 2 (t ))dt
 Giải: 20
 x1 (t )  0 1  x1 (t )  0
 Viết lại
ạ phương
p g trình trạng
ạ g thái:         u (t )
 x2 (t )  0 0  x2 (t ) 1
 
A B
 Viết lại
ạ chỉ tiêu chất lượng:
ợ g

1 2 0  x1 
J   x1 x2      2 2
 (t ))dt
u
20 0 0   x2  R

Q
15 January 2014 © H. T. Hoàng - HCMUT 97
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển LQR liên tục – Thí dụ 2
 Phương trình đại số Ricatti:
PA  AT P  Q  PBR 1 B T P  0
 p1 p2  0 1 0 0  p1 p2   2 0
   
 p2 p3  0 0 1 0  p2
   
p3  0 0
 p1 p 2  0  1  p1 p2 
    0 1  0
 p2 p3  1 2  p2 p3 

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 
15 January 2014 © H. T. Hoàng - HCMUT 98
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Đ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

 Độ lợi hồi tiếp trạng thái:


1 2 2 2 
K  R B P  K  0 1
1 T
  K  [1 2]
2  2 2 2
 Luật điều khiển tối ưu:
 x1 (t ) 
u (t )   Kx (t )  [1
*
2 ]   u * (t )   x1 (t )  2 x2 (t )
x
 2 (t )

15 January 2014 © H. T. Hoàng - HCMUT 99


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển LQR liên tục – Thí dụ 3
 Cho hệ tuyến tính bậc 2 mô tả bởi PTTT:
 x1 (t )   0 1   x1 (t )  0
 x (t )   1  2  x (t )  1u (t )
 2    2  
A B
 Yêu cầu: Thiết kế luật điều khiển u(t) để hệ kín ổn định và tối thiểu
chỉ tiêu chất lượng:

1
J   [2 x12 (t )  x22 (t )  u 2 (t )]dt
 Giải: 20

 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 0 1   x2 
 R
Q
15 January 2014 © H. T. Hoàng - HCMUT 100
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Đ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
 p p 2  0   p1 p2 
 1 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 

15 January 2014 © H. T. Hoàng - HCMUT 101


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Điều khiển LQR liên tục – Thí dụ 3

 2 p2  2  p22  0  p1  2.403
 p  2 p  p  p p  0  (chọn các
 1 2 3 2 3   p2  0.732
 p  p1  2 p2  p2 p3  0  p  0.542 nghiệm
g ệ dương)
g)
 3
2 p2  4 p3  1  p32  0  3

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 )
15 January 2014 © H. T. Hoàng - HCMUT 102
CuuDuongThanCong.com https://fb.com/tailieudientucntt
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
điề khiển
khiể u(k)
(k) điều
đ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 phương:
p 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

trong đó Q và M là các ma trận trọng số bán xác định dương


ậ trọng
R là ma trận ọ g số xác định
ị dương g

15 January 2014 © H. T. Hoàng - HCMUT 103


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Lời giải bài toán LQR rời rạc

 Tí hiệu
Tín hiệ điều khiể tối ưu: u* (k )   K (k ) x (k )
điề 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)

15 January 2014 © H. T. Hoàng - HCMUT 104


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Bài toán LQR rời rạc thời gian vô hạn
 Đối tượng tuyến tính mô tả bởi phương trình trạng thái rời rạc:
x (k  1)  Ad x (k )  Bd u(k )
 Chỉ tiêu chất lượng dạng toàn phương,
phương trong đó thời điểm cuối N :
N=:
1  T

J (u)   x (k )Qx (k )  uT (k ) Ru(k )
2 k 0

 Tín hiệu điều khiển tối ưu: u* (k )   Kx (k )
t
trong đó:
đó K  B PBd  R BdT PAd  T
d 
1

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)
15 January 2014 © H. T. Hoàng - HCMUT 105
CuuDuongThanCong.com https://fb.com/tailieudientucntt
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 đại
đ i 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)
15 January 2014 © H. T. Hoàng - HCMUT 106
CuuDuongThanCong.com https://fb.com/tailieudientucntt
BỘ LỌC KALMAN

15 January 2014 © H. T. Hoàng - HCMUT 107


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Lọc Kalman liên tục
 x (t )  Ax (t )  Bu (t )  w (t )
 Xét
é hệ
h tuyến
ế tính
í h liên
li tục: 
 y (t )  Cx(t )  v(t )
Trong đó: w(t) là nhiễu hệ thống; v(t) là nhiễu đo lường.
lường
Giả sử nhiễu hệ thống và nhiễu đo lường có phân bố Gauss, không
tương quan, có trung bình bằng 0 và phương sai là:
E[ ww T ]  Q N E[vvT ]  RN

 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
15 January 2014 © H. T. Hoàng - HCMUT 109
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Sơ đồ khối bộ lọc Kalman liên tụ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 )

Trong đó: L  C T RN1


A  AT  C T RN1C   Q N  0

15 January 2014 © H. T. Hoàng - www4.hcmut.edu.vn/~hthoang/ 110


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Bộ lọc Kalman liên tục – Thí dụ 1
 Cho hệ tuyến tính bậc 2 mô tả bởi PTTT:
 x (t )  Ax (t )  Bu (t )  w (t )
 y (t )  Cx(t )  v(t )

Trong đó: A  
0 1 0 
 1  2 B  C  1 0
1
 
0.2 0 
E[ ww T ]  Q N    E[ vv T
]  RN  0.01
 0 0.1
 Yêu cầu:
ầ Thiết ế kếế bộ lọc Kalman ước lượng trạng thái của hệ thống

trên từ tín hiệu đo y(t).
 Giải:
 xˆ (t )  Axˆ (t )  Bu (t )  L( y (t )  yˆ (t ))
 Bộ ước lượng trạng thái: 
 yˆ (t )  Cxˆ (t )
L  C T RN1
15 January 2014 © H. T. Hoàng - HCMUT 111
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Bộ lọc Kalman liên tục – Thí dụ 1
 Trong đó  là nghiệm của phương trình đại số Ricatti:
A    AT  Q N   C T RN1C   0

0 1   p1 p2   p1 p2  0  1  0.2 0 
  
 1  2  p2 
p3   p2 
p3  1  2  0 0.1
 
 p1 p2  1 1  p1 p2 
 1 0  0
 p2 p3  0 0.01  p2 
p3 

  p2 p3   p2  p1  2 p2  0.2 0 
 p1  2 p2    
 p2  2 p3   p3  p2  2 p3   0 0.1
 p12 p1 p2 
 100 2  0
 p1 p2 p2 

 2 p2  0.2  100 p12 p3  p1  2 p2  100 p1 p2 


  2  0
 p3  p1  2 p2  100 p1 p2  2 p2  4 p3  0.1  p2 
15 January 2014 © H. T. Hoàng - HCMUT 112
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Bộ lọc Kalman liên tục – Thí dụ 1
2 p2  0.2  100 p12  0 (1)

  p3  p1  2 p2  100 p1 p2  0 (2)
 2 p2  4 p3  0.1  p22  0 (3)

(2) &(3)  p22  400 p1 p2  4 p1  10 p2  0.1  0 (4)


(1) &(4)  (50 p1  0.1)  (50 p1  0.1)(400 p1  10)  4 p1  0.1  0
2 2 2

 2500 p14  20000 p13  490 p12  36 p1  1.09  0


 p1  0.0441
 0.0441  0.00279
  p2  0.00279  
 p3  0.0262  0.00279 0.0262 

 Độ lợi bộ lọc Kalman: L   C T RN1


 0.0441  0.00279 1 1 
 L
4.409
 L
 0.00279 0.0262  0 0.01 0.279
15 January 2014 © H. T. Hoàng - HCMUT 113
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Lọc Kalman rời rạc
x (k  1)  Ad x (k )  Bd u (k )  w (k )
 ế tính rời rạc: 
Xét hệ tuyến
 y (k )  C d x(k )  v(k )
Trongg đó: w(k)
( ) là nhiễu hệệ thống; ( ) là nhiễu đo lường.
g; v(k) g
Giả sử nhiễu hệ thống và nhiễu đo lường có phân bố Gauss, không
tương quan, có trung bình bằng 0 và phương sai là:
E[ ww T ]  Q N E[vvT ]  RN
 Bộ lọc Kalman rời rạc:
 xˆ (k  1)  [ Ad xˆ (k )  Bd u (k )]  Lk [ y (k  1)  yˆ (k  1)]
 yˆ (k )  C xˆ (k )
 d

Trong đó L là độ lợi của bộ lọc Kalman:



L(k )  Ad  (k )C d C d  (k )C d  RN
T T 1

với  là nghiệm của phương trình Ricatti:
 (k  1)  Ad  (k ) AdT  Q N  Ad  (k )C dT RN1C d  (k ) AdT
15 January 2014 © H. T. Hoàng - HCMUT 114
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Sơ đồ khối bộ lọc Kalman rời rạc
u(t) x(t) ()
y(t)
x d ( k  1)  Ad x ( k )  Bd u ( k ) Cd

L +

++ 1
xˆ (t )
Bd z Cd
+ yˆ (t )

Ad

Bộ lọc Kalman:  x (k  1)  [ Ad x (k )  Bd u (k )]  Lk [ y (k  1)  y (k  1)]


ˆ ˆ ˆ

 yˆ (k )  C d xˆ (k )

Trong đó: 
L(k )  Ad  (k )C C d  (k )C  RN
T
d
T
d  1

 (k  1)  Ad  (k ) AdT  QN  Ad  (k )C dT RN1C d  (k ) AdT


15 January 2014 © H. T. Hoàng - www4.hcmut.edu.vn/~hthoang/ 115
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Lời giải bộ lọc Kalman dùng Matlab

 Lời giải bộ lọc Kalman liên tục:


>> L = lqe(A,G,C,QN,RN)
l (A G C QN RN) %G ma trận
ậ đđơn vịị

15 January 2014 © H. T. Hoàng - HCMUT 116


CuuDuongThanCong.com https://fb.com/tailieudientucntt
BỘ ĐIỀU KHIỂN LQG
(Linear Quadratic Gaussian)

15 January 2014 © H. T. Hoàng - HCMUT 117


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Bài toán điều khiển LQG (Linear Quadratic Gaussian)
 Xét hệ tuyến tính liên tục bị tác động bởi nhiễu Gauss:
 x (t )  Ax (t )  Bu (t )  w (t )
 y (t )  Cx(t )  v(t )

Trong đó: w(t) là nhiễu hệ thống; v(t) là nhiễu đo lường. Giả sử
nhiễu không tương quan, có trung bình bằng 0 và phương sai là:
E[ ww T ]  Q N E[vvT ]  RN
 Bài toán đặt ra là tìm tín hiệu điều khiển u(t) điều chỉnh hệ thống từ
trạng thái đầu x (0)  x0 bất kỳ về trạng thái cuối x(tf) = 0 sao cho
tối thiểu chỉ tiêu chất lượng dạng toàn phương:
1  T 

J (u)  E   x (t )Qx (t )  u (t ) Ru(t ) dt 
T

2 0 
t
trong đó Q là các
á ma trận
t ậ ttrọng số
ố bán
bá xác
á đị
định
h dương
dươ
R là ma trận trọng số xác định dương
15 January 2014 © H. T. Hoàng - HCMUT 118
CuuDuongThanCong.com https://fb.com/tailieudientucntt
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.

LQG = LQR + Lọc Kalman

15 January 2014 © H. T. Hoàng - HCMUT 119


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Lời giải bài toán điều khiển LQG
 Tín hiệu điều khiển tối ưu LQR:
u* (t )   Kxˆ (t )
với độ lợi hồi tiếp trạng thái: K  R 1 B T P
trong đó P là nghiệm bán xác định dương của pt đại số Ricatti:
PA  AT P  Q  PBR 1 B T P  0
 Bộ lọc Kalman:
 xˆ (t )  [ Axˆ (t )  Bu (t )]  L[ y (t )  yˆ (t )]

 yˆ (t )  Cxˆ (t )
với độ lợi ước lượng: L  C T RN1
trong đó  là nghiệm bán xác định dương của pt đại số Ricatti:
A  AT  C T RN1C   Q N  0
15 January 2014 © H. T. Hoàng - HCMUT 120
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Sơ đồ khối bộ điều khiển LQG liên tục
r(t) u(t) x(t) y(t)
x (t )  Ax (t )  Bu (t )
 C

+
L 
xˆ (t )
B ++
+  C
yˆ (t )

 Bộ điều khiển LQR  Bộ lọc Kalman


u* (t )   Kxˆ (t )  xˆ (t )  Axˆ (t )  Bu (t )  L( y (t )  yˆ (t ))

K  R 1 B T P  yˆ (t )  Cxˆ (t )
PA  AT P  Q  PBR 1 B T P  0 L  C T RN1
A  AT  C T RN1C   QN  0
15 January 2014 © H. T. Hoàng - www4.hcmut.edu.vn/~hthoang/ 121
CuuDuongThanCong.com https://fb.com/tailieudientucntt
THÍ DỤ THIẾT KẾ
ĐIỀU
Ề KHIỂN
Ể TỐI
Ố ƯU

15 January 2014 © H. T. Hoàng - HCMUT 122


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Đối tượng điều khiển: hệ con lắc ngược
 Thông số hệ con lắc ngược
M =1.0 kg: troïng löôïng xe
m=0.1kg : troïng löôïng con laéc
l = 1.0 m: chieààu daøi con laééc
u : löïc taùc ñoäng vaøo xe [N]
g:g gia toác troïïng tröôøng [[m/s2]]
x : vò trí xe [m]
 : goùc giöõa con laéc vaø phöông
ñöùng [rad]
thaúng ñöng
thang

 Mô hình toán hệ con lắc ngược


u  ml (sin  ) 2  mg cos  sin 
x 
M  m  m(cos  ) 2

 u cos   ( M  m) g (sin  )  ml (cos sin  )



ml (cos ) 2  ( M  m)l
15 January 2014 © H. T. Hoàng - ÐHBK TPHCM 123
CuuDuongThanCong.com https://fb.com/tailieudientucntt
PTTT phi tuyến của hệ con lắc ngược
 Đặt các biến trạng thái x1   , x2  , x3  x, x4  x
 Phương trình trạng thái phi tuyến
 x2 
 x1   u cos x1  ( M  m) g (sin x1 )  ml (cos x1 sin x1 ) x2 
 x   
 2   ml (cos x1 )  ( M  m)l
2

 x3   x4 
   u  ml (sin
( x ) x 2
 mg
g cos x sin x 
 x4   1 2 1 1

 M  m  m(cos x1 ) 2

 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

15 January 2014 © H. T. Hoàng - ÐHBK TPHCM 124


CuuDuongThanCong.com https://fb.com/tailieudientucntt
PTTT tuyến tính của hệ con lắc ngược
 PTTT tuyến tính hóa quanh điểm cân bằng thẳng đứng (góc
lệch  nhỏ hơn 100)
 x1   M  m
1 0 0 x
 1  1 
0 0
 x   g 0 0 0
  


 2    Ml   x2   Ml 
 u
 x3   0 
0 0 1  x3  0 
   m     1 
 x4    M g 0 0 0  x4   M 
 Thay cụ thể thông số của hệ con lắc ngược:
 x1   0 1 0 0  x1   0 
 x   10.78 0 0 0  x   1
 2     2    u
 x3   0 0 0 1  x3   0 
      
x
 4    0.98 0 0 0  x4   1 
  
A B
15 January 2014 © H. T. Hoàng - ÐHBK TPHCM 125
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thiết kế bộ điều khiển LQR
 Giả thiết:
 Đặc tính động của hệ con lắc ngược có thể được mô tả
bởi hệ phương trình biến trạng thái tuyến tính. Điều này
chỉ
hỉ đúng
đú khi góc lệ h  nhỏ.
ó lệch hỏ
 Hệ thống phản hồi trạng thái đầy đủ, nghĩa là có thể đo
được 4 biến trạng thái (góc lệch , vận tốc góc, vị trí xe x,
vận tốc xe )
 Không có nhiễu tác động vào hệ thống.

 Thiết kế dù
dùng Matlab:
M 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

15 January 2014 © H. T. Hoàng - ÐHBK TPHCM 126


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mô phỏng điều khiển LQR hệ con lắc ngược

15 January 2014 © H. T. Hoàng - ÐHBK TPHCM 127


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Kết quả mô phỏng điều khiển LQR hệ con lắc ngược
0
0.5

[rad],[rad/s]

1 0 0 0
0

0 1 0 0 -0.5

Q
0 1 2 3 4 5 6
1
0 0 1 0 x
  x

m/s]
0.5

0 0 0 1
[m],[m
0

-0.5
R 1 10
0 1 2 3 4 5 6

u
5
[N]

-5
Góc lệ
Gó lệchh con lắ
lắc 0 1 2 3 4 5 6
Time [s]
được giữ cân bằng
tốt, tuyy nhiên vị trí xe K= [34.3620  10.7009  1.000  2.4109]
dao động khá lớn
15 January 2014 © H. T. Hoàng - ÐHBK TPHCM 128
CuuDuongThanCong.com https://fb.com/tailieudientucntt
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 00 -0.5

0 1 0 0 -1

Q
0 1 2 3 4 5 6
2
0 0 100 0 x
  x

m/s]
1

0 0 0 1
[m],[m
0

-1
R 1 20
0 1 2 3 4 5 6

u
10
Tăng trọng số q33
[N]

0
(tương ứng với vị trí -10
xe)  vị trí xe ít dao 0 1 2 3
Time [s]
4 5 6

động hơn, tuy nhiên


năng lượng tiêu tốn K=[70.1356  22.1091  10.000  11.0514]
tăng lên
15 January 2014 © H. T. Hoàng - ÐHBK TPHCM 129
CuuDuongThanCong.com https://fb.com/tailieudientucntt
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 00 -0.5

0 1 0 0 -1

Q
0 1 2 3 4 5 6
2
0 0 100 0 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 là -10
10
nếu có nhiễu đo 0 1 2 3
Time [s]
4 5 6

lường thì chất lượng


điều khiển bị ảnh K=[70.1356  22.1091  10.000  11.0514]
hưởng đáng kể
15 January 2014 © H. T. Hoàng - ÐHBK TPHCM 130
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thiết kế bộ điều khiển LQG
Giả thiết:
 Hệ thống hoạt động trong miền tuyến tính
 Giả sử chỉ đo được
ợ ggóc lệch
ệ và vịị trí xe
 Có nhiễu tác động vào hệ thống. Nhiễu đo vị trí xe có
phương sai là 0.01; nhiễu đo góc lệch con lắc có phương
sai 0.001
0 001
 Dùng lọc Kalman để ước lượng trạng thái và lọc nhiễu

 Thiết
ế kế
ế dùng Matlab:
 >> K = lqr(A,B,Q,R)
 >> L = lqe(A,G,C,QN,RN)
q ( , , ,Q , ) %G là ma trận
ậ đơn vịị

15 January 2014 © H. T. Hoàng - ÐHBK TPHCM 131


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thiết kế bộ điều khiển LQG
 Bộ điều khiển LQR
1 0 0 0
0 1 0 0
Q
0 0 100 0  K=[70.1356  22.1091  10.000  11.0514]
 
0 0 0 1
R 1

 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)
15 January 2014 © H. T. Hoàng - ÐHBK TPHCM 132
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Mô phỏng điều khiển LQG hệ con lắc ngược

15 January 2014 © H. T. Hoàng - ÐHBK TPHCM 133


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Kết quả mô phỏng điều khiển LQG hệ con lắc ngược
1

[rad],[rad/s]
0 
-1

-2
0 1 2 3 4 5 6
2
x
x
[m],[m/s]

-2
0 1 2 3 4 5 6
10
u
0
[N]

-10
0 1 2 3 4 5 6
Time [s]

Bộ lọc Kalman ước lượng trạng thái và lọc nhiễu, nhờ vậy mà
đáp ứng của hệ thống điều khiển LQG tốt hơn LQR trong
trường hợp hệ thống có nhiễu
15 January 2014 © H. T. Hoàng - ÐHBK TPHCM 134
CuuDuongThanCong.com https://fb.com/tailieudientucntt
MỘT SỐ CÔNG THỨC CẦN NHỚ

15 January 2014 © H. T. Hoàng - HCMUT 135


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Nghiệm của phương trình vi phân bậc 1
 Phương trình vi phân bậc 1 đồng nhất : x (t )  ax(t )  0
 at
 Nghiệm tổng quát: x (t )  Ce

 Hằng số C được xác định dựa vào điều kiện biên.

15 January 2014 © H. T. Hoàng - HCMUT 136


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Nghiệm của phương trình vi phân bậc 1 (tt)
 Phương trình vi phân bậc 1 không đồng nhất :
x (t )  ax (t )  b
 at b
 Nghiệm tổng quát: x (t )  Ce 
a

 Hằng
ằ sốố C được xác định dựa vào điều
ề kiện biên.

15 January 2014 © H. T. Hoàng - HCMUT 137


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Nghiệm của phương trình vi phân bậc 1 (tt)
 Phương trình vi phân bậc 1 không đồng nhất :
x (t )  p (t ) x(t )  q (t )

 Nghiệm tổng quát: x(t ) 


  (t )q(t )dt  C
 (t )
trong đó:  (t )  e  p ( t ) dt

 Hằng số C được xác định dựa vào điều kiện biên


biên.

15 January 2014 © H. T. Hoàng - HCMUT 138


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Nghiệm của phương trình vi phân bậc 2
 Phương trình vi phân bậc 2 đồng nhất : ax(t )  bx (t )  cx(t )  0
 Nghiệm tổng quát:
 Trường hợp 1:   b 2  4ac  0
x(t )  C1e p1t  C2 e p2t với p1, 2  (b   ) /(2a)

 Trường hợp 2:   b 2  4ac  0


x(t )  C1e pt  C2te pt với p  b /(2a)

 Trường hợp 3:  b 2  4ac  0


x(t )  C1et sin t  C2 et cos t
Với   b /(2a) và     /(2a)

 Hằng số C1 và C2 được xác định dựa vào điều kiện biên.


15 January 2014 © H. T. Hoàng - HCMUT 139
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Nghiệm của phương trình vi phân bậc 2
 Phương trình vi phân bậc 2 không đồng nhất :
ax(t )  bx (t )  cx(t )  d
d
 Nghiệm tổng quát: x  z 
c
trong đó z(t) là nghiệm của phương trình vi phân đồng nhất:
az(t )  bz (t )  cz (t )  0
 Hằng số C1 và C2 được xác định dựa vào điều kiện biên.

15 January 2014 © H. T. Hoàng - HCMUT 140


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Nghiệm của phương trình trạng thái
 Phương trình vi phân bậc 1: x (t )  Ax (t )  Bu (t )
Điều kiện đầu: x (t0 )  x0
trong đó: x (t )  [ x1 (t ), ) xn (t )]T   n
) x2 (t ),...,
A   nn
t
 Nghiệm : x(t )   (t ) x(t0 )   (t   ) Bu ( )d
t0
 Trong đó:  (t )  e At


Cách 1:  (t )  e At  L1 ( sI  A) 1 
Cách 2:(t )  e At  C0 I  C1 A  C2 A2    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
15 January 2014 © H. T. Hoàng - HCMUT 141
CuuDuongThanCong.com https://fb.com/tailieudientucntt
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 )

 Nếu u=1: x (t )  Ax (t )  B
t
x(t )   (t ) x(t0 )   (t   ) Bd
t0

15 January 2014 © H. T. Hoàng - HCMUT 142


CuuDuongThanCong.com https://fb.com/tailieudientucntt
Tổng kết chương

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ậ
lập các
á bài ttoán
á đ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

15 January 2014 © H. T. Hoàng - HCMUT 143


CuuDuongThanCong.com https://fb.com/tailieudientucntt

You might also like