離散LQR 原理,求解與拓展

2021-07-02 23:58:19 字數 4758 閱讀 9169

該文件用以總結離散lqr的基本原理,反饋控制率的求解和一些拓展(時變系統,跟蹤命題等)。主要參考的是stanford的課程ee363: linear dynamical systems的部分課件。

這裡我們首先考慮乙個離散的線性系統: xt

+1=a

xt+b

ut,x

0=xi

nit

lqr的目標就在於,找到一組控制序列u0

,u1,

... 能夠使得:

然而,這兩個目標往往是衝突的,因為較大的控制作用

u 能更快地將狀態調節到零點。因此lqr就是根據需要設計出一組控制率來實現上面兩個目標的權衡。

為此,我們定義如下的二次代價函式(quadratic cost function): j(

u)=∑

τ=0n

−1(x

tτqx

τ+ut

τruτ

)+xt

nqfx

n這裡 u=

(u0,

u1,.

..,u

n−1)

,且 q=

qt≥0

,qf=

qtf≥

0,r=

rt>0

分別被稱為 state cost, final state cost, input cost 矩陣。

代價函式中的三項分別用來衡量狀態偏差,輸入偏差以及最終狀態偏差。

q 和

r用來確定狀態和輸入的相對權重。

因此,lqr的問題就是,找到一組序列:

ulqr0,

...,

ulqrn−

1 來最小化代價函式 j(

u)。通常

q 和

r的形式為: r=

ρi,q

=qf=

ctc

這裡 c∈r

p×n,

ρ∈r,

ρ>0 。

於是,代價函式就可以變形為: j(

u)=∑

τ=0n

∥yτ∥

2+ρ∑

τ=0n

−1∥u

τ∥2

這裡 y=c

x ,ρ√

在這裡給出了輸出和輸入的相對權重。

lqr命題也可以通過最小二乘(least-squares)的方法求解,但這裡我們只討論基於動態規劃的求解方法。

這裡我們首先定義乙個價值函式(value function)vt

:rn→

r vt

(z)=

minut,

...,

un−1

∑τ=t

n−1(

xtτq

xτ+u

tτru

τ)+x

tnqf

xn滿足約束 xt

=z,x

τ+1=

axτ+

buτ,

τ=t,

...,

n−1

即,vt(

z)給出的是從

t 時刻的狀態

z開始的lqr的代價函式。當 t=

0 時,v0

(x0)

就是原始的lqr代價函式。

我們可以證明 vt

是二次型,即vt

(z)=

ztpt

z ,其中 pt

=ptt

≥0。

首先,我們可以知道,當 t=

n 時有:vn

(z)=

ztqf

z 因此我們有 pn

=qf 。

現在我們假設vt

+1(z

) 已知,根據動態規劃(dp)的原理,有:vt

(z)=

minw(z

tqz+

wtrw

+vt+

1(az

+bw)

) 因此這就是乙個典型的動態規劃問題。

因為當前狀態

z與優化命題無關,因此上面的優化命題也可以改寫為:vt

(z)=

ztqz

+minw(

wtrw

+vt+

1(az

+bw)

)

也就是說,當前時刻

t 的控制率 ut

取值應該如下:

ulqrt=

argminw(

wtrw

+vt+

1(az

+bw)

) 假設v

t+1(

z)=z

tpt+

1z,p

t+1=

ptt+

1≥0 ,我們可以證明vt

具有同樣的形式。 將v

t+1(

z)=z

tpt+

1z代入上面vt

(z) 的表示式,即有:

vt(z

)=zt

qz+minw(

wtrw

+(az

+bw)

tpt+

1(az

+bw)

)

對於這樣乙個無約束的凸優化命題令其導數等於0即可以得到最優解。導數等於0得到的等式為:2w

tr+2

(az+

bw)t

pt+1

b=0

因此,當前時刻的最優控制率為:w∗

=−(r

+btp

t+1b

)−1b

tpt+

1az

將上面的結果代入vt

(x) 的表示式,即

vt(z

)=zt

qz+w

∗trw

∗+(a

z+bw

∗)tp

t+1(

az+b

w∗)=

zt(q

+atp

t+1a

−atp

t+1b

(r+b

tpt+

1)−1

btpt

+1a)

z=zt

ptz

其中,pt=

q+at

pt+1

a−at

pt+1

b(r+

btpt

+1)−

1btp

t+1a

容易證明 pt

=ptt

≥0因此,lqr的求解過程可以總結如下:

set pn

:=qf for t=

n,..

.,1,

pt−1:=q

+atp

ta−a

tptb

(r+b

tpt)

−1bt

pta

for t=

0,..

.,.n

−1, define kt

:=−(r

+btp

t+1b

)−1b

tpt+

1afor t=

0,..

.,.n

−1,

ulqrt=

ktxt

從上面的推導我們可以看出,lqr中,最優控制率是狀態的線性反饋。當t

遠小於

n的時候,穩態的 ps

s 可以近似收斂並滿足下面的方程:

pss=

q+at

pssa

−atp

ssb(

r+bt

pss)

−1bt

pssa

這個方程被稱為代數黎卡提方程(algebraic riccati equation, are)。

因此,當時刻

t 距時域終點

n較遠時,lqr的控制率可以近似看作狀態

x 的常數反饋,即 ut

=kss

xt,k

ss=−

(r+b

tpss

b)−1

btps

sa針對時變系統

xt+1

=atx

t+bt

ut我們可以定義對應的時變代價函式 j=

∑τ=0

n−1(

xtτq

τxτ+

utτr

τuτ)

+xtn

qfxn

可以看到,終點時刻的加權陣 qf

並沒有發生變化,因此前面根據dp推導得到的lqr的架構可以直接拓展到時變系統。顯然,前面提到的穩態情況下的常值反饋在時變系統中將不復存在。

針對跟蹤命題,代價函式可以寫成

j=∑τ

=0n−

1(xτ

−x¯τ

)tqτ

(xτ−

x¯τ)

+∑τ=

0n−1

(uτ−

u¯τ)

trτ(

uτ−u

¯τ)

(簡要起見這裡捨去了終端狀態的代價)

其中,x¯τ

和 u¯

τ 分別是狀態和輸入要跟蹤的軌跡。

通過一些附加的推導,前面dp推導的結果也可以運用在這樣的跟蹤命題中。

ref.

stanford, ee363: linear dynamical systems

離散余弦變換 原理及應用

二維傅利葉變換可用通用的關係式來表示 式中 x,u 0,1,2,m 1 y,v 0,1,2,n 1 g x,y,u,v 和h x,y,u,v 分別稱為正向變換核和反向變換核。如果滿足 則稱正 反變換核是可分離的。進一步,如果g1和g2,h1和h2在函式形式上一樣,則稱該變換核是對稱的。數字影象都是實...

離散余弦變換 原理及應用

二維傅利葉變換可用通用的關係式來表示 式中 x,u 0,1,2,m 1 y,v 0,1,2,n 1 g x,y,u,v 和h x,y,u,v 分別稱為正向變換核和反向變換核。如果滿足 則稱正 反變換核是可分離的。進一步,如果g1和g2,h1和h2在函式形式上一樣,則稱該變換核是對稱的。數字影象都是實...

matlab求解平面方程的原理

已知三點p1,p2,p3,求其平面方程 syms x y z p1,p2,p3的座標由自己定義。p1 x1,y1,z1 p2 x2,y2,z2 p3 x3,y3,z3 那麼求解下面矩陣q行列式就是了 q ones 4,1 x,y,z p1 p2 p3 detb det q 最後令 q 0 這裡的求解...