Tải bản đầy đủ
2 Điều khiển tối ưu các hệ tuyến tính liên tục bằng bộ điều khiển LQR (Linear Quadratic Regulator)

2 Điều khiển tối ưu các hệ tuyến tính liên tục bằng bộ điều khiển LQR (Linear Quadratic Regulator)

Tải bản đầy đủ

Đồ án tốt nghiệp Đại Học
Khang

GVHD: GS.TSKH. Nguyễn Văn

Trong đó
Q = QT , xT Qx ≥ 0, Q ∈ R n×n ∀x
R = R T , xT Rx > 0, ∀x ≠ 0

(3.23)
N là ma trận cỡ

n×r

Bài toán này là bài toán điều khiển tối ưu tuyến tính bằng bộ điều khiển LQR
(Linear quadractic regulator).
3.2.2Xây dựng điều kiện cần của phiếm hàm mục tiêu
Giả sử

u* (t )

, là một tín hiệu điều khiển được tạo ra từ bộ điều khiển F và

thõa mãn điều kiện cực tiểu của hàm mục tiêu (3.22). Điều kiện có nghĩa là
trong tập các tính hiệu

u(t )

đưa trạng thái của hệ từ

x0 → 0

thì

u* (t )

là vector

thỏa mãn điều kiện
J (u* ) =



1
(x*T Qx* + u*T Ru* + 2x*T Nu* )dt ≤J (u)

20


1
= ∫ (xT QTx + uT Ru + 2x T Nu) dt
20

(3.24)
SV: Hoàng Kim Đức
54

Lớp: KSTN-CĐT-K55

Trang

Đồ án tốt nghiệp Đại Học
Khang

GVHD: GS.TSKH. Nguyễn Văn

Để bài toán có nghiệm, trong (3.22) các ma trận Q giả thiết là ma trận đối
xứng, xác định không âm, R là ma trận đối xứng xác định dương, cụ thể là:

Q = QT , xT Qx ≥ 0, ∀x
R = RT , xT Rx > 0, ∀x ≠ 0

Ta xét một tính hiệu điều khiển
*
u(t ) = uδu
(t ) +

u(t )

(t )

(3.25)
Gọi

x * (t )

là vector trạng thái của hệ ứng với điều khiển

trạng thái ứng với điều khiển
*
x(t ) = xδx
(t ) +

u(t )

u* (t ) x(t)

,

là vector

ta có

(t )

(3.26)
Từ (3.25) và (3.26) thay vào (3.21) ta được

dx*
= Ax* + Bu*
dt
(3.27)
*
d ( xδx
+

dt

) =A

( xδx+ + B) u (
*

δ+ u )

*

(3.28)
Từ (3.27) và (3.28) ta suy ra

SV: Hoàng Kim Đức
55

Lớp: KSTN-CĐT-K55

Trang

Đồ án tốt nghiệp Đại Học
Khang

GVHD: GS.TSKH. Nguyễn Văn

dδx
dδx
= Aδx + Bδu ⇒
− Aδx − Bδu = 0
dt
dt

(3.29)
Do

x(t)



x* (t )

đều là các quỹ đạo từ

x0

đi về vị trí cân bằng

x=0

nên ta có

điều kiện

δx(0) = δx(∞) = 0
(3.30)
Thay (3.25), (3.26) vào phiếm hàm mục tiêu (3.22) ta được

J + δ J = J (u* + δ u)


T
1
*
= ∫ ( xδx
+ Q) x
2 0 

(

) u+ (

δx+

*

δu
+ R) u
T

*

(

δu
+

*

) +x2 (

δx+ N) u

*

T

(

)  dt

δu
+

*

(3.31)
Từ (3.31) và (3.24) ta có
0 ≤ δ J = J (u* + δ u) − J (u* )


T
1
*
= ∫ ( xδx
+ Q) x
2 0 

(

δx+

*

) u+ (

δu
+ R) u ( *δu
+

*

T

) +x2 (

δx+ N) u

*

T

(



1
− ∫ ( x*T Qx* + u*T Ru* + 2 x*T Nu* ) dt
20
*T
T
*
T
*T
T
*
T

1  x Qδx + δ xQx + δ xQδx + u Rδu + δ xRu + δ uRδu 
= ∫
 dt
2 0  +2 ( x*T Nδu + δT xNu* + δT xNδu )



Bỏ qua các vô cùng bé bậc cao, và chú ý Q,R là các ma trận đối xứng ta có

SV: Hoàng Kim Đức
56

Lớp: KSTN-CĐT-K55

Trang

δu
+

*

)  dt

Đồ án tốt nghiệp Đại Học
Khang

GVHD: GS.TSKH. Nguyễn Văn



0 ≤ δ J = ∫ (x*T Qδx + u *T Rδu + x *TNδu + δT xNu * ) dt
0

(3.32)
Do
Lấy

δx



ρT (t )

δT xQδx δT uRδu δT xNδu ≈
nhỏ nên xem
+
+
0

δu

là vector bất kỳ có n phần tử. Nhân (3.29) với

ρT (t )

ta có

 dδx

ρT (t ) 
− Aδx − Bδu ÷ = 0
 dt


(3.33)
Công (3.33) và (3.32) ta được



 dδx

δ J = ∫  (x*T Qδx + u *T Rδu + x *TNδu + δT xNu * ) + ρT (t ) 
− Aδx − Bδu ÷ dt
 dt

0
 T dδx

T
*T
*T
ρ (t ) dt + ( −ρ (t )B + u R + x N ) δu 
 dt
= ∫
T


d
ρ


T
*T
*T T
0 −
+
ρ
(
t
)
A

x
Q

u
N
δx

÷



  dt



(3.34)





0

Chú ý rằng

dδ xρ T ∞ ∞ d T
ρ ( t)
= ρ δx − ∫
δx
0
0 dt
dt
T

Từ đó tích phân (3.34) ta được


 dρT
 
δ J = ρ δx + ∫ ( −ρT B + u*T R + x*T N ) δu − 
+ ρT A − x*T Q − u*T NT ÷δx dt
0
 dt
 
0
T





SV: Hoàng Kim Đức
57

Lớp: KSTN-CĐT-K55

Trang

Đồ án tốt nghiệp Đại Học
Khang

GVHD: GS.TSKH. Nguyễn Văn

(3.35)
Chú ý đến các điều kiện (3.30), từ (3.35) suy ra:

 dρT
 
δ J = ∫ ( −ρT B + u*T R + x*T N ) δu − 
+ ρT A − x*T Q − u*T NT ÷δx dt
 dt
 
0


(3.36)
Do

ρT (t )

là vector tùy ý, ta hoàn toàn có thể chon

ρT (t )

thõa mãn điều kiện

 dρT
dρT
T
*T
*T T 
+
ρ
A

x
Q

u
N

= − ( Aρ − Qx* − Nu* )

÷
dt
 dt


=0

(3.37)
Sử dụng nguyên lý cực đại Pontryagin ta chọn hàm Hamilton có dạng:
H = ρT (Ax + Bu) -

1 T
x Qx + u T Ru + 2x T Nu )
(
2

(3.38)

Khi đó từ (3.38) ta có

∂H
= ρTB - u T R - xT N
∂u

Từ đó suy ra


 ∂H 
δ J = −∫ 
÷δ udt

u


0

(3.39)
Thật vậy từ (4.18) ta có

SV: Hoàng Kim Đức
58

Lớp: KSTN-CĐT-K55

Trang

Đồ án tốt nghiệp Đại Học
Khang

GVHD: GS.TSKH. Nguyễn Văn

1 T
1
T
 ∂H 
T
T

÷ = ρ B - u R - ( Ru ) + x N
2
2
 ∂u 

= ρTB - uT R − xT N

(3.40)
Từ các tính toán trên ta suy ra một số kết luận sau:
u* (t )

Định lý 3.1: Nếu

là tín hiệu điều khiển tối ưu thì tín hiệu đó phải thỏa

mãn biểu thức
 ∂H

 ∂u


T
÷= 0


(3.41)
Trong đó H là hàm Hamilton được xác định bởi (3.38). Ngoài ra từ (3.38) ta có
thể suy ra các phương trình sau.
T

T

dxρ  ∂H  d
 ∂H 
=
=
÷ ,
÷
dt  ∂ρ  dt  ∂x 

(3.42)
Các phương trình (3.42) được gọi là các phương trình Hamilton.
Chứng minh:
Ta chứng minh bằng phương pháp phản chứng.
Giả sử:
 ∂H

 ∂u
*
uδu
+


T
÷≠ 0


T

ta chọn

 ∂H 
δu = ε 
÷
 ∂u 

trong đó

vẫn còn nằm trong lân cận của

SV: Hoàng Kim Đức
59

u*

ε

là một số dương đủ nhỏ để cho

. Khi đó theo (3.39) ta có

Lớp: KSTN-CĐT-K55

Trang

Đồ án tốt nghiệp Đại Học
Khang


GVHD: GS.TSKH. Nguyễn Văn

2



∂H
 ∂H 
δ J = −∫ 
dt < 0
÷δ udt = − ∫
∂u 
∂u
0
0

(3.43)

Biểu thức thõa mãn (3.32) vậy
Định lý 3.2: Nếu

u* (t )

 ∂H

 ∂u


T
÷= 0


là tín hiệu điều khiển tối ưu thì tín hiệu đó phải thỏa

mãn biểu thức

u* (t ) = R −1 ( BρT −x TN ) (t )
(3.44)
Chứng minh:
Từ công thức định nghĩa hàm Haminlton (3.38) ta có (do R là ma trận đối xứng

⇒ RT = R

)

 ∂H 
T
T
T

÷= ρ B - u R − x N
 ∂u 

Theo định lý 3.1 ta có
 ∂H

 ∂u


T
B - uT R *Tx N

÷ = 0ρ ⇒


T
⇒ u* (t ) = R −1 ( Bρ
−N Tx

0 = u ⇒ *T
R (t ) ρ =B( Tx N


T

T

)

)

(3.45)

SV: Hoàng Kim Đức
60

Lớp: KSTN-CĐT-K55

Trang

Đồ án tốt nghiệp Đại Học
Khang

GVHD: GS.TSKH. Nguyễn Văn

Như thế điều kiện cần để phiếm hàm mục tiêu (3.23) đạt cực tiểu là tín hiệu
u* (t )

điều khiển

phải có dạng (3.45)

3.2.3 Công thức xác định tín hiệu điều khiển R của
Định lý 3.2 đã chỉ ra rằng điều khiển tối ưu
ρ(t )

Mặt khác khi có nhiễu động

w=0

u* (t )

u* (t )

biễu diễn tuyến tính qua hàm

, ở trạng thái tĩnh ta có

dx
= Ax + Bu = 0
dt
⇒ Bu = − Ax ⇒ u(t ) = −B† Ax = Hx(t )

(3.46)
Trong đó

B†

là mận tựa nghịch đảo của B. Như vậy ở trạng thái tĩnh

u(t )



hàm tuyến tính theo x.
suy ra u=Dx
(3.47)

Từ (3.45) ta có:

u* = R −1 ( BρT −x TN

)

T
Ru* = BρT −x N

BρT =Ru

ρ = ( BT )

*



T
+x N

( Ru

*

+ xNT )

(3.48)
Từ (3.47) và (3.48) ta được
SV: Hoàng Kim Đức
61

Lớp: KSTN-CĐT-K55

Trang

Đồ án tốt nghiệp Đại Học
Khang
ρ = ( BT )



GVHD: GS.TSKH. Nguyễn Văn

( RDx + xN ) = Kx
T

*

(3.49)
Đạo hàm biểu thức (3.49) và chú ý đến công thức (3.37) ta có
T
dx* (t ) dp (t)
Kρ A x= Q N=u− ( T −Q *T A −K Tx *T )Nu= ( −
dt
dt
T
= ( Q − AT K ) x* + NR −1 ( Bρ
(t ) −N Tx * )

T

)

*

+

*

= ( Q − AT K ) x* + NR −1 ( B T Kx* − NT x* )
= Q − AT K + NR −1 ( B TK − NT )  x*

(3.50)
Mặt khác theo phương trình (3.21) ta có
T
Kx&* = K ( Ax* + Bu* ) = K  Ax* + BR −1 ( Bρ
(t ) −N Tx

= K  A + BR −1 ( B T K − NT )  x*

*

) 

(3.51)
Do

p(t) = Kx* (t )

nên từ (3.50) và (3.41) ta suy ra

K  A + BR −1 ( B T K − NT )  x* = Q − AT K + NR −1 ( B TK − NT )  x*

(3.52)
Từ (3.52) ta suy ra
KBR -1 ( B TK - N T ) - NR -1 ( B TK - N T ) + KA + A TK = Q

Biến đổi ta được

( KB - N ) R -1 ( BTK - NT ) + KA + A TK = Q
SV: Hoàng Kim Đức
62

Lớp: KSTN-CĐT-K55

(3.53)
Trang

Đồ án tốt nghiệp Đại Học
Khang

GVHD: GS.TSKH. Nguyễn Văn

Phương trình (3.53) được gọi là phương trình Ricati. Giải phương trình đại số
phi tuyến (3.53) ta tìm được ma trận K. Sau đó tìm được công thức xác định
u* (t )
T
u* (t ) = R −1 ( Bρ
(t ) −N Tx * (t ) ) =R

= R −1 ( B T K − NT ) x* (t )

−1

T
*
B
(t ) −N Tx * (t ) )
( Kx

(3.54)
Từ (3.54) và (3.21) ta có
x&* (t ) = ( Ax* + Bu* ) =  A + BR −1 ( B TK − NT )  x* (t ) = Fx* (t )

(3.55)
Để cho nghiệm

x* (t ) → 0

F = A + BR −1 ( B TK − NT )

thì phải có các trị riêng của ma trận

có phần thực âm

Đối với bộ điều khiển phản hôi F làm việc theo nguyên tắc phản hồi âm cũng
có công thức tương tự (3.53) thông cua việc thay K bởi –K như sau.
− ( KB + N ) R -1 ( B TK + N T ) + KA + A TK = Q
Kết luận: Bài toán điểu khiển tối ưu bằng bộ điều chỉnh toàn phương tuyến
tính cần
Xác định ma trận K từ phương trình Ricati sau đó tính

F=

A + BR −1 ( B TK − NT )

Kiểm tra điều kiện
SV: Hoàng Kim Đức
63

Lớp: KSTN-CĐT-K55

Trang

Đồ án tốt nghiệp Đại Học
Khang

GVHD: GS.TSKH. Nguyễn Văn

A + BR −1 ( B T K − NT ) − λ E = 0 ⇒ λi , Re λi < 0

Cuối cùng, ta sẽ đưa ra định lý Sylvester để kiểm tra tính xác định dương của
một ma trận.
Định lý 3.2 (Sylvester): Cần và đủ để ma trận vuông, đối xứng:
 q11
q
Q =  21
 ...

 qn1

q12
q22
...
qn 2

... q1n 
... q2 n 
 , q =q
ik
ki
... ... 

... qnn 

xác định dương là các ma trận nằm trên đường chéo chính của nó có định thức
dương:

q
q11 > 0 , det  11
 q21

 q11
q12 

> 0 , det  q21
÷
q22 
q
 31

q12
q22
q32

q13 
÷
q23 ÷ > 0 , ...
q33 ÷


Tất nhiên rằng định lý Sylvester nêu trên cũng được sử đụng để xác định
tính xác định âm của một ma trận Q bằng cách kiểm tra xem ma trận –Q có xác
định dương hay không. Nếu –Q xác định dương thì q xác định âm.
3.2.4 Phương pháp tìm nghiệm của phương trình Ricati
3.2.4.1 Phương pháp tìm nghiệm phương trình Ricati trực tiếp
Phương trình Ricati (3.53) không phải là phương trình tuyến tính nên cần
có những phương pháp đặc biệt để tìm nghiệm. Tên gọi phương pháp tìm
nghiệm trực tiếp ở mục này không có ý nói rằng ta sẽ giải trực tiếp phương
trình Ricati mà ngược lại nó sẽ xác định K thỏa mãn (3.53) trực tiếp từ mục
đính bài toán tổng hợp bộ điều khiển tối ưu

SV: Hoàng Kim Đức
64

Lớp: KSTN-CĐT-K55

Trang