Rok / Year: Svazek / Volume: Číslo / Issue: 3 Estimace a linearizace modelů založených na principu Volterrových řad Estimation and linearization of models based on Volterra series principle Petr Pivoňka, Aleš Lebeda pivonka@feec.vutbr.cz, xlebed@stud.feec.vutbr.cz Fakulta elektrotechniky a komunikačních technologií VT v Brně Abstrakt: Dokument se zabývá problematikou experimentální identifkace a blíže popisuje problematiku estimace parametrů a linearizace nelineárních modelů založených na principu Volterrových řad. Parametry modelů byly estimovány pomocí tří různých gradientních metod, které byly na základě výsledků porovnány. Abstract: This paper is focused on experimental identification. It is describe parameters estimation and linearization of nonlinear models based on Volterra series principle. For estimation of parameters were used three different gradient based methods. Models and gradient based methods were compared according to obtained results.
Estimace a linearizace modelů založených na principu Volterrových řad Petr Pivoňka, Aleš Lebeda Ústav automatizace a měřicí techniky, Vysoké čení Technické v Brně Kolejní 96/, 6 Brno Email: pivonka@feec.vutbr.cz, xlebed@stud.feec.vutbr.cz Abstrakt Dokument se zabývá problematikou experimentální identifikace a blíže popisuje problematiku estimace parametrů a linearizace nelineárních modelů založených na principu Volterrových řad. Parametry modelů byly estimovány pomocí tří různých gradientních metod, které byly na základě výsledků porovnány. Úvod Abychom mohli navrhnout optimální nebo prediktivní řízení, je potřebná znalost řízeného systému. Čím přesnější je znalost řízeného systému, tím lepších výsledků v oblasti řízení jsme schopni dosáhnout. Většina systémů vykazuje nelineární charakter, a proto by bylo vhodné použít nelineární model, který by byl schopen obsáhnout nelinearity řízeného systému. Jednou z variant nelineárních modelů jsou neuronové sítě, ale jejich nevýhodou jsou velké nároky na naučení neuronové sítě, problém s aktualizací estimovaných parametrů během procesu při změně parametrů řízeného systému a špatná interpretovatelnost chování neuronové sítě. V tomto dokumentu se budeme zabývat nelineárními modely založenými na principu Volterrových řad, které mají v určitých věcech výhodu oproti neuronovým sítím. Interpretovatelnost těchto modelů je mnohem lepší než neuronových sítí, každý polynomiální model obsahuje v sobě i lineární model stejného řádu. K jeho získaní stačí položit parametry modelu u nelineárních členů nule. Ale při extrapolaci vykazují nestabilní vlastnosti. Tento nedostatek lze odstranit použitím trénovacích dat, která jsou z celého pracovního rozsahu, a tedy nebude docházet k extrapolaci. Další jejich nevýhodou je vysoký nárůst počtu parametrů se zvyšujícím se počtem vstupních a výstupních parametrů a zvyšujícím se stupněm polynomu. Gradientní metody Jedním z nejpoužívanějších přístupů pro optimalizaci je využití gradientních metod. Gradientní metody jsou použitelné jak na lineární problémy, tak na nelineární problémy. Abychom je ale mohli použít, musíme znát gradient kriteriální funkce, kterou budeme optimalizovat. Nejčastější optimalizační problém je definován jako θ = argmin θ I(θ), () kde θ jsou hledané optimální parametry a I(θ) je kriteriální funkce. V tomto dokumentu bude kriteriální funkcí kvadratická kriteriální funkce založená na velikosti chyby predikce I(θ) = N (y(i) ŷ(i, θ)) = N e (i, θ), () kde y je výstup ze systému, ŷ je predikce modelu a e je chyba predikce. Hlavní nevýhodou gradientních metod je nalezení globálního minima kriteriální funkce, protože při hledání optimálních parametrů pro dané kriterium můžeme nalézt pouze nějaké lokální minimum. Abychom ověřili, že se nacházíme s největší pravděpodobností v globálním minimu, tak je dobré provést optimalizaci vícekrát s různými počátečními podmínkami, čímž se zvýší šance na nalezení optimálních parametrů. Ale ani tímto postupem není zaručeno, že nalezené parametry modelu jsou optimální tak, že hodnota kriteriální funkce pro nalezené parametry patří hodnotě v globálním minimu. Základní rovnice aktualizace hledaných parametrů pro gradientní metody je θ k = θ k η k S k g k, (3) kde η je velikost kroku, S je směrová matice a g je gradient kriteriální funkce. Z této rovnice vycházejí všechny gradientní metody a liší se pouze směrovou maticí S. Metody prvního řádu aproximují kriteriální funkci Taylorovým rozvojem prvního řádu. Mezi metody prvního řádu patří metoda steepest descent, Kvazi-Newtonova nebo metoda Levenberg- Marquardt. Metody druhého řádu aproximují kriteriální funkci Taylorovým rozvojem druhého řádu. Mezi metody druhého řádu patří například Newtonova metoda. Pro metodu steepest descent je směrová matice S nahrazena jednotkovou maticí. Ostatní metody využívají jako směrovou matici inverzi Hessovy matice kriteriální funkce nebo její aproximaci. Tyto metody se liší jen výpočtem Hessovy matice kriteriální funkce nebo její aproximace [, ]. 6
. Steepest descent Metoda steepest descent je gradientní metoda prvního řádu. Konvergence metody k minimu kriteriální funkce je dosaženo volbou vhodného kroku ve směru opačném, než je směr gradientu kriteriální funkce. Rovnice pro aktualizaci parametrů je ve tvaru θ k = θ k η k g k. (). Kvazi-Newtonova metoda Směrová matice je nahrazena aproximací inverze Hessovy matice kriteriální funkce. Pro výpočet aproximace inverze Hessovy matice kriteriální funkce se nejčastěji využívá metoda Broyden-Fletcher-Goldfarb-Shanno (BFGS) []. Výhodou BFGS metody je, že se vypočítává přímo inverze Hessovy matice kriteriální funkce. Rovnice pro aktualizaci parametrů je ve tvaru θ k = θ k η k H k g k. () Obrázek : Steepest Descent s malým krokem.3 Levenberg-Marquardt metoda Při použití kvadratické kriteriální funkce můžeme Hessovu matici aproximovat tvarem H J T J, kde J je Jacobiho matice kriteriální funkce. Z tohoto předpokladu vychází Gauss-Newtonova metoda. Problém Gauss- Newtonovy metody nastává v případě, že H J T J je singulární matice a tedy nelze provést výpočet inverzní matice. Levenberg-Marquadt metoda odstraňuje problém singulární matice přičtením zvolené diagonální matice, která regularizuje aproximaci Hessovy matice kriteriální funkce v případě, že je singulární. Rovnice pro aktualizaci parametrů je ve tvaru θ k = θ k η k (J T k J k + αi) g k. (6). Velikost kroku gradientních metod má na konvergenci a její rychlost k minimu kriteriální funkce velký vliv velikost zvoleného kroku. Proto je velmi důležité, aby velikost kroku byla v každé iteraci optimální. Pokud se použije malý krok, budeme potřebovat velký počet iterací, než se nalezne minimum kriteriální funkce, jak je zobrazeno na obr.. Pokud ale zvolíme velký krok, tak gradientní metoda můžeme divergovat od minima kriteriální funkce, jak je zobrazeno na obr.. Použitím optimálního kroku dosáhneme nejrychlejší konvergence k minimu kriteriální funkce, jak je zobrazeno na obr. 3. Optimální krok můžeme nalézt například metodou regula falsi nebo Nelder-Mead. Nevýhodou optimálního kroku je, že nejdříve musíme nalézt optimální krok, což zvyšuje nároky na výpočetní výkon a čas estimace parametrů [,, ]. Obrázek : Steepest Descent s velkým krokem 3 Polynomiální modely Polynomiální modely se používají poměrně často, a to i přes jejich nevýhody.první nevýhodou je, že již pro nízký stupeň polynomu a řád systému vedou na velký počet parametrů modelu. Při extrapolaci se stávají nestabilními a při interpolaci vykazují pro vysoký stupeň polynomu kmitavé chování. 3. Volterrovy řady Volterrova řada vychází ze spojení lineárního systému s pamětí a nelineárního systému bez paměti, čímž dostaneme nelineární systém s pamětí, který lze zapsat ve tvaru y(k) = n H n [u(k)], (7) 6
3.3 Parametrický model Volterrovy řady Dalším zástupcem modelů založených na Volterrových řadách je parametrický model Volterrovy řady, který je zjednodušením Kolmogorov-Gabor modelu, protože nelinearita je aplikována pouze na vstupní data. Pro predikci modelu platí vztah ŷ(k) = [ θ, θ,..., θ Ny ] [y(k ), y(k ),, y(k Ny )] T + Θ [u(k)] + Θ [u(k))] + Θ [u(k)] +. () Obrázek 3: Steepest Descent s optimálním krokem kde y je výstup ze systému, u je vstup do systému a H n je Volterrův operátor n-tého řádu, který je definován jako H n [u(k)] = m i = m h n (i,, i n )u(k i )... i n=... u(k i n ), kde h n je Volterrovo jádro. Volterrova řada popisuje nelineární systém bez zpětné vazby od výstupu (NFIR). Abychom popsali reálný systém, potřebovali bychom Volterrovu řadu vysokého řádu. Z tohoto důvodu vznikly nové modely, které obsahují i vazbu od výstupu [,, 6, ]. 3. Kolmogorov-Gaborův model Prvním modelem založeným na Volterrových řadách je Kolmogorov-Gaborův model, u kterého je nelinearita aplikována jak na vstupní, tak na výstupní data. Predikci Kolmogorov-Gabor modelu lze zapsat ve tvaru ŷ(k) =Θ [u(k), y(k)] + Θ [u(k), y(k)] + Θ [u(k), y(k)] +. Pro počet neznámých parametrů θ lze použít výpočet N θkg = (8) (9) p ( ) Nu + N y + i, () i kde N θkg je počet neznámých parametrů θ Kolmogorov- Gabor modelu, N u je počet zpožděných vstupních hodnot, N y je počet zpožděných výstupních hodnot a p je stupeň polynomu. Pro počet neznámých parametrů θ lze použít výpočet N θpmvr = N y + p ( ) Nu + i, () i kde N θpmvr je počet neznámých parametrů θ parametrického modelu Volterrovy řady. 3. Nelineární diferenční rovnice Posledním zástupcem modelů založených na Volterrových řadách je nelineární diferenční rovnice. Nelinearita je zde aplikována pouze na výstupní data na rozdíl od parametrického modelu Volterrovy řady, kde je nelinearita aplikována pouze na vstupní data. Predikci modelu můžeme zapsat ve tvaru ŷ(k) = [θ, θ,, θ Nu ] [u(k ), u(k ),, u(k N u )] T + Θ [y(k)] + Θ [y(k))] + Θ [y(k)] +. Pro počet neznámých parametrů θ lze použít výpočet N θnde = N u + (3) p ( ) Ny + i, () i kde N θnde je počet neznámých parametrů θ modelu nelineární diferenční rovnice [, 3,, 6]. Linearizace Pro syntézu regulátoru je vhodné mít řízený systém jako lineární model, protože pak lze použít algoritmy pro návrh regulátorů pro lineární systémy, které jsou jednodušší na návrh a implementaci než algoritmy pro nelineární systémy. Linearizace může být provedena různými způsoby. Jedním způsobem je linearizace v okolí pracovního bodu, ale lineární model platí jen v okolí pracovního bodu a pro zbylé části pracovního rozsahu již není zaručena přesnost této linearizace. Dalším způsobem je zpětnovazební linearizace, která se dělí na dva způsoby. Linearizace vstup-stav a vstup-výstup. První zmíněná linearizace nelze použít z důvodu chybějícího stavového popisu a druhá linearizace by vedla pro použité modely vždy na systém prvního řádu. Z výše zmíněných důvodů byla linearizace zvolena na základě 6
citlivostní analýzy. Myšlenkou této linearizace je zjištění, jakou měrou působí parametr podrobený analýze na výstup. Přenos lineárního modelu typu ARX (Autoregressive with exogenous input) lze napsat ve tvaru F (z ) = b z + b z + + b Nu z Nu + a z + a z, () Ny + + a Ny z kde b i a a i jsou parametry lineárního modelu a pro citlivostní analýzu platí vztah [9, ]. b i = ŷ(k) u(k i) a j = ŷ(k) y(k j) i =,,, N u (6) j =,,, N y (7) Výsledkem této linearizace je, že nelineární systém je linearizován v každém pracovním bodě, což vede na v čase proměnné koeficienty. Této vlastnosti lze využít při adaptivním řízení, ale již nelze použít pro návrh PID regulátoru s pevně nastavenými parametry. Estimace parametrů Gradientní algoritmy byly porovnány na polynomiálních modelech, které byly estimovány na soustavu složenou ze dvou stejnosměrných motorů s cizím buzením spojených listovou pružinou. Vstupem do soustavy bylo napětí kotvy prvního motoru a výstupem ze soustavy bylo napětí tachodynama odpovídající rychlosti otáček druhého motoru. Druhý motor v soustavě pracoval jako dynamická brzda. Vstupním signálem do soustavy byl signál PRBS (Pseudo- Random Binary Sequence). Pro estimaci parametrů a řízení soustavy motorů bylo použito programové prostředí MATLAB s nadstavbou Simulink. V následujících tabulkách jsou uvedeny výsledky estimace parametrů pro jednotlivé modely. Estimace metodou steepest descent je v tabulce, Kvazi-Newtonovou metodou je v tabulce a metodou Levenberg-Marquardt je v tabulce 3. Všechny modely byly třetího řádu se stupněm polynomu dva a tři. V prvním sloupci je uvedena zkratka modelu, kde pvs značí parametrický model Volterrovy řady, nde nelineární diferenční rovnici a kg Kolmogorov-Gaborův model. Poté následuje řád modelu (př. 3r) a nakonec stupeň polynomu (př. p). Druhý sloupec obsahuje počet iterací parametru θ. Ve třetím sloupci je průměrný počet iterací Nelder-Mead metody parametru η potřebných k nalezení optimálního kroku zaokrouhlených k nejbližšímu celému číslo směrem k nekonečnu. Čtvrtý sloupec obsahuje maximální počet iterací parametru η, kterých bylo potřeba pro nalezení optimálního kroku. Poslední sloupec obsahuje hodnotu kriteriální funkce při validaci. Tvar kriteriální funkce byl zvolen podle vztahu (). Na obrázku je porovnání výstupu ze soustavy a vícekrokové predikce ARX modelu. Na obrázku je porovnání výstupu ze soustavy a vícekroková predikce Kolmogorov- Gabor modelu [3]. Pro estimaci parametrů obou modelů byla použita metoda Levenberg-Marquardt. Tabulka : Estimace parametrů metodou steepest descent iter θ iter η /krok max.iter η I valid arx3r 9 3 pvs3rp 9 3 3 6 pvs3r3p 866 3 3 - nde3rp 69 3 nde3r3p 8 8 8 67 kg3rp 99 3 - Tabulka : Estimace parametrů Kvazi-Newtonovou metodou iter θ iter η /krok max.iter η I valid arx3r 9 38 pvs3rp 3 9 3 7 pvs3r3p 6 3 3 6 nde3rp 78 nde3r3p 6 7 9 kg3rp 8 8 3 3 Tabulka 3: Estimace parametrů metodou Levenberg- Marquardt iter θ iter η /krok max.iter η I valid arx3r 3 38 pvs3rp 3 6 7 pvs3r3p 3 8 7 6 nde3rp 3 8 78 nde3r3p 9 9 kg3rp 3 out (V) 8 7 6 3 Porovnani identifikovane soustavy a modelu(validace) Soustava arx3r 3 3 Obrázek : Porovnání výstupu ze soustavy a vícekrokové predikce ARX modelu. 6 Linearizovaný model Polynomiální model byl linearizován pomocí citlivostní analýzy, a poté bylo zjištěno kritické zesílení K krit a perioda ustálených kmitů T krit linearizovaného modelu dle algoritmu v [7] na straně 79. Po zjištění kritického zesílení a periody ustálených kmitů byla provedena syntéza regulátoru metodou Ziegler-Nicholse pro omezení překmitu dle 63
8 7 6 Porovnani identifikovane soustavy a modelu(validace) Soustava kg3rp Prubeh zadaneho napeti, skutecneho napeti na vystupu soustavy motoru a poruchy W Y V out (V) 3 W,Y,V 3 3 3 6 Obrázek : Porovnání výstupu ze soustavy a vícekrokové predikce Kolmogorov-Gabor modelu. Obrázek 7: Průběh regulace s Kolmogorov-Gabor modelem. vztahu K =, 3K krit T I = T krit T D =, T krit, (8) Prubeh kritickeho zesileni a periody ustalenych kmitu linearizovaneho modelu v case Kkrit Tkrit kde K je zesílení proporcionální složky, T I je integrační konstanta a T D je derivační konstanta. Vztah (8) je převzat z [7]. Pro regulaci byl použit diskrétní PID regulátor s typem filtru zachovávajícího energii ekvivalentní k energii filtrované D složky spojitého PID regulátoru, který je popsán vztahem [ F (z) = K + T s T I z + T ( ) D e TsN z T D, T s z e TsN T D (9) kde T s je vzorkovací perioda. Vztah (9) je převzat z [8]. Na obrázku 6 je průběh regulace s ARX modelem, kde W je žádaná hodnota, Y je výstupní hodnota, V je poruchová veličina vstupující na vstupu soustavy a je akční zásah. Na obrázku 7 je průběh regulace s Kolmogorov- Gabor modelem. Průběh kritického zesílení a periody ustálených kmitů v čase pro Kolmogorov-Gaborův model je na obrázku 8 a na obrázku 9 je zobrazen průběh parametrů linearizovaného Kolmogorov-Gabor modelu v čase [3]. ] Kkrit 3 6 Obrázek 8: Průběh kritického zesílení a periody ustálených kmitů v čase pro Kolmogorov-Gaborův model..8.6.. Tkrit Prubeh zadaneho napeti, skutecneho napeti na vystupu soustavy motoru a poruchy W Y V 3 W,Y,V Obrázek 9: Průběh parametrů linearizovaného Kolmogorov-Gabor modelu. 3 6 Obrázek 6: Průběh regulace s ARX modelem. 7 Závěr V tomto dokumentu byla porovnána rychlost konvergence tří gradietních metod k minimu kriteriální funkce pro polynomiální modely založené na principu Volterrových řad. Z tabulek, a 3 je patrné, že nejhůře dopadla metoda ste- 6
epest descent, což je způsobeno absencí směrové matice. Metody Kvazi-Newtonova a Levenberg-Marquardt dosahují stejných výsledků, ale u metody Levenberg-Marquardt je potřeba méně iterací než u Kvazi-Newtonovy metody. V tabulkách, a 3 je uveden i počet iterací potřebných k nalezení optimálního kroku. Nejlépe dopadla také metoda Levenberg-Marquardt, z čehož ji lze označit jako nejvhodnější metodu pro estimaci parametrů polynomiálních modelů založených na principu Volterrových řad z testovaných metod. Pokud porovnáme jednotlivé polynomiální modely, zjistíme, že všechny polynomiální modely dosahují lepších výsledků než lineární ARX model, což je způsobeno tím, že každý polynomiální model obsahuje ARX model a další rozšiřující členy. Nejhůře z testovaných polynomiálních modelů dopadl parametrický model Volterrovy řady, protože má linearitu pouze na vstupní data. Pro testovanou soustavu je vhodnější použít nelinearitu na výstupních datech. Nejlépe dopadl Kolmogor-Gaborův model, protože obsahuje nelinearitu jak na vstupní, tak na výstupní data. Pokud porovnáme průběh regulace s lineárním ARX model zobrazené na obrázku a s linearizovaným Kolmogorov-Gabor modelem zobrazeném na obrázku, který dosáhl nejlepšího výsledku při estimaci, zjistíme, že jejich průběhy jsou velice podobné. Z obrázku 9 je patrné, že se mění se změnou žádané hodnoty všechny parametry linearizovaného modelu, ale na obrázku 8 vidíme, že i když se změní všechny parametry linearizovaného modelu, tak perioda ustálených kmitů linearizovaného modelu je téměř konstantní a mění se pouze kritické zesílení, z čehož vyplývá, že se změnilo pouze statické zesílení linearizovaného modelu. Pouze změna kritického zesílení linearizovaného modelu byla pro všechny použité polynomiální modely. Z průběhu akčních zásahů na obrázcích 6 a 7 lze říci, že pro použitou soustavu je vhodnější použít pevně nastavený diskrétní PID regulátor než adaptivní diskrétní PID regulátor s linearizovaným polynomiálním modelem, protože s pevně nastaveným diskrétním PID regulátorem nedochází při změně žádané hodnoty k tak velkému rozkmitu akčního zásahu. Literatura [] NELLES, O. Nonlinear System Identification: From Classical Approaches to Neural Networks and Fuzzy Models. Berlin: Springer,, 78 s. ISBN 3--67369- [] NOVÁK, A. Identification of Nonlinear Systems: Volterra Series Simplification [online]. Článek ČVT. Praha: FEL, Katedra radioelektroniky, 7, s. [cit. 6.. ]. Dostupné z RL: <http://ctn.cvut.cz/ap/download.php?id=7>. [6] OGNFNMI, T. Adaptive Nonlinear System Identification: The Volterra and Wiener Model Approaches. Santa Clara: Springer, 7, 3 s. ISBN 978--387-638- [7] PIVOŇKA, P. Číslicová řídicí technika. Skriptum VT. Brno: FEKT, Ústav automatizace a měřicí techniky, 3, s. [8] PIVOŇKA, P. - SCHMIDT, M Comparative Analysis of Discrete Derivative Implementations in PID Controllers. In Systems Theory and Applications Greece, 7, 33-37 s. [9] POPESC, D. To Linearize Nonlinear System Model sing Sensitivity Functions [online]. CEAI,, Volume, 3- s. [cit. 6.. ]. Dostupné z RL: <http://www.ceai.srait.ro/index.php/ceai/article/ view//6>. [] ŠTECHA, J. Optimální rozhodování a řízení. Skriptum ČVT. Praha: FEL, Katedra řídicí techniky, 999, s. [] YENG, D. S. - et al. Sensitivity Analysis for Neural Networks. New York: Springer, 998, 63 s. ISBN 978-3-6-3- [] ZHANG, H. Volterra Series: Introduction and Application. [online]. Prezentace. [s.l.] s. [cit. 6.. ]. Dostupné z RL: <http://amesp.tamu.edu/ sanchez/ 66 Volterra 8.pdf>. [] IKONEN, E. - NAJIM, K. Adaptive process Identification and Control. New York: Marcel Dekker,, 3 s. ISBN -87-68-X [] JANCZAK, A. Identification of Nonlinear Systems sing Neural Networks and Polynomial Models: A Block-Oriented Approach. New York: Springer,, 3 s. ISBN 978-3--38- [3] LEBEDA, A. Model soustavy motorů s pružným členem. Diplomová práce. Brno: Vysoké učení technické v Brně, Fakulta elektrotechniky a komunikačních technologií, Ústav automatizace a měřicí techniky,. 8 s. Vedoucí práce: Petr Pivoňka. 6