DAT VA DANH GIA BQ QUAN SAT MOVING HORIZON IMPLEMENTATION & EVALUATING OF MOVING HORIZON OBSERVER USING MATLAB OPTIMIZATION TOOLBOX Ngo Van Thuyen, Nguyen Thanh Dong, Nguyen Doan Phw&c
Trang 1SU DUNG OPTIiVIIZATION T O O L B O X CUA MATLAB
DE C A ! DAT VA DANH GIA BQ QUAN SAT MOVING HORIZON
IMPLEMENTATION & EVALUATING OF MOVING HORIZON OBSERVER USING MATLAB
OPTIMIZATION TOOLBOX
Ngo Van Thuyen, Nguyen Thanh Dong, Nguyen Doan Phw&c
Trieang Dai hoc Bach khoa Ha Noi
Nh^n ngay 30 thang 3 nam 2011 TOM TAT
Cac bd quan sat truyin thdng dtra tr&n vi$c d^nh glA true tiip sai so trang thai thi^ cua doi tuung va trang thai quan sat thwc/ng chi ap dicing dux?c cho c^c /jp tuyen tinh hoac nhung l&p mo hinh phi tuyin nhit djnh Trong bat bao nay, bg quan sdt Moving Horizon dirge gidi thieu cung vai thuat toan de co the cai dat tren matlab Day la bd quan sdt tu>a toi uv cd the ap dijng cho he phi tuyin bit
ki Kit qua khao sat cho thay, bd quan s^t cho kit qui quan sdt tit ca khi mo hinh phi tuyen manh va cho chit luvng khdng hi thua kem, th$m chi tit hon - th&i gian quan sat ngin han, cdc bg quan sdt truyin thing khi ddi tuv'ng la tuyin tinh
ABSTRACT
Traditional observers are mostly state-estimation error-based obsen/ers, which are only applied
to linear systems or to some particular classes of nonlinear systems In this paper Moving horizon obsen/er will be introduced in accompany with the algorithm implemented in Matlab This Is an this obsen/er can provide desirable estimates even though the system is strongly nonlinear; and when the system is linear, the estimates are not less than, even better, in terms of observation time, than the results provided by traditional obsen/ers
I DAT VAN DE
Trong dieu khien, trang thai cua doi
tugng thucmg khong true tiep do dugc trong
phan Ion cac truang hgp Do do, viec thuc hien
bai toan di^u khien phan hdi trang thai yeu ciu
viec udc lugng trang thai dua tren tin hieu do
Muasurud Ouipiil
Hinh I Mo hinh bai todn dieu khien
Da CO nhi6u giai phap dugc dua ra nhung
hiiu h^t con bpc 16 nhieu han che Bp quan sat
truyen thdng Luenberguer chi ap dung dugc cho
he tuyen tinh tham so hang Bp Ipc Kalman cd
dugc sii dung nhieu trong cong nghiep nhung vin CO nhieu khuyet diem khi doi tugng la phi tuyen hay khi trang thai bi han che Nhieu bp quan sat phi tuyen cung da dugc de xuat Nhung phan ldn chi ap dung dugc cho mot lop
mo hinh nhat dinh Trong bai bao nay, bp quan sat Moving Horizon dugc gidi thieu vdi kha nang ap dung cho he phi tuyen bat ki vai irang thai CO the bi gidi han Day la bp quan sat tua toi uu vdi cOra so hiJu han nham giam bdt ganh nang tinh loan so voi bp quan sat toi uu truyen thong
Viec cai dat bp quan sal tren co so thuat loan l6i uu ciia Matlab sS tao kha nang khao sat bai toan dieu khien phi tuyen trong Matlab Dong thdi, no cung hiia hen viec xay dung mdt Toolbox cho bp quan sat nay trong tuong lai
IL BQ QUAN SAT MOVING HORIZON
Bp quan sat Moving Horizon dugc xay dung tren co so cua bp quan sat toi uu binh phuong cue tieu [4]
Trang 2Xet he thong dugc nio ta bdi h? phuong
trinh gian doan:
l i =,/(!* i.^^i) + li'i-i
l;'*=,t:(i.^)+>i (1)
Trong do, x^ eX , ijj eU luong img Id
vecla Irang thai va tin hi?u dieu khien; ^y,, ePV ,
^ e I' la nhieu qui trinh va nhieu do
Bp quan sat danh gia trang th^^i ddi tugng
dua iren cong ihiic sau [3];
o ; = m i n ! a ) L , { v v r ) , ( ^ , L V > A ' U W ' !
i.-[y,l„ \ \ ! I
-Zb-.^(AV'',))'«-'b-^U ))
(2)
Vdi dieu kien: x^=f(x^ -.)+m-,
Trong do, QO\Q ',R ' la cac ma Iran
doi xung, xac dinh duong x^ la udc lugng ban
dau ctia gia tri dau Q^^ danh gia mire do tin
tudng cua udc lugng dau, ^ cang dang tin thi
2o' cang ldn ^ ',/f"'dang gia dp tin tudng
ciia mo hinh va tin hieu do, khi w^ va v^ cang
nho thi Q"' va 7?"' tuong ling se Ion Cac ma
Iran nay dugc xem la cac tham so va dugc hieu
chinh theo kinh nghiem (tuning parameters)
Nghiem ciia he tren la cap: lxn^ Tit
do, cac gia tn quan sat |jt;,n} trong khoang dl
dang dugc linh theo (1)
Dieu thil vi la, khi w^ va t-^ la cac tin
hieu nglu nhien, dpc lap, phan b6 chuan vdi ki
vpng bang 0, hiep phuong sai tuong ling Id Q
va fi ; ^ cijng la mpt gia tri nglu nhien dpc lap
vdi phuong sai Q„, cong thuc udc lugng tren
CO the suy ra bang each khao sat cue dai cua
ham phan bd xac sual co dieu kien sau:
Pi\ -^Jrn>-,y*)
Cling c6 th£ chi ra r3ng, khi 0 ) la he tuyen linh khdng co dieu kien han cne, ket qua
quan s^l thu dugc Hi (2) gidng nhu kk qua thu
dugc khi sir d^mg bg Ipc Kalman [3]
BO quan sdt Moving Horizon
Nhugc diem co ban ciia bg quan sal binh
phirong c^^c tieu la so chieu cua phep linh toi \sv^ lang khi k tang De giam khdi lugng tinh toan,
bp quan sat Moving Horizon sur dung mpl cua
sd linh lo^n co dinh dam bao so chieu phep linh loi uu khdng tang theo thdi gian
Hinh 2 Minh hqa viec linh gia tri irac lirang ddu
\< = nin., {1>(5-^.|L';)",)•(i-^.l!;)eW»|
^1';=(5-^-i>^^)'e:U:!i-v-5,v)+Z><[e•'l'i(3
i-i \
Liic nay, cong thirc linh toi uu trd thanh: Vi?c tinh gia trj udc lugng dau x^.^ dua vao budc tinh tdi uu trudc co the dugc minh hpa nhulren hinh 2
Nghiem cua ph^p tinh toi uu t^i budc imh thiti:
Tir do, cac gia tri quan sat f^x^^, | trong khoang
dl dang dugc tinh theo (I)
Uu diem noi bat cua bg quan sit Moving Horizon la cau iruc mo hinh ciing nhu cac diiu
Trang 3toi uu Do do, bp quan sat co the ap dung cho
he bdt ki Ganh nang tinh toan lai trd thanh tra
ngai cho viec ling dung bg quan sat nay Tuy
nhien, vdi bg quan cira so tinh loan co djnh,
khdi lugng tinh toan da giam dang ke so vai bo
quan sat binh phuong cuu tieu
IILCAI D^T B O QUAN SAT TREN
MATLAB
Thuat toan cai dat dugc chia lam hai
phan:
Phdn I: Khi k<Nh^ quan sat thirc hien
thuat toan (2)
Phdn 2: Khi k> N ho quan sat thuc hien
thuat toan (3), dam bao s6 chieu phep tinh toi
uu khdng ddi
Doi tugng dugc cau hinh trong file
myode.m va nonlsim.m:
function dydt =
myode(t,x,ti,ui,wl,w2)
u interpl(ti,ui,t);
wl interpl (ti, wl, t) ,
w2 interpl{ti,w2,t} ;
dydt (x(2)+U+W1;
x{2) -sin(x{l) )+w2] ,
function [y,t,x]
nonlsim(ui,ti,xO,wl,w2)
Tspan [0 max(ti)];
[T,X] = o d e 4 5 { ® ( t , x )
m y o d e l { t , x , t i , u i , w l , w 2 ) , T s p a n , x O
) ;
t - t i ;
X = i n t e r p l ( T , X , t ) ;
y = X { : , 1) ;
e n d
Chuong trinh chinh dupe d^t trong file
MovingHorizon.m:
function MovingHorizon
% The system is customized in
% Initalization N_max 20; % Number of simulation point
N = 10; % Horizon
T = 10; % Simulation Time
% Generate the database
xO = [0.^ -0.5]; % Real Inital States
[u,t] = gensig('square',10,T,T/{N_max-1) ) ;
N_max = max(size(t));
wO zeros{N_max,2);
wOl = rand{N_max,l)-.5; w02 rand{N_max,i)-.5; [y, t, x]
nonlsiml(u,t,xO,wOl,w02);
est_guess [-1 2 ] ; % Initail Guess
est_init est_guess; est (1,:} est_guess; for k = 2:N_max
if k<= N
% Inputs and measured values for the observer u2 zeros(k,1); y2 zeros(k,1);
XO [est_init, zeros(l,k), zeros(1,k)];
tm = T*k/N max; t2 linspace(0,tm,k)' for i i:k
u2 (i,l) u(i,l}; y2(i,l) y(i,l); end
Trang 4% Matlab optimization
and the estimated states
options =
optimset ( ' LargeScale ' , ' off ' 'Dis
play','iter',
'TolX',le-5, 'TolFun' ,le-5) ,•
X I s q n o n l i n ( © t r a c k ,
XO, [1 , [1 , o p t i o n s ) :
e s t _ i n i t l X ( l ; 2 ) ;
h = m a x ( s i z e ( X ) ) ;
wl = X ( 3 : 2 + ( h - 2 ) / 2 ) ' ;
w2 - X ( 3 + ( h - 2 ) / 2 ; h ) ' ;
[yO, t o , xO) =
n o n l s i m l {u2, t 2 , e s t _ i n i t l , w l , w2) ,•
e s t _ i n i t x O ( 2 , : ) ;
e s t ( k , : ) X O ( k , : ) ;
% Inputs and measured
values for the observer
u2 zeros(N,1);
y2 zeros(N,1);
XO [est_lnit,
zeros(1,N), zeros(1,N)];
tm T*N/N_max;
t2 linspace(0,tm,N)';
for i = 1:N
U2(i,l)
u{i+k-N,l) ;
y2(i,l)
y(i+k-N , l ) ,•
end
% Matlab optimization
and the estimated states
options =
optimset('LargeScale' 'off 'Dis
play','iter',
'TolX',le-j, 'TolFun' , le-5) ,
X = Isqnonlin (©track,
XO, [] , [] ,options) ;
est_initl = X(l;2);
h = max(size(X));
wl X(3:2+(h-2)/2)';
W2 = X(3+(h-2) /2:h) ' ,•
[yO, to, xOl = nonlsiml(u2,t2,est_initl,wl,w2) / est_init xO(2,:); est{k,:) xO(N,:); end
end
% Error function for the optimizer
function f track(XO) e3t_initl = X0(l:2) ;
h - max{size{XO));
wl X0(3:2+(h-2)/2)';
w2 X0(3+(h-2)/2;h)';
[y3, t3, x31 nonlsiml (u2, t2, est_initl, wl, w2) ,•
f = (y2 - y3;
.3*(est_initl-est_init)'];
e n d
h o l d on
p l o t ( t , x )
p l o t { t , e s t ( : , 1 ) , ' g
-* ' , t e s t ( : , 2 ) , ' r - - -* ' )
e n d
IV \ i DViMI!\H HQA
Sau day, ta minh hpa ket qua c]uan sat cua bp quan sat Moving Horizon voi doi tupng phi tuyen:
\di [ X2 - sin(.Y,) + u
V = X + V
Nhilu tac dpng la tin hieu ngau nhien sinh bai ham rand Tin hieu vao la xung vuong,
Bp quan sat dugc khao sat trong hai trudng hgp: khi quan sal cd ke tdi nhieu va khi quar sat ko ke tdi nhieu
Nh?n xet: Khi cd tinh tdi nhi€u trong b( quan sal, khdi lugng tinh toan se ldn hon (S(
chigu trong phep tinh toi uu sS tang them N
nhung chat lugng quan sat iSng len ro ret Bay gid, Ta se so sanh bg quan sa Moving Horizon vdi Bp quan sat truyen thdn] khi ddi tugng la tuyen tinh
I -3) •(:]"
_^
Trang 5Nhieu trong trudng hgp nay dugc bd qua,
tin hieu vao la sin
Nhan xet: voi ddi tugng tuyen tinh, bp quan sat Moving Horizon cd thdi gian qua sat tham chi tdt hon bp quan sat Luenberger
Hinh 3 Co khao sdt nhieu trong hg quan \dt Hinh 4 Khong khdo sdt nhieu trong bo quan sdt
Hinh 5 Ket qua quan sat v&i Moving Horizon Hinh 6 Ket qud quan sdt v&i bo quan sdt
Luenberger
V KET LUAN phi tuy^n Mac du cd nhieu khd khan vk thuat
o - -, n* II • v U- toan cung nhu khoi luong tinh toan trong thuc
Bo quan sat Moving Horizon cho chat ; , i i , , , , , , , • 1L.- »i 1 • • L- - te, no van rat hua hen voi cac he co tinh phi luong quan sat khong thua kem cac bo quan sat x , , ^, ,' , , : , ,
" ° , ; „ - , u' • • tuyen manh va done hoc khong qua nhanh
truyen thong Hon nua, phuong phap nay con •' • » • & i
cd the ap dung cho mgt lop rpng cac doi tugng
TAI LIEU THAM KHAO
H.Michalska and D.Q Mayne • Robust Receding Horizon Control of Constrained Nonlinear
Systems IEEE Transaction on Automation and Control (1993)
Hannah Michalska and David Q.Mayne.: Moving Horizon Observers and Observer-Based
Control IEEE Transaction on Automation and Control (1995)
R Muske and James B Rawling.s: Receding Horizon Recursive Stale Estimation American
Control Conference (1993)
Christopher V.Rao James B Rowlings, and David Q.Mayne: Constrained State Estimation for
Nonlinear Discrete-time Systems IEEE Transaction on Automation and Control (2003)
Dia chi lien he Ngd Van Thuyen - Tel: 01688.143.325 - Email: vanthuyen@gmail.com