Univerza v Ljubljani Fakulteta za elektrotehniko Gorazd Karer PREDIKTIVNO VODENJE HIBRIDNIH SISTEMOV DOKTORSKA DISERTACIJA Mentor: prof. dr. Borut Zupančič Somentor: prof. dr. Igor Škrjanc Ljubljana, 2009 Zahvala Doktorska disertacija ne bi mogla nastati, če ne bi bilo nekaterih ljudi, ki so mi pri delu pomagali in mi stali ob strani. Zahvaljujem se mentorju prof. dr. Borutu Zupančiču in somentorju prof. dr. Igorju Škrjancu za spodbudo, podporo in konstruktivne ideje, pomembno vlogo pa je imel tudi izr. prof. dr. Gašper Mušič, ki je pri nastajanju dela sodeloval že od vsega začetka. Za sodelovanje sem hvaležen tudi čilskim kolegom - Alfredu Nunezu, Doris Sdez in Javierju Causi. Zahvala gre vsem sodelavcem iz Laboratorija za modeliranje, simulacijo in vodenje in Laboratorija za avtonomne mobilne sisteme, ki so mi pomagali pri reševanju cele vrste strokovnih, tehničnih in ostalih težav, na katere sem naletel, predvsem pa so zaslužni za to, da moje delo v laboratoriju ni bilo samo navadna služba. Zahvaljujem se tudi svojim staršem, bratu in prijateljem, nesporno prvo mesto za psihološko (in terminološko) podporo in razumevanje pa gre seveda Mojci. Nenazadnje pa si posebno priznanje v kategoriji osmišljanja življenja, proženja nujno potrebnih možganskih preklopov in zdrave mere pri nagajanju zasluži Živa. Povzetek V doktorski disertaciji obravnavamo problematiko s podroˇcja prediktivnega vodenja hibridnih sistemov. Disertacija je sestavljena iz ˇstirih delov. V prvem, uvodnem delu na kratko predstavimo problematiko prediktivnega vodenja hibridnih sistemov. V drugem delu, ki je sestavljen iz veˇc poglavij, obravnavamo modeliranje hibridnih sistemov za prediktivno vodenje. V drugem poglavju podamo uvod v modeliranje hibridnih sistemov za predik-tivno vodenje. Na zaˇcetku vpeljemo sploˇsno matematiˇcno formulacijo dinamiˇcnih sistemov, ki jo razˇsirimo na formulacijo hibridnih dinamiˇcnih sistemov in formulacijo vodenih hibridnih dinamiˇcnih sistemov. Nato natanˇcneje opiˇsemo prepletanje zvezne in diskretne dinamike pri hibridnih sistemih. V tem okviru obravnavamo diskretne pojave v hibridnih sistemih, tj. samodejne preklope, samodejne skoke, kontrolirane preklope in kontrolirane skoke, ter za vsak pojav predstavimo preprost primer. V nadaljevanju navedemo pomembnejˇse prispevke k modeliranju hibridnih sistemov, na koncu pa predstavimo ˇse razloge za uporabo modelov hibridnih sistemov za prediktivno vodenje, ki so doloˇceni v diskretnem ˇcasu. V tretjem poglavju opiˇsemo osnovni simulacijski model ˇsarˇznega reaktorja, na katerem smo preverjali pristope modeliranja in vodenja, ki jih obravnavamo v disertaciji. Najprej predstavimo zgradbo ˇsarˇznega reaktorja, nato pa ˇse njegov matematiˇcni model. V ˇcetrtem poglavju predstavimo odsekoma afine in ekvivalentne modele. Opiˇsemo odsekoma afine sisteme, meˇsane logiˇcno-dinamiˇcne sisteme, linearne sisteme s komplementarnima spremenljivkama, razˇsirjene linearne sisteme s komplementarnima spremenljivkama ter sisteme diskretnih dogodkov, ki jih modeliramo z operacijami doloˇcanja maksimuma in minimuma, seˇstevanja in skalarnega mnoˇzenja. Navedemo pogoje za moˇznost pretvorbe med posameznimi formulacijami. Na koncu opiˇsemo ˇse uporabo in omejitve odsekoma afinih in ekvivalentnih modelov pri prediktivnem vodenju hibridnih sistemov. V petem poglavju razvijemo hibridni mehki model. Najprej uvedemo problematiko nelinearne dinamike in predstavimo mehki model tipa Takagi-Sugeno. Nadaljujemo z modeliranjem hibridnega mehkega modela. V tem okviru predstavimo hierarhiˇcno zgradbo hibridnega mehkega modela, posploˇsitev mehkega modela tipa Takagi-Sugeno na nelinearne hibridne sisteme, zapis hibridnega mehkega modela in posploˇsitev na multivariabilne sisteme in na sisteme viˇsjega reda. Na koncu predstavimo ˇse identifikacijo hibridnega mehkega modela, in sicer mehko rojenje, projekcije mehkih rojev v vhodni prostor hibridnega mehkega modela, globalni linearni model in ocenjevanje parametrov hibridnega mehkega modela z modificirano metodo najmanjˇsih kvadratov. V ˇsestem poglavju obravnavamo postopek modeliranja in identifikacije odsekoma afinega modela na primeru ˇsarˇznega reaktorja. Identificiramo ˇstiri razliˇcice odsekoma afinega modela, in sicer s hevristiˇcno metodo razdelitve prostora ter z razdelitvijo prostora z rojenjem. Parametre modela ocenimo s klasiˇcno metodo najmanjˇsih kvadratov ter z modificirano metodo najmanjˇsih kvadratov, ki je predstavljena v poglavju o hibridnem mehkem modelu. S prirejeno metodo za identifikacijo dobimo stabilen odsekoma afini model, ki zadovoljivo opisuje dinamiko ˇsarˇznega reaktorja, pri uporabi klasiˇcne identifikacijske metode za odsekoma afine sisteme pa ne dobimo stabilnega modela. Odsekoma afine modele na koncu eksperimentalno testiramo, ovrednotimo natanˇcnost predikcijskega modela in preverimo njeno odvisnost od ˇstevila rojev, ki jih doloˇcamo pri identifikaciji. V sedmem poglavju podamo postopek modeliranja in identifikacije hibridnega mehkega modela na primeru ˇsarˇznega reaktorja. Identificiramo dve razliˇcici hibridnega mehkega modela, in sicer s hevristiˇcno metodo razdelitve prostora ter z razdelitvijo prostora z rojenjem. Hibridna mehka modela na koncu eksperimentalno testiramo, ovrednotimo natanˇcnost predikcijskega modela in preverimo njeno odvisnost od ˇstevila rojev, ki jih doloˇcamo pri identifikaciji. Primerjamo tudi odsekoma afina modela in hibridna mehka modela in ugotovimo, da ob primerljivi kompleksnosti doseˇzemo veˇcjo natanˇcnost s hibridnim mehkim modelom. V tretjem delu, ki je sestavljen iz veˇc poglavij, obravnavamo metode predik-tivnega vodenja hibridnih sistemov. V osmem poglavju podamo uvod v metode prediktivnega vodenja hibridnih sistemov. Na zaˇcetku opiˇsemo razloge za uveljavitev prediktivnega vodenja v praksi, nato pa predstavimo prediktivno vodenje kot poenostavitev reˇsevanja problema optimalnega vodenja. Obravnavamo uporabo modelov v diskretnem ˇcasu, delovanje algoritmov za prediktivno vodenje ter doloˇcanje kriterijske funkcije in raˇcunske zahtevnosti optimizacijskega problema. Na koncu na kratko uvedemo ˇse prediktivno vodenje hibridnih sistemov. V devetem poglavju obravnavamo metodo za prediktivno vodenje hibridnih sistemov na osnovi reˇsevanja meˇsanih celoˇstevilskih optimizacijskih problemov, primerno za sisteme, ki jih lahko zapiˇsemo v obliki odsekoma afinega ali ekvivalentnega modela. Najprej predstavimo dva osnovna pristopa, tj. sprotno in predhodno reˇsevanje optimizacijskega problema. Nato opiˇsemo delovanje algoritma za prediktivno vodenje, potem pa predstavimo ˇse glavno oviro za uporabo metode v praksi, tj. prekletstvo razseˇznosti. Pristop preizkusimo na primeru vodenja temperature v ˇsarˇznem reaktorju in ugotovimo, da uporaba zaradi kom- pleksnosti ni smiselna. V desetem poglavju opiˇsemo metodo za prediktivno vodenje hibridnih sistemov z diskretnimi vhodi, ki deluje na osnovi analize dosegljivosti. Najprej razloˇzimo razvoj problemskega drevesa in predstavimo pristop z analizo dosegljivosti. Nato uvedemo pogoj za ustreznost kriterijske funkcije in predlagamo njeno sploˇsno uporabno obliko. Obravnavamo tudi raˇcunsko zahtevnost in pristope za njeno zmanjˇsanje. Na koncu predstavimo ˇse primer uporabe algoritma za vodenje temperature v ˇsarˇznem reaktorju in ovrednotimo obravnavani pristop. Ugotovimo, da algoritem omogoˇca izpolnitev zahtev vodenja, ˇce je kriterijska funkcija ustrezno doloˇcena. V enajstem poglavju opiˇsemo metodo za prediktivno vodenje hibridnih sistemov z diskretnimi vhodi, ki deluje na osnovi genetskega algoritma. Najprej opiˇsemo uporabo genetskega algoritma pri optimizaciji problemov z diskretnimi spremenljivkami in mehanizem delovanja ter predstavimo genetska operatorja, tj. kriˇzanje in mutacijo. Nato obravnavamo suboptimalnost pristopa, kriterij-sko funkcijo in raˇcunsko zahtevnost ter pristope za njeno zmanjˇsanje. Na koncu predstavimo ˇse primer uporabe algoritma za vodenje temperature v ˇsarˇznem reaktorju in ovrednotimo obravnavani pristop. Glavna slabost genetskega algoritma je suboptimalnost reˇsitve, glavna prednost pa je neobˇcutljivost na spremembe reference ter predvidljivost in omejenost ˇcasa za izraˇcun reˇsitve. V dvanajstem poglavju obravnavamo metodo za adaptivno prediktivno vodenje sistemov s ˇcasovno spremenljivimi dinamiˇcnimi lastnostmi, ki deluje na osnovi identifikacije lokalnega linearnega modela vodenega sistema. Najprej opiˇsemo razloge za ˇcasovno spremenljive dinamiˇcne lastnosti, nato pa predstavimo delovanje algoritma. V tem okviru opiˇsemo linearizirani model, ocenjevanje parametrov in algoritem za prediktivno funkcionalno vodenje. Na koncu predstavimo ˇse primer uporabe algoritma za vodenje temperature v ˇsarˇznem reaktorju, v katerem potekata dve eksotermni kemiˇcni reakciji, in ovrednotimo obravnavani pristop. ˇ Ceprav sta reakciji, ki v model procesa vpeljujta ˇcasovno spreminjajoˇce para- metre, izrazito eksotermni, rezultati pokažejo, da uporaba algoritma omogoča izpolnitev zahtev vodenja, in to kljub temu, da kinetičnega modela reakcij ne poznamo. V trinajstem poglavju razvijemo metodo za vodenje z inverznim modelom, primerno za sisteme z enim izhodom, ki jih lahko zapišemo v obliki hibridnega mehkega modela. Najprej opišemo strukturo algoritma za vodenje, ki ga sestavljata dva dela - krmilni del in regulacijski del. Nato izpeljemo inverzni hibridni mehki model. V nadaljevanju predstavimo delovanje krmilnega dela algoritma za vodenje, in sicer opišemo matriko dosegljivosti hibridnega mehkega modela, prilagoditev referenčnega signala, določitev diskretnega dela krmilnega signala in določitev zveznega dela krmilnega signala. Potem predstavimo še delovanje regulacijskega dela algoritma za vodenje, in sicer opišemo linearizacijo hibridnega mehkega modela, večkoračno predikcijo lineariziranega modela, inkrementalni model in določitev regulirnega signala. Na koncu predstavimo še primer uporabe algoritma za vodenje temperature v šaržnem reaktorju in ovrednotimo obravnavani pristop. Ugotovimo, da temperatura v jedru reaktorja dobro sledi referenčni temperaturi, poleg tega pa algoritem ustrezno kompenzira stopničasto motnjo na izhodu. Tudi temperatura v plašču ostaja znotraj predpisanega temperaturnega območja. V četrtem, zaključnem delu povzamemo ugotovitve disertacije. Pri optimizacijskih pristopih za prediktivno vodenje hibridnih sistemov se v realnih primerih pogosto ne moremo izogniti prekletstvu razsežnosti - problem je teoretično sicer rešljiv, v praksi pa ga zaradi omejene računske moči ni mogoče rešiti. Pri vodenju hibridnih sistemov je torej smiselno uporabiti tudi teorijo vodenja z drugih področij in jo s primernimi modifikacijami in ustreznimi poenostavitvami prilagoditi vodenju konkretnega sistema ter se na ta način izogniti algoritmom, ki so za praktično uporabo računsko prezahtevni. Abstract In the doctoral thesis we deal with model predictive control of hybrid systems. The thesis consists of four parts. In the first, introductory part we first present the field of model predictive control of hybrid systems. In the second part, which is made up of several chapters, we deal with modelling of hybrid systems for model predictive control. In chapter 2 we introduce modelling of hybrid systems for model predictive control. First we present a general mathematical formulation of dynamical systems, which we gradually expand to hybrid dynamical systems and controlled hybrid dynamical systems. Next, we investigate the interlacement of the continuous and the discrete dynamics in hybrid systems. In this regard, we treat the discrete events in hybrid systems, i.e. autonomous switching, autonomous jumps, controlled switching, and controlled jumps. Each type of event is represented by an example. After that, we list some important contributions to modelling of hybrid systems. Finally, we present the motivation for using discrete-time models of hybrid systems for model predictive control. In chapter 3 we describe the basic simulation model of the batch reactor that was used to verify modelling and control approaches, which are presented in the thesis. First, we present a scheme of the reactor and then we develop its mathematical model. Chapter 4 introduces the piecewise affine and equivalent models. We describe the piecewise affine systems, mixed logical dynamical systems, linear complementarity systems, extended linear complementarity systems, and min-max-plus-scaling systems. We state the conditions for transformations among the formulations. Finally, we discuss the use and limitations of the piecewise affine and equivalent models in model predictive control of hybrid systems. In chapter 5 we develop the hybrid fuzzy model. First we introduce the nonlinear dynamics and present the Takagi-Sugeno fuzzy model. Next, we discuss modelling of the hybrid fuzzy model, namely the hierarchical structure of the hybrid fuzzy model, generalization of the Takagi-Sugeno fuzzy model to nonlinear hybrid systems, the formulation of the hybrid fuzzy model, and generalization to multi-variable systems and higher-than-first-order systems. Finally, we present the identification of the hybrid fuzzy model, namely fuzzy clustering, projection of the fuzzy clusters into the input space of the hybrid fuzzy model, the global linear model, and parameter estimation of a hybrid fuzzy model by means of a modified least-squares method. In chapter 6 we deal with modelling and identification of a piecewise affine model based on the batch reactor. We develop four varieties of the piecewise affine model, namely by using a heuristic method for space division and by clustering. In addition, we estimate the parameters using the classic and the modified least-squares method. By using the latter method, which is presented in chapter 5 on hybrid fuzzy model, we obtain a stable piecewise affine model that suitably describes the dynamics of the batch reactor. By using the former method, on the other hand, we do not obtain a stable model. Finally, we test the piecewise affine models experimentally, verify the accuracy of the models, and examine its dependence on the number of clusters used in identification. In chapter 7 we deal with modelling and identification of a hybrid fuzzy model based on the batch reactor. We develop two varieties of the hybrid fuzzy model, namely by using a heuristic method for space division and by using clustering. Finally, we test the hybrid fuzzy models experimentally, verify the accuracy of the models, and examine its dependence on the number of clusters used in identification. We compare the piecewise affine and hybrid fuzzy models. We can conclude that for similar complexity a better accuracy is obtained by the hybrid fuzzy model. In the third part, which is made up of several chapters, we deal with methods for model predictive control of hybrid systems. In chapter 8 we introduce the methods for model predictive control of hybrid systems. We start by describing the causes for the significant impact of model predictive control in engineering practice. Next, we present predictive control as a simplification of solving an optimal-control problem. We discuss discrete-time models, the principle of model predictive control, the cost function, and estimation of computational complexity of an optimal-control problem. Finally, we briefly introduce model predictive control of hybrid systems. In chapter 9 we consider predictive control of hybrid systems based on mixed integer programming, which is suitable for systems that can be formulated as piecewise affine or equivalent models. First, we present two basic approaches, i.e. online and offline solving of the optimization problem. Next, we describe the principle of the control algorithm. After that, we present the main obstacle for using the method, i.e. the curse of dimensionality. The method is tested on the batch-reactor example, where it is ascertained that in this case the method is not usable due to excessive computational complexity. In chapter 10 describe predictive control of hybrid systems with discrete inputs based on reachability analysis. First, we describe the tree of evolution and present the reachability-analysis approach. We introduce the condition for cost-function suitability and propose a generally usable form. We also treat computational complexity and the approaches for reducing it. Finally, we verify the method on the batch-reactor example. We establish that the method meets the control demands, provided a suitable cost function is used. In chapter 11 we deal with predictive control of hybrid systems with discrete inputs based on a genetic algorithm. First, we describe the use of genetic algorithms in optimization of discrete-input control problem, the principle of the genetic algorithm, and the genetic operators, i.e. crossover and mutation. Next, we discuss the suboptimality of the approach and the cost function. We also treat computational complexity and the approaches for reducing it. Finally, we verify the method on the batch-reactor example. The main drawback of the approach is the suboptimality of the solution, whereas the main advantage is its low sensitivity to changes of reference trajectory and boundedness of computation time. In chapter 12 we deal with self-adaptive predictive control of systems with time-variant dynamics based on the identification of the linear internal model. First, we describe the causes for time-variant dynamics. Next, we present the principle of the algorithm, namely the linearized model, parameter estimation, and predictive-functional-control algorithm. Finally, we verify the method on the batch-reactor example with two exothermic chemical reaction that take place in the core of the reactor. The results suggest that such an implementation meets the control demands, despite the strongly exothermic nature of the chemical reactions with unknown kinetics. In chapter 13 we develop a control method based on an inverse model. The method is suitable for single-output systems that can be formulated as a hybrid fuzzy model. First, we describe the structure of the algorithm that consists of two parts – the feedforward part and the feedback part. Next, we derive the inverse hybrid fuzzy model. Furthermore, we present the feedforward principle, namely the reachability matrix, the adjustment of the reference signal, the determination of the discrete part of the feedforward control signal, and the determination of the continuous part of the feedforward control signal. Then, we present the feedback principle, namely the linearization of the hybrid fuzzy model, the prediction of the linearized model, the incremental model, and the determination of the feedback control signal. Finally, we verify the method on the batch-reactor example. We establish that the reference is well followed by the temperature in the core of the reactor. In addition, the algorithm copes well with the additive persistent disturbance in the core. The temperature in the jacket of the reactor also stays in within the prescribed boundaries. In the fourth, closing part we summarize the conclusions of the thesis. When using optimization approaches to model predictive control of hybrid systems in practice, we often can not avoid the curse of dimensionality – the problem is theoretically solvable, but can not be tackled in practice due to limited computing power. In hybrid-system control design it is therefore sensible to apply control approaches from other fields and adapting them to the particular system by employing suitable modifications, and appropriate simplifications and in this manner avoid the algorithms that are computationally too demanding for practical implementation. Vsebina Seznam slik xxvii Seznam tabel xxxiii I Uvod 1 1. Uvod 3 II Modeliranje hibridnih sistemov za prediktivno vodenje 9 2. Uvod v modeliranje hibridnih sistemov za prediktivno vodenje 11 2.1 Sploˇsna matematiˇcna formulacija .................. 12 2.1.1 Dinamiˇcni sistem ....................... 12 2.1.2 Hibridni dinamiˇcni sistem .................. 13 2.1.3 Vodeni hibridni dinamiˇcni sistem .............. 14 2.2 Prepletanje zvezne in diskretne dinamike .............. 16 2.2.1 Samodejni preklopi ...................... 17 2.2.2 Samodejni skoki ........................ 18 2.2.3 Kontrolirani preklopi ..................... 19 xvii xviii Vsebina 2.2.4 Kontrolirani skoki....................... 19 2.3 Pomembnejši prispevki k modeliranju hibridnih sistemov..... 20 2.3.1 Witsenhausnov model .................... 21 2.4 Modeliranje hibridnih sistemov za prediktivno vodenje v diskre- 3. Šaržni reaktor 27 3.1 Zgradba šaržnega reaktorja...................... 27 3.2 Zapis matematičnega modela šaržnega reaktorja z diferencialnimi 3.2.1 Zakon o ohranitvi energije za jedro šaržnega reaktorja ... 30 3.2.2 Zakon o ohranitvi energije za plašč šaržnega reaktorja ... 31 4. Odsekoma aflni in ekvivalentni modeli 33 4.1 Odsekoma afinim sistemom ekvivalentne formulacije hibridnih sis- 4.1.1 Odsekoma afini sistemi.................... 34 4.1.2 Mešani logično-dinamični sistemi .............. 37 4.1.3 Linearni sistemi s komplementarnima spremenljivkama . . 39 4.1.4 Razširjeni linearni sistemi s komplementarnima spremen- 4.1.5 Sistemi diskretnih dogodkov, ki jih modeliramo z operacijami določanja maksimuma in minimuma, seštevanja in skalarnega množenja..................... 40 4.1.6 Pretvorba med posameznimi formulacijami modelov ... . 42 4.2 Uporaba pri prediktivnem vodenju hibridnih sistemov....... 43 Vsebina xix 4.3 Omejitve odsekoma afinih in ekvivalentnih modelov ........ 45 5. Hibridni mehki model 47 5.1 Nelinearnost in mehki modeli .................... 47 5.1.1 Mehki model tipa Takagi-Sugeno .............. 48 5.2 Modeliranje hibridnega mehkega modela .............. 50 5.2.1 Hierarhija hibridnega mehkega modela ........... 50 5.2.2 Posploˇsitev modela tipa Takagi-Sugeno na nelinearne hibridne sisteme .......................... 51 5.2.3 Zapis hibridnega mehkega modela .............. 54 5.2.4 Posploˇsitev hibridnega mehkega modela .......... 56 5.3 Identifikacija hibridnega mehkega modela .............. 58 5.3.1 Mehko rojenje ......................... 58 5.3.2 Projekcije mehkih rojev v vhodni prostor hibridnega mehkega modela .......................... 60 5.3.3 Globalni linearni model .................... 65 5.3.4 Priprava podatkov za ocenjevanje parametrov hibridnega mehkega modela ....................... 65 5.3.5 Ocenjevanje parametrov hibridnega mehkega modela z modificirano metodo najmanjˇsih kvadratov .......... 67 6. Primer postopka modeliranja in identifikacije odsekoma afinega modela 69 6.1 Podatki za identifikacijo ....................... 69 6.2 Razdelitev sistema .......................... 70 6.3 Temperatura v jedru ˇsarˇznega reaktorja ............... 72 XX Vsebina 6.3.1 Struktura modela ....................... 72 6.3.2 Parametri modela ....................... 74 6.4 Temperatura v plaˇsˇcu ˇsarˇznega reaktorja .............. 74 6.4.1 Odsekoma afini model – 1. pristop ............. 75 6.4.2 Odsekoma afini model – 2. pristop ............. 80 6.4.3 Odsekoma afini model – 3. pristop ............. 82 6.4.4 Odsekoma afini model – 4. pristop ............. 91 6.5 Vrednotenje .............................. 92 6.5.1 Podatki za vrednotenje .................... 93 6.5.2 Eksperimenti ......................... 94 6.5.3 Komentar rezultatov ..................... 100 7. Primer postopka modeliranja in identifikacije hibridnega mehkega modela 105 7.1 Signali za identifikacijo ........................ 105 7.2 Razdelitev sistema .......................... 105 7.3 Temperatura v jedru ˇsarˇznega reaktorja ............... 106 7.4 Temperatura v plaˇsˇcu ˇsarˇznega reaktorja .............. 107 7.4.1 Hibridni mehki model – 1. pristop .............. 107 7.4.2 Hibridni mehki model – 2. pristop .............. 111 7.5 Vrednotenje .............................. 116 7.5.1 Podatki za vrednotenje .................... 116 7.5.2 Eksperimenti ......................... 116 7.5.3 Komentar rezultatov ..................... 121 Vsebina xxi III Metode prediktivnega vodenja hibridnih sistemov125 8. Uvod v metode prediktivnega vodenja hibridnih sistemov 127 8.1 Optimalno vodenje .......................... 129 8.1.1 Hamilton-Jacobi-Bellmanova enaˇcba ............ 130 8.1.2 Optimalno vodenje linearnih sistemov ............ 131 8.2 Prediktivno vodenje kot poenostavitev reˇsevanja problema optimalnega vodenja ........................... 132 8.3 Uporaba modelov v diskretnem ˇcasu ................ 133 8.4 Delovanje algoritmov za prediktivno vodenje ............ 133 8.5 Kriterijska funkcija .......................... 135 8.6 Raˇcunska zahtevnost optimizacijskega problema .......... 136 8.7 Prediktivno vodenje hibridnih sistemov ............... 137 9. Reˇsevanje meˇsanih celoˇstevilskih optimizacijskih problemov 139 9.1 Odsekoma afini in ekvivalentni modeli ............... 139 9.2 Sprotno in predhodno reˇsevanje optimizacijskega problema . . . . 140 9.3 Delovanje algoritma za prediktivno vodenje ............. 140 9.3.1 Politopi ............................ 140 9.3.2 Meˇsani celoˇstevilski optimizacijski problem ......... 142 9.4 Prekletstvo razseˇznosti ........................ 148 9.5 Primer uporabe algoritma za vodenje temperature v ˇsarˇznem reaktorju ................................. 150 9.5.1 Matematiˇcni model ˇsarˇznega reaktorja ........... 150 9.5.2 Omejitev nabora mogoˇcih kombinacij vhodnih vektorjev . 151 xxii Vsebina 9.5.3 Vodenje ............................ 151 9.5.4 Kriterijska funkcija ...................... 152 9.5.5 Komentar ........................... 152 10.Prediktivno vodenje na osnovi analize dosegljivosti 155 10.1 Problemsko drevo ........................... 155 10.1.1 Razvoj problemskega drevesa ................ 156 10.1.2 Pogoja, ki ju preverjamo med gradnjo problemskega drevesa v vsakem vozliˇsˇcu .................... 158 10.1.3 Nadaljevanje razvoja problemskega drevesa po izpolnitvi enega od pogojev ....................... 159 10.2 Analiza dosegljivosti ......................... 160 10.3 Kriterijska funkcija .......................... 161 10.3.1 Pogoj za ustreznost kriterijske funkcije ........... 162 10.3.2 Predlog oblike kriterijske funkcije .............. 163 10.4 Raˇcunska zahtevnost ......................... 165 10.4.1 Zmanjˇsanje raˇcunske zahtevnosti z uporabo analize dosegljivosti ............................ 166 10.4.2 Zmanjˇsanje raˇcunske zahtevnosti z omejitvijo nabora mogoˇcih kombinacij vrednosti vektorja vhoda ....... 166 10.4.3 Zmanjˇsanje raˇcunske zahtevnosti z zadrˇzevanjem vrednosti vektorja vhodov skozi veˇc ˇcasovnih korakov ......... 167 10.5 Primer uporabe algoritma za vodenje temperature v ˇsarˇznem reaktorju ................................. 172 10.5.1 Matematiˇcni model ˇsarˇznega reaktorja ........... 172 10.5.2 Omejitev nabora mogoˇcih kombinacij vhodnih vektorjev . 172 Vsebina xxiii 10.5.3 Vodenje ............................ 173 10.5.4 Kriterijska funkcija ...................... 174 10.5.5 Rezultati – 1. pristop ..................... 174 10.5.6 Rezultati – 2. pristop ..................... 177 10.5.7 Primerjava prediktivnega vodenja s hibridnim mehkim in hibridnim linearnim modelom ................ 179 10.5.8 Komentar ........................... 183 11.Prediktivno vodenje na osnovi genetskega algoritma 187 11.1 Uporaba genetskega algoritma pri optimizaciji problemov z diskretnimi spremenljivkami ........................ 187 11.2 Mehanizem optimizacije na osnovi genetskega algoritma ...... 188 11.3 Genetski operatorji .......................... 189 11.3.1 Kriˇzanje ............................ 190 11.3.2 Mutacija ............................ 191 11.4 Suboptimalnost pristopa ....................... 192 11.5 Kriterijska funkcija .......................... 193 11.6 Raˇcunska zahtevnost ......................... 194 11.6.1 Zmanjˇsanje raˇcunske zahtevnosti z omejitvijo nabora mogoˇcih kombinacij vrednosti vektorja vhoda ....... 196 11.6.2 Zmanjˇsanje raˇcunske zahtevnosti z zadrˇzevanjem vrednosti vektorja vhodov skozi veˇc ˇcasovnih korakov ......... 197 11.7 Primer uporabe algoritma za vodenje temperature v ˇsarˇznem reaktorju ................................. 200 11.7.1 Matematiˇcni model ˇsarˇznega reaktorja ........... 200 xxiv Vsebina 11.7.2 Omejitev nabora mogoˇcih kombinacij vhodnih vektorjev . 201 11.7.3 Vodenje ............................ 202 11.7.4 Kriterijska funkcija ...................... 204 11.7.5 Rezultati ............................ 204 11.7.6 Primerjava algoritmov za prediktivno vodenje na osnovi genetskega algoritma, na osnovi analize dosegljivosti in na osnovi ocenjevanja vseh mogoˇcih reˇsitev .......... 207 11.7.7 Komentar ........................... 215 12.Adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela 217 ˇ 12.1 Casovno spremenljive dinamiˇcne lastnosti .............. 217 12.2 Delovanje algoritma za adaptivno prediktivno vodenje ....... 218 12.2.1 Zapis lineariziranega modela ................. 218 12.2.2 Ocenjevanje parametrov ................... 219 12.2.3 Algoritem za prediktivno funkcionalno vodenje ....... 223 12.3 Primer uporabe algoritma za vodenje temperature v ˇsarˇznem reaktorju ................................. 230 12.3.1 Modificirani matematiˇcni model ˇsarˇznega reaktorja . . . . 230 12.3.2 Kinetiˇcni model eksotermnih kemiˇcnih reakcij ....... 232 12.3.3 Ocenjevanje parametrov ................... 234 12.3.4 Algoritem za prediktivno funkcionalno vodenje ....... 237 12.3.5 Rezultati ............................ 238 12.3.6 Komentar ........................... 239 13.Vodenjezinverznim modelom 245 Vsebina XXV 13.1 Dvodelnost algoritma za vodenje z inverznim modelom...... 245 13.2 Inverzni hibridni mehki model.................... 247 13.3 Krmilni del algoritma za vodenje .................. 248 13.3.1 Matrika dosegljivosti hibridnega mehkega modela..... 249 13.3.2 Prilagoditev referenčnega signala.............. 250 13.3.3 Določitev diskretnega dela krmilnega signala........ 252 13.3.4 Določitev zveznega dela krmilnega signala......... 254 13.4 Regulacijski del algoritma za vodenje................ 256 13.4.1 Linearizacija hibridnega mehkega modela.......... 257 13.4.2 Večkoračna predikcija lineariziranega modela........ 258 13.4.3 Inkrementalni model..................... 258 13.4.4 Določitev regulirnega signala................. 261 13.5 Primer uporabe algoritma za vodenje temperature v šaržnem re- 13.5.1 Matematični model šaržnega reaktorja........... 263 13.5.2 Vodenje............................ 264 13.5.3 Rezultati............................ 265 13.5.4 Komentar........................... 266 IV Zaključek 269 14. Zaključek 271 14.1 Glavni izvirni prispevki doktorske disertacije............ 276 Literatura 277 xxvi Vsebina Dodatek A - Parametri modela in vodenja 295 Seznam slik 3.1 Shema šaržnega reaktorja....................... 28 4.1 Shema pretvorb med modeli: odsekoma afini sistemi (PWA); mešani logično-dinamični sistemi (MLD); linearni sistemi s komplementarnima spremenljivkama (LC); razširjeni linearni sistemi s komplementarnima spremenljivkama (ELC); sistemi diskretnih dogodkov, ki jih modeliramo z operacijami določanja maksimuma in minimuma, seštevanja in skalarnega množenja (MMPS)..... 44 6.1 Temperatura v jedru T (polna črta) in plašču Tw (prekinjena črta) šaržnega reaktorja........................... 71 6.2 Temperatura v jedru T (polna črta) in plašču Tw (prekinjena črta) šaržnega reaktorja - izsek....................... 72 6.3 Vhodni signali kM,kHinkC...................... 73 6.4 Vhodni signali kM, kH in kC - izsek................. 74 6.5 Delitev vhodnega prostora modela (6.4)............... 78 6.6 Temperatura v jedru T (polna črta) in plašču Tw (prekinjena črta) šaržnega reaktorja........................... 93 6.7 Temperatura v jedru T (polna črta) in plašču Tw (prekinjena črta) šaržnega reaktorja - izsek....................... 94 6.8 Vhodni signali kM, kH in kC...................... 95 6.9 Vhodni signali kM, kH in kC - izsek................. 96 xxvii xxviii Seznam slik 6.10 Odziv modela na vhodne signale za vrednotenje (polna črta) in dejanski odziv (prekinjena črta) - 2. pristop............. 97 6.11 Odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila predikcijskih korakov h, ki jih računamo v posameznem eksperimentu - 2. pristop. Prekinjena črta označuje vrednost JTw,2 pri h = oo................ 98 6.12 Odziv modela na vhodne signale za vrednotenje (polna črta) in dejanski odziv (prekinjena črta) - 4. pristop............. 99 6.13 Odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila predikcijskih korakov h, ki jih računamo v posameznem eksperimentu-4. pristop. Prekinjena črta označuje vrednost JTwA pri h = oo................100 6.14 Odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila rojev, ki jih določamo pri mehkem rojenju pri 4. pristopu....................101 7.1 Pripadnostne funkcije.........................109 7.2 Odziv modela na vhodne signale za vrednotenje (polna črta) in dejanski odziv (prekinjena črta) - 1. pristop.............117 7.3 Odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila predikcijskih korakov h, ki jih računamo v posameznem eksperimentu-1. pristop. Prekinjena črta označuje vrednost JTw,i pri h = oo................118 7.4 Odziv modela na vhodne signale za vrednotenje (polna črta) in dejanski odziv (prekinjena črta) - 2. pristop.............119 Seznam slik xxix 7.5 Odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila predikcijskih korakov h, ki jih računamo v posameznem eksperimentu-2. pristop. Prekinjena črta označuje vrednost JTw,2 pri h = oo................120 7.6 Odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila rojev, ki jih določamo pri mehkem rojenju pri 2. pristopu....................122 10.1 Primer razvitega problemskega drevesa za največji predikcijski horizont H = 4 in M = 3 mogoče različne vrednosti vhodnega vektorja. Končno optimalno vozlišče je Vu, zato je v tem koraku izbran in uporabljen vhodni vektor uopt = u2.............156 10.2 Primer izseka problemskega drevesa v primeru zadrževanja vrednosti vektorja vhodov skozi Z = 3 časovne korake za M = 3 mogoče različne vrednosti vhodnega vektorja.................170 10.3 Temperatura v jedru reaktorja T (polna črta) in referenčna temperatura Tref (prekinjena črta)....................175 10.4 Temperatura v plašču reaktorja Tw in položaji ventilov kM, kH in 10.5 Temperatura v jedru reaktorja T (polna črta) in referenčna temperatura Tref (prekinjena črta)....................177 10.6 Temperatura v plašču reaktorja Tw in položaji ventilov kM, kH in 10.7 Temperatura v jedru reaktorja T (polna črta) in referenčna temperatura Tref (prekinjena črta)....................180 10.8 Temperatura v plašču reaktorja Tw in položaji ventilov kM, kH in XXX Seznam slik 10.9 Primerjava uporabe hibridnega mehkega modela (glej razdelek 10.5.6) in hibridnega linearnega modela (glej razdelek 10.5.7): temperatura v jedru reaktorja T (polna črta) in referenčna temperatura Tref (prekinjena črta) - izsek..................182 lO.lOPrimerjava uporabe hibridnega mehkega modela (glej razdelek 10.5.6) in hibridnega linearnega modela (glej razdelek 10.5.7): temperatura v jedru reaktorja T (polna črta) in referenčna temperatura Tref (prekinjena črta) - izsek..................183 lO.llPrimerjava uporabe hibridnega mehkega modela (glej razdelek 10.5.6) in hibridnega linearnega modela (glej razdelek 10.5.7): temperatura v jedru reaktorja T (polna črta) in referenčna temperatura Tref (prekinjena črta) - izsek..................184 11.1 Potek genetskega algoritma......................190 11.2 Temperatura v jedru reaktorja T (polna črta) in referenčna temperatura Tref (prekinjena črta)....................205 11.3 Temperatura v plašču reaktorja Tw in položaji ventilov kM, kH in 11.4 Čas tk, ki ga genetski algoritem porabi za izračun rešitve v enem koraku, in vrednost kriterijske funkcije J za Hz = Hz,i = 4. ... 207 11.5 Čas 4, ki ga genetski algoritem porabi za izračun rešitve v enem koraku, in vrednost kriterijske funkcije J za Hz = HZß = 5. ... 208 11.6 Čas tk, ki ga genetski algoritem porabi za izračun rešitve v enem koraku, in vrednost kriterijske funkcije J za Hz = Hz;i = 6. ... 209 11.7 Normirani čas ik, ki ga algoritem porabi za izračun rešitve v vsakem koraku za Hz = HZA = 4.......................210 11.8 Normirani čas ik, ki ga algoritem porabi za izračun rešitve v vsakem koraku za Hz = HZ}2 = 5.......................211 Seznam slik xxxi 11.9 Normirani čas tk, ki ga algoritem porabi za izračun rešitve v vsakem koraku za Hz = HZß = 6....................... 213 12.1 Temperatura v jedru T, v plašču Tw in referenčni signal w..... 239 12.2 Vhodni signali kM,kHinkc...................... 240 12.3 Koncentracije reagentov in toplotna moč............... 241 12.4 Ocenjene vrednosti parametrov 6n, On in 613............ 242 12.5 Ocenjene vrednosti parametrov 62l in 622............... 243 13.1 Splošna shema vodenja........................ 246 13.2 Temperatura v jedru reaktorja T (polna črta) in referenčna temperatura Tref (prekinjena črta).................... 265 13.3 Temperatura v plašču reaktorja T (polna črta) in omejitev temperaturnega območja (prekinjena črta)................. 266 13.4 Krmilni in regulacijski del signala za položaj mešalnega ventila kM,K in kM,R ter signala za položaj zapornih ventilov kHinkc. • • 267 xxxii Seznam slik Seznam tabel 3.1 Vhodi šaržnega reaktorja....................... 28 3.2 Izhodi šaržnega reaktorja....................... 28 3.3 Ostale fizikalne količine in parametri, ki nastopajo v šaržnem re- 6.1 Rezultati simulacij - 2. pristop.................... 97 6.2 Rezultati simulacij - 4. pristop.................... 99 6.3 Odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila rojev, ki jih določamo pri mehkem rojenju pri 4. pristopu.................... 102 7.1 Rezultati simulacij - 1. pristop.................... 117 7.2 Rezultati simulacij - 2. pristop.................... 119 7.3 Odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila rojev, ki jih določamo pri mehkem rojenju pri 2. pristopu.................... 123 9.1 Čas tk, ki ga algoritem porabi za izračun rešitve optimizacijskega problema v enem časovnem koraku................. 153 11.1 Primerjava algoritmov za Hz = HZA = 4.............. 212 11.2 Primerjava algoritmov za Hz = Hz,2 = 5.............. 212 11.3 Primerjava algoritmov za Hz = HZ}3 = 6.............. 212 12.1 Parametri kemičnih reakcij...................... 234 xxxiii xxxiv Seznam tabel Del I Uvod 1 2 1. Uvod Veliko procesov, ki jih želimo voditi, ima zvezne in diskretne dinamične lastnosti. Zvezne količine, ki jih navadno opazujemo v sistemu, so temperatura, nivo vode, koncentracija snovi ipd. Diskretne lastnosti pa v sisteme uvajajo npr. zaporni ventili, stikala in omejitve. Hibridni sistemi so dinamični sistemi, ki vsebujejo tako zvezna kot diskretna stanja ali vhode, zato moramo upoštevati, da lahko signali v takih sistemih zavzamejo zvezne ali diskretne vrednosti. Poleg tega se v njih pogosto neločljivo prepletata zvezna in diskretna dinamika. Zvezno dinamiko lahko opišemo z diferencialnimi ali diferenčnimi enačbami, pri čemer je pomembna časovna odvisnost. Diskretno dinamiko pa lahko opišemo npr. s končnimi avtomati, pri čemer je pomembna dogodkovna odvisnost. Področje hibridnih sistemov je izrazito interdisciplinarno. Že v okviru teorije vodenja obstaja več vej, ki jih lahko obravnavamo z vidika hibridnih sistemov (nelinearno vodenje, adaptivno vodenje, drsni režim vodenja, vodenje z razporejanjem ojačenj itd.). Pravzaprav lahko večino dinamičnih sistemov, ki jih srečujemo vsak dan (avtomobili, računalniki, letala, pralni stroji itd.), obravnavamo tudi s stališča hibridnih sistemov. Kljub temu pa so v literaturi večinoma obravnavani popolnoma zvezni ali popolnoma diskretni modeli dinamičnih sistemov [137]. To je seveda razumljivo, saj je priporočljivo, da model obravnava le bistvene vidike realnega sistema, poleg tega pa mora biti kar najbolj enostaven - razvoj prekompleksnega modela je namreč nepraktičen in neekonomičen. V preteklosti so se zato pri obravnavi hibri- 3 4 Uvod dnih sistemov večinoma uporabljale poenostavljene formulacije. Sistematično je bil obravnavan samo zvezni ali samo diskretni vidik sistema. Z razvojem avtomatizacije pa se je pojavila potreba po enotnejši obravnavi hibridnih sistemov. Vedno večja vloga računalnikov pri vodenju procesov, pa tudi razvoj v računalništvu, teoriji vodenja, obravnavi dinamičnih sistemov, matematičnem programiranju in simulacijskih jezikih sta povzročila, da je v zadnjih letih na področju raziskav hibridnih sistemov prišlo do znatnega napredka [7, 89]. Pri mnogih realnih procesih lahko poleg hibridnih dinamičnih lastnosti opazimo tudi izrazito nelinearnost. Uveljavljen pristop k obravnavi nelinearnosti v sistemih je mehka logika, ki predstavlja uporabno izpeljavo teorije mehkih množic za obravnavo realnih kompleksnih problemov. Mehki modeli so učinkoviti univerzalni aproksimatorji nelinearne dinamike, saj lahko z njimi poljubno natančno aproksimiramo zvezne nelinearne funkcije. Glavna prednost mehkih modelov je intuitivni opis vzročno-posledičnih dinamičnih povezav med vhodi in izhodi v sistemu s stavki če-potem (angl. if-then). Premisa (stavek če) opisuje razdelitev prostora stanj modela na mehke podprostore, ki jih določajo ustrezne pripadnostne funkcije. V posledičnem delu (stavek potem) je določen lokalni izhod modela za vsak podprostor posebej. Glede na vrednosti pripadnostnih funkcij lahko izračunamo dejanski izhod sistema oz. napovedani izhod sistema v naslednjem časovnem koraku. Prediktivno vodenje predstavlja enega izmed naprednih pristopov k vodenju sistemov, ki se je tudi zelo uveljavil v praksi. Najprej se je prediktivno vodenje uporabljalo večinoma v petrokemični industriji, danes pa pridobiva vedno večjo veljavo kot splošno uporaben pristop za vodenje najrazličnejših sistemov. Prediktivno vodenje je način vodenja dinamičnih sistemov, pri katerem uporabljamo model procesa za napovedovanje obnašanja sistema pri določenih vho- 5 dih. Optimalne vhode, ki jih uporabimo za dejansko vodenje sistemov, navadno doloˇcimo s pomoˇcjo razliˇcnih optimizacijskih postopkov. Prediktivni regulatorji so uporabni za vodenje ˇsirokega spektra razliˇcnih tipov sistemov, zato se predvsem v primerih, ko so vodeni sistemi sorazmerno kompleksni (nelinearni sistemi, multivariabilni sistemi, sistemi z omejitvami, hibridni sistemi idr.), pokaˇze njihova prednost pred drugimi naˇcini vodenja. Metode prediktivnega vodenja so se uveljavile zaradi enostavnosti, uporabnosti, relativno dobrega delovanja in razumljivosti algoritma. Prediktivno vodenje danes ni veˇc omejeno samo na poˇcasne procese, kjer je ˇcasa za raˇcunanje med dvema korakoma oz. spremembama regulirnega signala veliko, ampak se uporaba vedno bolj ˇsiri tudi na podroˇcje hitrih procesov. Kljub temu pa je pri zahtevnih problemih vodenja, kjer nastopajo kompleksni dinamiˇcni procesi, raˇcunska kompleksnost ˇse vedno glavna teˇzava. Naˇcrtovanje prediktivnega vodenja hibridnih sistemov je zaradi prepletanja zvezne in diskretne dinamike v sploˇsnem zelo zahtevna naloga in v literaturi lahko najdemo razliˇcne pristope k reˇsevanju tega problema. Veˇcina pristopov se omejuje na hibridne sisteme v diskretnem ˇcasu, saj s tem zaobidejo veˇc kompleksnih matematiˇcnih pojavov. Kot smo omenili, je prediktivno vodenje pristop, pri katerem z napovedovanjem obnaˇsanja procesa z uporabo modela doloˇcamo ustrezne regulirne signale. Bistveno je modeliranje procesa, ki je zaradi kompleksne hibridne in nelinearne dinamike ˇstevilnih procesov pogosto teˇzavno. Za tovrstne sisteme klasiˇcne metode modeliranja in identifikacije, ki temeljijo na teoriji linearnih sistemov, niso primerne, zato potrebujemo posebne pristope. Kaˇze se torej potreba po ustreznih formulacijah modelov, ki naj bodo primerni za prediktivno vodenje, poleg tega pa morajo ustrezno upoˇstevati kompleksnost dinamike sistemov, ki jih ˇzelimo voditi. Modeli morajo imeti primerno strukturo, pomembna pa je tudi moˇznost eksperi- 6 Uvod mentalne identifikacije parametrov, ki jih ne moremo ali jih ni smiselno določiti s teoretičnim modeliranjem. V literaturi najdemo več različnih formulacij modelov, ki so primerni za uporabo pri prediktivnem vodenju hibridnih sistemov. Najbolj sta se uveljavili formulaciji odsekoma afinih sistemov in mešanih logično-dinamičnih sistemov, za katere je dokazano, da jih je mogoče (pod določenimi v realnosti ne zelo omejujočimi predpostavkami) medsebojno pretvarjati, mogoča pa je tudi pretvorba v nekaj drugih v literaturi uveljavljenih formulacij hibridnih sistemov. Glavna prednost sistemov, ki jih lahko zapišemo v obliki odsekoma afinega ali ekvivalentnega modela, je, da lahko prediktivno vodenje tovrstnih sistemov pretvorimo v matematični problem - tj. mešani celoštevilski optimizacijski problem - za katerega obstajajo učinkoviti (tudi komercialni) programi za reševanje optimizacijskih problemov. Omenjene metode so v osnovi namenjene sistemom z zveznimi vhodi, čeprav lahko rešitve (multiparametričnih) mešanih celo številskih linearnih/kvadratičnih programov (angl. (multiparametric) mixed integer linear/quadratic programs -(mp)-MILP/MIQP) uporabimo tudi za sisteme z diskretnimi vhodi. V tem primeru pride do povečanja števila diskretnih spremenljivk, pri čemer je treba upoštevati tudi ustrezne pomožne spremenljivke. Zato računska zahtevnost eksponentno naraste in tovrstne metode lahko postanejo povsem neuporabne [144]. Večina dosedanjega razvoja na področju prediktivnega vodenja hibridnih sistemov je torej osredotočena na (odsekoma) afine in njim ekvivalentne modele. Tovrstni pristopi pa so lahko neučinkoviti pri vodenju hibridnih sistemov z izrazito izraženimi nelinearnostmi [11]. Odsekoma afini modeli tako za ustrezno natančno aproksimacijo nelinearnosti zahtevajo pretirano segmentacijo, kar v optimizacijski algoritem uvede nove diskretne pomožne spremenljivke, to pa lahko poveča računsko kompleksnost do te mere, da postane algoritem povsem neupo- 7 raben. Vzrok za uporabo modelov, ki lahko opisujejo nelinearno dinamiko, za pre-diktivno vodenje je predvsem moˇznost izboljˇsave vodenja zaradi bolj natanˇcne predikcije. Kljub temu pa kriteriji, kdaj bi bilo smiselno uporabiti nelinearni model za prediktivno vodenje, niso vedno jasni. V sploˇsnem se pri regulaciji procesov, pri katerih se delovna toˇcka ne spreminja in se v sistemu ne pojavljajo pretirane motnje, zdi, da uporaba nelinearnih modelov ni najbolj smiselna. Po drugi strani pa lahko pri vodenju procesov, pri katerih se vrednosti vhodov, izhodov in stanj sistema spreminjajo v ˇsirokem delovnem obmoˇcju ali se v sistemu pojavljajo relativno velike motnje, z uporabo nelinearnega modela za prediktivno vodenje doseˇzemo znatno izboljˇsavo kakovosti vodenja. Kaˇze se torej potreba po formulaciji modela nelinearnega hibridnega sistema, ki bi bil uporaben za prediktivno vodenje. Poleg tega bi bilo treba razviti tudi ustrezne metode za prediktivno vodenje sistemov, ki lahko uporabljajo model nelinearnega hibridnega sistema, pri ˇcemer pa je pomembno zagotoviti ˇcim manjˇso raˇcunsko zahtevnost teh metod. Doktorska disertacija je sestavljena iz ˇstirih delov. V drugem delu, ki je sestavljen iz veˇc poglavij, obravnavamo modeliranje hibridnih sistemov za prediktivno vodenje. V drugem poglavju podamo uvod v modeliranje hibridnih sistemov za prediktivno vodenje. V tretjem poglavju opiˇsemo osnovni simulacijski model ˇsarˇznega reaktorja, na katerem smo preverjali pristope modeliranja in vodenja, ki jih obravnavamo v disertaciji. V ˇcetrtem poglavju predstavimo odsekoma afine in ekvivalentne modele. V petem poglavju predstavimo hibridni mehki model. V ˇsestem poglavju obravnavamo postopek modeliranja in identifikacije odsekoma afinega modela na primeru ˇsarˇznega reaktorja, v sedmem poglavju pa postopek modeliranja in identifikacije hibridnega mehkega modela na primeru ˇsarˇznega reaktorja. 8 Uvod V tretjem delu, ki je prav tako sestavljen iz veˇc poglavij, obravnavamo metode prediktivnega vodenja hibridnih sistemov. V osmem poglavju podamo uvod v metode prediktivnega vodenja hibridnih sistemov. V devetem poglavju obravnavamo metodo za prediktivno vodenje hibridnih sistemov na osnovi reˇsevanja meˇsanih celoˇstevilskih optimizacijskih problemov, primerno za sisteme, ki jih lahko zapiˇsemo v obliki odsekoma afinega ali ekvivalentnega modela. V desetem poglavju opiˇsemo metodo za prediktivno vodenje hibridnih sistemov z diskretnimi vhodi, ki deluje na osnovi analize dosegljivosti. V enajstem poglavju opiˇsemo metodo za prediktivno vodenje hibridnih sistemov z diskretnimi vhodi, ki deluje na osnovi genetskega algoritma. V dvanajstem poglavju obravnavamo metodo za adaptivno prediktivno vodenje sistemov s ˇcasovno spremenljivimi dinamiˇcnimi lastnostmi, ki deluje na osnovi identifikacije lokalnega linearnega modela vodenega sistema. V trinajstem poglavju predstavimo metodo za vodenje z inverznim modelom, ki je primerna za sisteme z enim izhodom, ki jih lahko zapiˇsemo v obliki hibridnega mehkega modela. V ˇcetrtem, zakljuˇcnem delu povzamemo ˇse glavne ugotovitve disertacije. Del II Modeliranje hibridnih sistemov za prediktivno vodenje 9 10 2. Uvod v modeliranje hibridnih sistemov za prediktivno vodenje Zaradi kompleksne hibridne dinamike je modeliranje hibridnih sistemov za namen prediktivnega vodenja problem, ki zahteva ustrezno razˇsiritev teorije sistemov. Uveljavljeni zapisi matematiˇcnih modelov (linearnih) sistemov, kot so zapis z diferencialno enaˇcbo, zapis s prenosno funkcijo, zapis v prostoru stanj ipd., v sploˇsnem niso primerni za opisovanje dinamiˇcnih lastnosti kompleksnejˇsih sistemov, kakrˇsni so tudi hibridni sistemi. Kaˇze se torej potreba po ustreznih formulacijah modelov, ki bodo primerni za prediktivno vodenje, poleg tega pa morajo ustrezno upoˇstevati kompleksnost dinamike sistemov, ki jih ˇzelimo voditi. Modeli morajo torej imeti primerno strukturo, pomembna pa je tudi moˇznost eksperimentalne identifikacije parametrov, ki jih ne moremo ali jih ni smiselno doloˇciti s teoretiˇcnim modeliranjem. V nadaljevanju poglavja bomo opisali sploˇsno matematiˇcno formulacijo di-namiˇcnih sistemov, hibridnih dinamiˇcnih sistemov in vodenih hibridnih di-namiˇcnih sistemov. Nato bomo opisali diskretne pojave, ki se odraˇzajo v dinamiki hibridnih sistemov in jih moramo zato pri modeliranju upoˇstevati. V naslednjih poglavjih drugega dela doktorske disertacije pa se bomo osre-dotoˇcili na formulacije matematiˇcnih modelov, ki so primerni za uporabo pri prediktivnem vodenju hibridnih sistemov. 11 12 Uvod v modeliranje hibridnih sistemov za prediktivno vodenje 2.1 Splošna matematična formulacija V tem razdelku bomo predstavili splošno matematično formulacijo dinamičnih sistemov, ki jo bomo postopoma razširili na formulacijo hibridnih dinamičnih sistemov in formulacijo vodenih hibridnih dinamičnih sistemov [40]. 2.1.1 Dinamični sistem Dinamični sistem S lahko splošno zapišemo, kot kaže enačba (2.1) [124]. E=[X,T,(f)] (2.1) V enačbi 2.1 predstavlja X poljuben prostor stanj dinamičnega sistema E. T predstavlja polgrupo z enoto. Polgrupa T = {a, b,...} je množica, nad katero je definirana asociativna operacija o : T x T -»■ T, ki vsakemu urejenemu paru (a, b) G T priredi natanko en element a o b G T. Operacija o mora zadoščati naslednjima pogojema. • Zaprtost: za vsak a,beT velja a o b G T. • Asociativnost: za vsak a,b,ceT velja (a o b) o c = a o (6 o c). V našem primeru je T monoid, kar pomeni, da, poleg tega, da je polgrupa, vsebuje tudi enoto, tj. element e, ki zadošča naslednjima pogojema. • e o e = e. • Za vsak aeT velja eoa = aoe = a. V enačbi 2.1 predstavlja (p funkcijo (p : X x T -»■ X, ki zadošča naslednjim pogojem. • Enota e: za vsak x G X velja (x, e) = x. 2.1 Splošna matematična formulacija 13 • Polgrupa: za vsak xelin poljubna a,beT velja (ß{(j){x,a),b) = (j){x,aob). • Zveznost: za vsako okolico W točke (x, a) obstajata okolica U točke x in okolica V elementa a, tako da velja (U, V) C W. 2.1.2 Hibridni dinamični sistem Hibridni sistem lahko obravnavamo kot indeksirano zbirko dinamičnih sistemov z vključenim opisom za preskakovanje med posameznimi dinamičnimi sistemi, tj. dejanskim preklapljanjem med sistemi ali ponastavljanjem stanja [40]. Preskok se zgodi, ko stanje zadosti določenemu pogoju, tj. ko pride v določen podprostor prostora stanj. Hibridni sistem lahko torej razumemo kot niz dinamičnih sistemov z začetnimi in končnimi stanji, kjer se vsakič, ko je doseženo določeno končno stanje, zgodi preskok. Preskok pa pomeni prehod v (v splošnem spremenjeno) začetno stanje v (v splošnem spremenjenem) dinamičnem sistemu. Splošni hibridni dinamični sistem H lahko formalno podamo, kot je zapisano v enačbi (2.2). H=[Q,£,A,G] (2.2) V enačbi (2.2) predstavlja Q množico indeksov, ki določajo zbirko dinamičnih sistemov. Te indekse imenujemo diskretna stanja hibridnega dinamičnega sistema. S = {Eg}geQ označuje zbirko dinamičnih sistemov (glej razdelek 2.1.1), ki sestavljajo hibridni dinamični sistem. Vsak Sg = [Xg, Tg, g] označuje en dinamični sistem, ki je označen z indeksom (diskretnim stanjem) q. V tem primeru predstavljajo Xq prostore zveznih stanj, (f)q zvezno dinamiko hibridnega dinamičnega sistema. 14 Uvod v modeliranje hibridnih sistemov za prediktivno vodenje A = {Aq}qeQ, pri čemer velja Aq C Xq za vsak q G Q, označuje zbirko množic samodejnih preskokov. G = {Gq}qeQ, pri čemer velja Gq : Aq -»■ UgeQXg x M, predstavlja zbirko /«ntoj samodejnih preskokov, ki opisujejo diskretno dinamiko hibridnega dinamičnega sistema. Glede na zgoraj zapisano lahko opišemo prostor stanj hibridnega dinamičnega sistema H, kot kaže enačba (2.3). S=\JXqx{q} (2.3) Primer delovanja hibridnega dinamičnega sistema H lahko opišemo na sledeč način. 1. Privzamemo, daje začetno stanje sistema s0 = (x0,q0) G S\A. 2. Dinamiko sistema v tem dinamičnem podsistemu določa funkcija dqn(x0,*r ),kjerje*r eTqn. 3. Če se zgodi, da stanje sistema zaide v podprostor Aqo, tj. v točko ši = (x^qo), sistem preskoči - glede na funkcijo preskokov Ggo(xi) = (xi,gi) -v novo stanje si = (xi,gi). 4. Dinamiko sistema v tem dinamičnem podsistemu določa funkcija daAxi^r ),kjerje*r G Tai itd. 2.1.3 Vodeni hibridni dinamični sistem V razdelku 2.1.2 smo obravnavali avtonomni splošni hibridni dinamični sistem, ki nima možnosti vpliva na dinamiko preko zunanjih vhodov. V primeru tovrstnih sistemov seveda ne moremo govoriti o vodenju, zato bomo v tem razdelku definicijo razširili na vodeni splošni hibridni dinamični sistem. 2.1 Splošna matematična formulacija 15 Vodeni splošni hibridni dinamični sistem Hv lahko torej formalno podamo, kot je zapisano v enačbi (2.4). #„ = [Q,£,A,G,V,C,F] (2.4) Pomen elementov Q in A, ki nastopata v zvezi s formulacijo vodenega splošnega hibridnega dinamičnega sistema, ki je podana v enačbi (2.4), je opisan v razdelku 2.1.2. S = {Eq}qeQ označuje zbirko vodenih dinamičnih sistemov (glej razdelek 2.1.1), ki sestavljajo vodeni hibridni dinamični sistem. Vsak Sg = [Xq, Tq, q, Uq] označuje en vodeni dinamični sistem, ki je označen z indeksom (diskretnim stanjem) q. V tem primeru predstavlja Uq množico za vodenje dinamičnega sistema Eq. Množica Uq določa parametrizacijo zvezne dinamike 4>q v posameznem dinamičnem podsistemu vodenega hibridnega dinamičnega sistema. G = {Gq}qeQ, pri čemer velja Gq : Aq x Vq ^ \Jq&QXq x {q}, predstavlja zbirko funkcij samodejnih preskokov. V tem primeru predstavlja V = {Vq}q&Q zbirko množic za vodenje samodejnih preskokov. Množica Vq določa parametrizacijo funkcij samodejnih preskokov Gq v posameznem dinamičnem podsistemu vodenega hibridnega dinamičnega sistema. C = {Cq}qeQ, pri čemer velja Cq C Xq, označuje zbirko množic vodenih preskokov. F = {Fq}qeQ, pri čemer velja Fq : Cq -»■ 2S pomeni zbirko funkcij vodenih preskokov. Primer delovanja vodenega hibridnega dinamičnega sistema Hv lahko opišemo na sledeč način. 1. Privzamemo, daje začetno stanje sistema s0 = (x0,q0) G S\A. 16 Uvod v modeliranje hibridnih sistemov za prediktivno vodenje 2. Dinamiko sistema v tem vodenem dinamičnem podsistemu določa funkcija O V enačbi (2.5) je x(t) zvezno stanje, £(i) pa označuje vektorsko polje, ki je v splošnem odvisno od zveznega stanja x(t) in diskretnih pojavov v hibridnem sistemu, v primeru vodenega hibridnega sistema pa tudi od vhoda u(t). Diskretne pojave, ki nastopajo v hibridnih sistemih, lahko razdelimo, kot je navedeno spodaj [40]: 1. samodejni preklopi; 2. samodejni skoki; 3. kontrolirani preklopi; 4. kontrolirani skoki. Navedene diskretne pojave bomo podrobneje opisali v nadaljevanju. 2.2.1 Samodejni preklopi Samodejni preklop je pojav, pri katerem se vektorsko polje £(•) nezvezno spremeni. To se zgodi takrat, ko zvezno stanje sistema x(-) doseže določen podprostor, kar sproži samodejni preklop. Primer hibridnega sistema s samodejnim preklopom Za primer vzemimo voziček z maso m, ki ga potiskamo s silo F (t) po poti x. Trenje in ostale morebitne izgube zanemarimo. Pot je ravna do točke xu nato pa se nadaljuje v hrib s konstantnim naklonskim kotom a. Gravitacijski pospešek označimo z g. 18 Uvod v modeliranje hibridnih sistemov za prediktivno vodenje Za voziček lahko zapišemo diferencialno enačbo, kot kaže (2.6). x{t) F (t) m F (t) m ; x < X\ g-sm(a) ; x > xx (2.6) 2.2.2 Samodejni skoki Samodejni skok je pojav, pri katerem se zvezno stanje x{-) nezvezno spremeni. To se zgodi takrat, ko zvezno stanje sistema x(-) doseže določen podprostor, kar sproži samodejni skok. Primer hibridnega sistema s samodejnim skokom Za primer vzemimo žogo z maso m, ki se odbija od vodoravnih tal pod vplivom gravitacije. Žogo spustimo z začetne višine nad tlemi x0, trenutno višino pa označimo z x. Gravitacijski pospešek označimo z g. Koeficient izgub pri odboju označimo z p G [0,1]. Zračni upor in ostale morebitne izgube zanemarimo. Za žogo lahko zapišemo diferencialni enačbi (2.7) in (2.8) ter pogoj za samodejni skok, kot kaže enačba (2.9). x(t) = v{t) (2.7) v = —g (2.8) x(t) = 0^v(t+) = -P-v(t-) za vsak t = t > 0 (2.9) _ 2.2 Prepletanje zvezneindiskretne dinamike 19 2.2.3 Kontrolirani preklopi Kontrolirani preklop je pojav, pri katerem se vektorsko polje £(•) nezvezno spremeni. To se zgodi kot odziv na vodenje, kar pomeni, da kontrolirani preklop sprožimo od zunaj z ustreznim vhodnim signalom. Primer hibridnega sistema s kontroliranim preklopom Za primer vzemimo model satelita z reakcijskimi motorji, ki skrbijo za regulacijo vrtenja satelita okrog lastne osi. Obravnavali bomo samo poenostavljen model v eni dimenziji. Z u označimo kotno hitrost, J pomeni vztrajnostni moment, T pa absolutno vrednost navora, ki ga povzročajo reakcijski motorji, ki so lahko uga-snjeni (m = 0), delujejo s polno močjo v pozitivni (m = 1) ali v negativni smeri (m = -1). Diskretni vhod m lahko torej zavzame 3 vrednosti m G {-1, 0,1}. Za satelit lahko zapišemo diferencialno enačbo, kot kaže (2.10). ü{t) = jm(t) (2.10) 2.2.4 Kontrolirani skoki Kontrolirani skok je pojav, pri katerem se zvezno stanje x(-) nezvezno spremeni. To se zgodi kot odziv na vodenje, kar pomeni, da kontrolirani skok sprožimo od zunaj z ustreznim vhodnim signalom. Primer hibridnega sistema s kontroliranim skokom Za primer vzemimo polnjenje posode s konstantnim presekom A. Nivo tekočine v posodi označimo s h. Posoda ima na dnu odtok, preko katerega se prazni s pretokom ven(t), ki je odvisen od nivoja tekočine v posodi. V posodo priteka tekočina s konstantnim dotokom (j)noter. Poleg tega v posodo v trenutkih n,r2,..., rn dolijemo polna vedra tekočine s konstantnim volumnom V. 20 Uvod v modeliranje hibridnih sistemov za prediktivno vodenje Za posodo lahko zapišemo diferencialno enačbo, kot kaže (2.11). h = ^ \(f>noter ~ (f>ven(t) + ^6(t ~ Tt) • V ] (2.11) V enačbi (2.11) označuje č(i - t*) Diracov impulz. 2.3 Pomembnejši prispevki k modeliranju hibridnih sistemov Splošna in poenotena teorija, ki bi celovito obravnavala hibridne sisteme in njihovo modeliranje, (še) ne obstaja, zato pa se v literaturi pojavljajo mnogi bolj ali manj uspešni poskusi formalizacije modeliranja hibridnih sistemov. Tako lahko naletimo na različne formulacije modelov v zveznem ali diskretnem času. Nekateri modeli samo delno zajemajo hibridno dinamiko (glej razdelka 2.1 in 2.2), nekateri pa so bolj celoviti. Nekateri so bolj primerni za simulacije, drugi za analizo, tretji pa so primerni za vodenje hibridnih sistemov. Vsekakor še vedno ne moremo govoriti o eni sami formulaciji modela hibridnega sistema, ki bi zadostil vsem potrebam. Prvi poskus zajema hibridne dinamike v enotnem modelu je objavil Witsen-hausen v [142] v šestdesetih letih prejšnjega stoletja. Kljub temu se je področje hibridnih sistemov začelo ponovno pospešeno razvijati šele sredi devetdesetih let prejšnjega stoletja. Glavni razlog za ponovno zanimanje so verjetno tehnične inovacije, posebno na področju vgrajenih sistemov. Njihova značilnost je, da je diskretno-logična naprava ”vgrajena”v zvezno dinamično okolje, pri čemer sta naprava in okolje medsebojno povezana in vplivata drug na drugega. Poleg tega so se šele v zadnjem času pojavili ustrezni programski paketi za simulacijo ter numerično in simbolično računanje, ki so omogočili teoretični napredek [21]. Spodaj izpostavljamo nekatere pomembnejše modele hibridnih sistemov, na katere v literaturi pogosteje naletimo [3, 77, 21, 74, 58, 70, 4, 2, 5, 6, 40]: 2.3 Pomembnejˇsi prispevki k modeliranju hibridnih sistemov 21 • Witsenhausnov model [142]; • Taverninijev model [134]; • Back-Guckenheimer-Myersov model [13]; • Nerode-Kohnov model [105]; • Antsaklis-Stiver-Lemonov model [8]; • Brockettov model [41]. 2.3.1 Witsenhausnov model Kot smo omenili, je bil prvi poskus zajema hibridne dinamike v enotnem modelu objavljen v [142]. To delo predstavlja zaˇcetek razvoja podroˇcja hibridnih sistemov kot samostojne veje v okviru teorije sistemov, zato bomo Witsenhousnov model tudi podrobneje opisali v tem razdelku. Witsenhausnov model opisuje razred sistemov, definiranih v zveznem ˇcasu, ki imajo deloma zvezno in deloma diskretno stanje, tj. hibridne sisteme v zveznem ˇcasu. Razred hibridnih sistemov, ki ga opisuje Witsenhasnov model, je omejen z naslednjimi pravili. 1. Pri preskoku, tj. v trenutku, v katerem se diskretno stanje sistema spremeni, mora ostati vektor zveznih stanj zvezen. To pomeni, da model ne obravnava nezveznih ponastavitev vektorja zveznih stanj, tj. skokov – glej razdelka 2.2.2 in 2.2.4 – ampak samo preklope. 2. Preskok se lahko zgodi ˇce in samo ˇce vektor zveznih stanj zadosti pogoju za doloˇcen preskok. To pomeni, da lahko z vhodnimi signali na preskoke vplivamo samo posredno, tj. preko diferencialnih enaˇcb. Model torej ne obravnava kontroliranih preklopov – glej razdelek 2.2.3. 22 Uvod v modeliranje hibridnih sistemov za prediktivno vodenje 3. Model ima tudi nekatere tehnične zahteve v zvezi s podatki, s katerimi sistem opisujemo. Witsenhausnov model izhaja iz opisa zveznega sistema, ki ga podaja enačba (2.12). x(t)= f(x(t),u(t)) (2.12) x(t) e Rn in u(t) e Rm Vpliv diskretnega dela na dinamiko vpelje z vključitvijo diskretnega stanja q(t), kot kaže enačba (2.13). x(t) = f(q(t),x(t),u(t)) (2.13) Hibridno stanje s Witsenhausnovega modela lahko opišemo s parom diskretnega stanja q in zveznega stanja x, kot kaže enačba (2.14). s=(q,x) (2.14) seS = QxRn Omenimo, da je množica diskretnih stanj Q C Z končna m(Q) < oo. Povezava dinamike v nasprotno smer pa je podana z opisom pogojev za zvezno stanje, pri katerih se zgodi sprememba diskretnega stanja. Preklop s stanja q = i naq = j(i^ j) se sproži, ko zvezno stanje x zaide v podmnožico preklopa Mitj C Rn. Za vsak urejen par indeksov diskretnih stanj i, j e Q obstaja podmnožica preklopa Mitj C Rn, ki pa je lahko tudi prazna. Enačba (2.15) določa množico prihodov. M+ = [JMhl (2.15) 2.3 Pomembnejˇsi prispevki k modeliranju hibridnih sistemov 23 Množica prihodov M+ je unija vseh vrednosti zveznega stanja x, ki predstavljajo pogoj za proženje preklopa diskretnega stanja v q = i, in sicer iz vseh ostalih diskretnih stanj q = j ^ i. Podobno je v enačbi (2.16) določena množica odhodov. Mt- = \jMitj (2.16) Množica odhodov M- je unija vseh vrednosti zveznega stanja x, ki predstavljajo pogoj za proženje preklopa iz diskretnega stanja q = iv katero koli drugo diskretno stanje q = j^i. Omenjene množice morajo izpolnjevati tri predpostavke, ki so navedene spodaj. 1. Za katere koli tri različne indekse i, j, keQ velja Mitj H Mi>k = 0. Ta predpostavka pomeni, da se ne more nikoli zgoditi, da bi bil naenkrat izpolnjen pogoj za preklop na dve ali več različnih diskretnih stanj. 2. Za vsak i G Q je množica M- zaprta v Wn. 3. Za vsak i G Q velja M- f| M+ = 0. Ta predpostavka zagotavlja, da se po preklopu diskretnega stanja ne more takoj zgoditi nov preklop na novo diskretno stanje. Na ta način so preprečene preklopovne zanke, tj. pojav, ko se v istem trenutku zgodi neskončno preklopov. Witsenhausnov model poleg tega predpostavlja, daje vsaka funkcija f(q, x, u) zvezna glede na (x,u) pri konstantnem q in zvezno odvedljiva glede na x pri konstantnem (q,u). Množica za vodenje je definirana, kot sledi. Naj bosta tf spremenljiv končni čas, tako da velja tf G [t0, oo), in Q C Rm zaprta množica. Vodenje predstavlja par [tf,u(-)], pri čemer je u(-) poljubna odsekoma zvezna funkcija na intervalu [to,tf], ki ima zalogo vrednosti v Q. 24 Uvod v modeliranje hibridnih sistemov za prediktivno vodenje Delovanje Witsenhausnovega hibridnega modela, od začetnega stanja s0 = (x0,q0) v času t0 do končnega stanja sf = (xf,qf) v času tf, lahko torej opišemo na sledeč način. 1. Privzamemo, da je začetno stanje sistema s0 = (x0, q0) G S. 2. Dinamiko sistema torej določa funkcija x(t) = f(qo,x(t),u(t)), kjer je x(t0) = xQ. V primeru, da trajektorija x ne doseže podprostora M0", ostane diskretno stanje q{t) = q0 nespremenjeno, in sicer vse do končnega časa tf. 3. Če se zgodi, da trajektorija x zaide v enega od podprostorov iz množice M~, recimo v Mqom. Denimo, da se to zgodi v točki xx v trenutku tx. Tedaj diskretno stanje preklopi s stare vrednosti q{t\) = q0 na novo q(tl) = qi. Definirajmo novo stanje sistema v trenutku tx: s (h) = (x^q^. Dodajmo, da mora veljati tx > t0, sicer bi kot začetno stanje morali obravnavati (x0,qi). 4. Velja torej xx G M+ in - glede na predpostavko v 3. točki - xx <£ M~. Zaradi tega lahko ponovimo prejšnje korake - s to razliko, da tokrat začnemo v stanju (xi,gi). Poleg tega lahko rečemo, da, če obstaja trenutek t2, v katerem se zgodi preklop diskretnega stanja, velja t2 > tx. Če torej rekurzivno uporabimo zgornja pravila, lahko dobimo enoličen potek stanj Witsenhausnovega modela hibridnega sistema [x(-),q(-)]. 2.4 Modeliranje hibridnih sistemov za prediktivno vodenje v diskretnem času Naˇcrtovanje prediktivnega vodenja hibridnih sistemov je zaradi prepletanja zvezne in diskretne dinamike zelo zahtevno in v literaturi lahko najdemo razliˇcne pristope. Veˇcina pristopov se omejuje na hibridne sisteme, ki jih modeliramo v 2.4 Modeliranje hibridnih sistemov za prediktivno vodenje v diskretnem ˇcasu 25 diskretnem času, saj se s tem izognemo več kompleksnim matematičnim problemov. V doktorski disertaciji se bomo torej podrobneje posvetili modelom hibridnih sistemov, ki so definirani v diskretnem času. Zvezne dinamične lastnosti sistemov, ki jih želimo opisati s tovrstnimi modeli, lahko opišemo z diferenčnimi enačbami, diskretne pa podajajo končni avtomati, oboji pa so sinhronizirani na isto uro, tj. diskretni časovni korak. Znano je, da lahko s primernim časom vzorčenja izgube pri opisovanju dinamike sistema, ki so posledica samega vzorčenja, pri večini aplikacij zanemarimo. Kljub temu pa lahko ugotovimo, da se nekateri zanimivi pojavi, ki so značilni za modele hibridnih sistemov, ki so definirani v zveznem času, v diskretnem času ne pojavijo. Takšen je na primer Zenonov fenomen [75]. Po drugi strani pa so takšni pojavi večinoma posledica preklopov v modelu, ki je definiran v zveznem času, in se v dejanskem realnem sistemu sicer sploh ne pojavljajo. Glavna prednost zapisov modelov v diskretnem času pa je njihova uporaba pri reševanju optimizacijskih problemov in ostalih matematičnih manipulacijah, ki bi bile v zveznem času precej bolj zahtevne, kar pa bi imelo za posledico precej večjo računsko zahtevnost algoritmov za vodenje in s tem tudi potrebo po bolj zmogljivi (dražji) strojni opremi. Zaradi tega bi lahko postali ti algoritmi v praksi povsem neuporabni. V naslednjih poglavjih drugega dela doktorske disertacije se bomo torej osredotočili na formulacije matematičnih modelov, ki so primerni za uporabo v pre-diktivnem vodenju hibridnih sistemov. 26 Uvod v modeliranje hibridnih sistemov za prediktivno vodenje 3. Šaržni reaktor Pristope modeliranja in vodenja, ki jih podrobneje obravnavamo v doktorski disertaciji, bomo preizkusili na simulacijskem primeru šaržnega reaktorja. V eksperimentih bo uporabljen model realnega šaržnega reaktorja, ki je postavljen v farmacevtskem podjetju v Sloveniji in se uporablja v proizvodnji zdravil. Cilj vodenja je regulacija temperature sestavin, ki se mešajo v jedru reaktorja, kjer nastaja končni produkt. Da bi dosegli ustrezno kakovost izhodnega produkta, moramo zagotoviti, da temperatura čim bolje sledi referenčni trajektoriji, ki je podana s predpisanim receptom. 3.1 Zgradba šaržnega reaktorja Na sliki 3.1 je prikazana shema šaržnega reaktorja. Jedro reaktorja (temperatura T) se segreva oz. ohlaja skozi plašč reaktorja (temperatura Tw). Toplotni medij v plašču je mešanica sveže vhodne vode, ki vstopa v reaktor skozi zaporna ventila, in povratne vode. Voda v plašču ima stalen pretok 0. Dinamika šaržnega reaktorja je odvisna od njegovih fizičnih lastnosti: mase m in specifične toplote c sestavin v jedru oz. plašču reaktorja (indeks w označuje plašč), koeficienta toplotne prevodnosti A, površine toplotnega stika S in konstantne temperature okolice T0. Tin označuje temperaturo sveže vhodne vode, TC oz. TH pa temperaturo hladne oz. vroče vhodne vode. kC in kH sta poziciji zapornih ventilov za hladno oz. vročo vhodno vodo, kM pa za mešalni ventil. 27 28 Saržni reaktor Te 2?^kc X"Hfe Tin Slika 3.1: Shema šaržnega reaktorja. OZNAKA POMEN kM položaj mešalnega ventila kC položaj zapornega ventila za hladno vodo kH položaj zapornega ventila za hladno vodo Tabela 3.1: Vhodi šaržnega reaktorja. OZNAKA POMEN T temperatura v jedru šaržnega reaktorja Tw temperatura v plašču šaržnega reaktorja To temperatura okolice Tabela 3.2: Izhodi šaržnega reaktorja. Temperatura sveže vhodne vode Tin je odvisna od dveh vhodov, tj. pozicije zapornih ventilov kH in kC. Mogoča sta dva načina delovanja: če je kC = 1 in kH = 0, je vhodna voda hladna (Tin = TC), če pa je kC = 0 in kH = 1, je vhodna 3.1 Zgradba šaržnega reaktorja 29 OZNAKA POMEN To temperatura okolice Tin temperatura sveže vhodne vode TC temperatura hladne vode TH temperatura vroče vode

cwTw- - \S(TW - T) - XqS0{Tw - T0) =kM(pcwTin - kM(pcwTw- - \S(TW - T) - \0So(Tw - T0) (3.2) _ 32 Šaržni reaktor 4. Odsekoma afini in ekvivalentni modeli V literaturi lahko najdemo veˇc razliˇcnih formulacij modelov, ki so primerni za uporabo pri prediktivnem vodenju hibridnih sistemov. Veˇcina dosedanjega razvoja na podroˇcju prediktivnega vodenja hibridnih sistemov je osnovana na odsekoma afinih (angl. piecewise affine – PWA) [129] in njim ekvivalentnih sistemih. 4.1 Odsekoma afinim sistemom ekvivalentne formulacije hibridnih sistemov V literaturi, ki obravnava hibridne sisteme (in tudi njihovo prediktivno vodenje), se veliko pozornosti posveˇca razliˇcnim formulacijam modelov, ki pa v osnovi na razliˇcne naˇcine opisujejo dinamiko hibridnih linearnih oz. afinih sistemov. Za nekatere od teh formulacij je dokazano [72, 18, 113], da jih je mogoˇce (pod doloˇcenimi v realnosti ne zelo omejujoˇcimi predpostavkami) medsebojno pretvarjati v druge formulacije modelov. To pomeni, da so vse te formulacije (v okviru predpostavk) medsebojno ekvivalentne. Sistemi, o katerih govorimo in jih bomo v nadaljevanju podrobneje opisali, so naˇsteti spodaj: • odsekoma afini sistemi (angl. piecewise affine – PWA) [129]; • linearni sistemi s komplementarnima spremenljivkama (angl. linear complementarity – LC) [73, 138]; 33 34 Odsekoma afini in ekvivalentni modeli • razširjeni linearni sistemi s komplementarnima spremenljivkama (angl. extended linear complementarity - ELC) [56, 57, 55]; • sistemi diskretnih dogodkov, ki jih modeliramo z operacijami določanja maksimuma in minimuma, seštevanja in skalarnega množenja (angl. max-mm-plus-scaling - MMPS) [57]; • mešani logično-dinamični sistemi (angl. mixed logical dynamical - MLD) [32]. Vsaka od teh formulacij ima svoje prednosti. Za odsekoma afine sisteme so bili predlagani stabilnostni kriteriji [76], za mešane logično-dinamične sisteme obstajajo pristopi za vodenje in verifikacijo [28, 32, 35], za linearne sisteme s komplementarnima spremenljivkama poznamo pogoje za obstoj in enoličnost trajektorij, ki predstavljajo rešitev sistema [73, 138], itd. Ekvivalentnost formulacij nam omogoča, da lahko nekatera orodja in pristope, ki so bili razviti za modeliranje, analizo ali vodenje sistemov, katerih dinamiko opisuje posamezna od naštetih formulacij modela, prenesemo in uporabimo tudi v okviru ene od tej formulaciji ekvivalentne formulacije. V nadaljevanju bomo vsako od omenjenih formulacij podrobneje opisali in navedli morebitne predpostavke, ki pogojujejo medsebojno pretvorbo. 4.1.1 Odsekoma afini sistemi Odsekoma afim sistemi [129] so sistemi, pri katerih lahko razdelimo prostor stanj in vhodov na podprostore. V vsakem podprostoru dinamiko opišemo z afinim sistemom. Odsekoma afini sistemi predstavljajo enega najpreprostejših zapisov, ki v zadostni meri posplošuje klasični zapis linearnega sistema v prostoru stanj - glej enačbo (4.1) - da lahko teoretično s poljubno natančnostjo opiše nelinearno di- 4.1 Odsekoma afinim sistemom ekvivalentne formulacije hibridnih sistemov 35 namiko in upošteva hibridne značilnosti procesa, zato se tudi pogosto pojavlja v literaturi. x(k + 1) = Ax(k) + Bulk) (4.1) y(k) = Cx(k) + Du(k) V enačbi (4.1) označuje x(k) G Rn stanje sistema, u{k) G Rm vhod v sistem, y(k) G Rl pa izhod sistema. S k je označen trenutni časovni korak sistema. Matrike A G Rnxn, B G Rnxm, C G Rlxn in D G Elxm določajo dinamiko linearnega sistema. Z razširitvijo zapisa linearnega sistema v diskretnem času, kot ga kaže enačba (4.1), lahko izpeljemo zapis odsekoma afinega sistema. Podajata ga enačbi (4.2) in (4.3). x(k + 1) = Aix(k) + Biu(k) + fi (4.2) y(k) = Cix(k) + Diu(k) + gi x(k) u(k) G ttt (4.3) V enaˇcbi (4.2) oznaˇcuje x(k) = [xz(k)T xb(k)T ] stanje sistema. Tu je xz(k) zvezni del stanja, xb(k) pa binarni del stanja sistema. Podobno velja za vhod v sistem u(k) = [uz(k)T ub(k)T ]. Tu je uz(k) zvezni del, ub(k) pa binarni del vhoda v sistem. Tudi izhod sistema y(k) = [yz(k)T yb(k)T ] je podobno definiran: yz(k) je zvezni del, yb(k) pa binarni del izhoda iz sistema. Matrike sistema Ai, Bi, Ci in Di ter vektorja fi in gi doloˇcajo afino dinamiko v posameznem podprostoru prostora stanj in vhodov, ki je oznaˇcen z indeksom i ∈ Z < ∞. Cˇe sta vektorja fi in gi enaka 0, govorimo o odsekoma linearnem sistemu. 36 Odsekoma afini in ekvivalentni modeli Ustrezne dimenzije matrik in vektorjev so določene v enačbah (4.4), (4.5) in (4.6). xz(k) eRn% xb(k) e{0,l}rafc uz(k) e Rm% ub(k) e {0, l}m» (4.4) yz(k)eRl% yb(k) e {0, l}*> At e (Rn* x {0, l}nb) x (Eraz x {0, l}nb) Bt e (Rn* x {0, l\nb) x (Emz x {0, l\mb) (4.5) Ct e (Rlz x {0, l}1») x (Rn* x {0, l}rafc) Di E (Rh x {0, l}h) x (Em* x {0, l}mb) fi e Rnz x {0, l}n" gt e Rl* x {0, l}1» (4.6) Posamezen podprostor Qt C (Rra* x {0, l}ra*) x (Em* x {0,1}™6) v enačbi (4.3) predstavlja konveksen polieder v prostoru stanj in vhodov. Vsak polieder je določen s sistemom neenačb v okviru prostora stanj in vhodov, kot kaže enačba (4.7). fti = x(-) u(-) HM-) + JM-) < Kt, ; > (4.7) + JM-) < Kt, Hix(-) + Jiu(-) < Ki V enačbi (4.7) označujejo Hh Jh Kt in Hh Jh kt matrike, ki določajo podprostor Qi. Število vrstic v matrikah ustreza številu neenačb, tj. številu ploskev, ki omejujejo podprostor Qt. Omenimo, da se v praksi zaradi numeričnih težav pri določanju poliedrov s sistemom neenačb znak < nadomesti z <. Poliedri so v tem primeru določeni, kot 4.1 Odsekoma afinim sistemom ekvivalentne formulacije hibridnih sistemov 37 kaže enačba (4.8), kjer e G E+ določa majhno pozitivno število, ki ga izberemo glede na numerično natančnost algoritma. fti = x(-) u(-) HM-) + JM-) < Kt, ; > (4-8) + JM-) < Kt, Hix(-) + Jiu(-) < Ki+e 4.1.2 Mešani logično-dinamični sistemi Mešam logično-dinamični sistemi [32] predstavljajo razred sistemov, v katerem je v formulaciji vključena logika, dinamika in omejitve. V zapisu torej nastopajo diferenčne enačbe, logična pravila ter omejitve in medsebojne povezave, ki so podane z izjavnim računom. Zapis mešanega logično-dinamičnega sistema v diskretnem času podajata enačbi (4.9), (4.10) in neenačba (4.11). x(k + 1) = Ax(k) + BlU(k) + B25(k) + B3z(k) (4.9) y(k) = Cx(k) + DlU{k) + D25(k) + D3z(k) (4.10) ElX{k) + E2u(k) + E35(k) + E4z(k) < g5 (4.11) V enačbah (4.9), (4.10) in neenačbi (4.11) označuje x(k) stanje sistema, u(k) vhod v sistem, y(k) pa izhod sistema. Vektorji so sestavljeni, kot je opisano v razdelku 4.1.1. Ustrezne dimenzije vektorjev so določene v enačbi (4.4). Vektorja z (k) in S (k) sta pomožni spremenljivki. Ustrezne dimenzije vektorjev so določene v enačbi (4.12). z(k) E Rrz (4.12) S (k) e{0,l}rfc 38 Odsekoma afini in ekvivalentni modeli S k je označen trenutni časovni korak sistema. Matrike sistema A, Bu B2, B3, Q, Du D2, D3, Eu E2, E3 in EA ter vektor g5 določajo dinamiko mešanega logično-dinamičnega sistema. Neenačbe, ki so podane v neenačbi (4.11), interpretiramo po posameznih komponentah. Privzamemo, da za vsako stanje x{k), vhod v sistem u{k) in pomožni spremenljivki z(k) in S (k), kot so definirani zgoraj in ki zadostujejo neenačbi (4.11), velja, da sta stanje v naslednjem časovnem koraku x(k+l) in izhod y(k), ki ju določata enačbi (4.9) in (4.10), taka, da drži xb(k + 1) G {0, l}n» in yb(k) G {0, l}1». Zgornjo trditev lahko privzamemo brez izgube splošnosti, saj lahko binarna dela stanja in izhoda sistema xb(k) in yb(k) (če sploh obstajata) obravnavamo tudi kot pomožne spremenljivke - glej dokaz v [28]. Če npr. binarni del izhoda sistema yb{k) G {0,1}^ ni ustrezno vključen v neenačbe (4.11), potem lahko uvedemo pomožno spremenljivko Sy(k) G {0, l}lb in neenačbe, kot jih podaja (4.13). \Cx(k) + DlU(k) + D26(k) + D3z(k)]b - 5 J k) < 0, (4.13) [-Cx(k) - DlU(k) - D26(k) - D3z(k)]b + Sy(k) < 0 Označitev [ ]b pomeni, da obravnavamo samo vrstice iz neenačbe (4.11), ki se nanašajo na binarni del izhoda sistema yb(k). Vključitev neenačbe (4.13) uvede torej izenačitev yb(k) = 5y(k) G {0, l}lK Na podoben način lahko uvedemo pomožne spremenljivke za binarni del vhoda sistema ub(k) in binarni del stanja sistema v naslednjem časovnem koraku xb(k + 4.1 Odsekoma afinim sistemom ekvivalentne formulacije hibridnih sistemov 39 4.1.3 Linearni sistemi s komplementarnima spremenljivkama Linearni sistemi s komplementarnima spremenljivkama [73, 138] vključujejo v formulacijo komplementarni spremenljivki. Zapis linearnega sistema s komplementarnima spremenljivkama v diskretnem času podajajo enačbe (4.14), (4.15), (4.16) in (4.17). x(k + 1) = Ax(k) + BlU(k) + B2w(k) (4.14) y(k) = Cx(k) + DlU(k) + D2w(k) (4.15) v {k) = ElX(k) + E2u{k) + E3w(k) + g4 (4.16) 0 < v{k)±w{k) > 0 (4.17) Vektorji in matrike, ki nastopajo v enačbah (4.14), (4.15), (4.16) in (4.17), so definirani podobno kot v razdelkih 4.1.1 oz. 4.1.2. Vektorja v (k) G Rs in w(k) e Rs imenujemo komplementarni spremenljivki in sta medsebojno pravokotna: v{k)±w{k), kar pomeni, da je v(k)T ■ w(k) = 0. 4.1.4 Razširjeni linearni sistemi s komplementarnima spremenljivkama Razširjeni linearni sistemi s komplementarnima spremenljivkama [56, 57, 55] lahko v diskretnem času podamo z enačbami (4.18), (4.19), (4.20) in (4.21). x(k + 1) = Ax(k) + BlU{k) + B2d(k) (4.18) y(k) = Cx(k) + D1u(k) + D2d(k) (4.19) 40 Odsekoma afini in ekvivalentni modeli ElX(k) + E2u{k) + E3d(k) < g4 (4.20) p j2 n (9* -Eix^ - E^k) - E^(k))i=° (4-21) Vektorji in matrike, ki nastopajo v enačbah (4.18), (4.19), (4.20) in (4.21), so definirani podobno kot v razdelkih 4.1.1 oz. 4.1.2. Vektor d(k) G W je pomožna spremenljivka. Pogoj v enačbi (4.21) lahko zapišemo, kot je podano v enačbi (4.22), saj velja pogoj v neenačbi (4.20). n^4 - ElX{k) - E2u(k) - E3d(k))3 = 0 Mi (4.22) zavsakze{l,2,...,p} To pomeni, da lahko neenačbo (4.20) in enačbo (4.21) obravnavamo kot sistem linearnih neenačb, ki ga razdelimo na p skupin linearnih neenačb, tj. po eno skupino za vsako množico <&, tako da je v vsaki skupini vsaj ena neenačba degenerirana v enačbo. 4.1.5 Sistemi diskretnih dogodkov, ki jih modeliramo z operacijami določanja maksimuma in minimuma, seštevanja in skalarnega množenja Sistemi diskretnih dogodkov, ki jih modeliramo z operacijami določanja maksimuma m minimuma, seštevanja m skalarnega množenja [57] predstavljajo še enega od mogočih zapisov hibridnih sistemov. Pri tem zapisu predstavljajo osnovo operacije za maksimizacijo, minimizacijo, seštevanje m skalarno množenje (angl. max-mm-plus-scaling expressions), ki jih 4.1 Odsekoma afinim sistemom ekvivalentne formulacije hibridnih sistemov 41 označimo s / in so definirane nad spremenljivkami xu x2,..., xn, kot kaže enačba (4.23). / := xt\a\max(fk, fi)\min{fk, fi)\fk + fi\ßfk kjer je i G {1, 2,..., n} (4.23) in a, ß e R V enačbi (4.23) sta tudi fk in ft operaciji za maksimizacijo, minimizacijo, seštevanje in skalarno množenje. Primer operacije za maksimizacijo, minimizacijo, seštevanje in skalarno množenje podaja enačba (4.24). 5xi - 3x2 + 7 + max(mm(2x1, -8x2),x2 - 3x3) (4.24) Zapis sistema diskretnih dogodkov, ki jih modeliramo z operacijami določanja maksimuma in minimuma, seštevanja in skalarnega množenja, v diskretnem času podajajo enačbe (4.25), (4.26) in (4.27). x(k + l) = Mx(x(k),u(k),d(k)) (4.25) y(k) = My(x(k),u(k),d(k)) (4.26) Mc(x(k),u(k),d(k)) 1). Regresijski vektor v tem primeru vsebuje vse vrednosti izhoda sistema v prejšnjih časovnih korakih y(k-l), ..., y(k-n+l), ki so potrebni za določitev napovedanega izhoda sistema v naslednjem časovnem koraku yp(k + 1). Če so ustrezna stanja sistema, ki nadomestijo zakasnjene izhode y(k -1), ..., y(k-n + 1), potrebne za izračun yp(k + 1), merljiva, je primerneje uporabiti več vzporednih ustreznih, a preprostejših, hibridnih mehkih (pod)modelov prvega reda. Algoritem za prediktivno vodenje te podmodele poganja vzporedno, kar nadomesti uporabo enega samega kompleksnejšega hibridnega mehkega modela n-tega reda. Če pristop s podmodeli prvega reda ni mogoč, je še vedno primerno uporabiti več podmodelov reda, ki je nižji od n. To pomeni, da je v splošnem v posameznem časovnem koraku smiselno uporabiti vse merljive signale sistema, ki ga modeliramo. Seveda pa zaradi nemerljivosti nekaterih stanj sistema tak pristop ni vedno mogoč. 58 Hibridni mehki model 5.3 Identifikacija hibridnega mehkega modela 5.3.1 Mehko rojenje Pri identifikaciji sistemov, ki jih želimo zapisati s hibridnim mehkim modelom, večkrat naletimo na težavo, da dinamike sistema ne poznamo dovolj dobro, da bi lahko določili ustrezne mehke množice AJ, ki nastopajo v premisi hibridnega mehkega modela. To pomeni, da ne poznamo niti ustreznih pripadnostnih funkcij, kar pa je predpogoj za ocenjevanje parametrov hibridnega mehkega modela. V takih primerih si lahko pomagamo z algoritmi mehkega rojenja, npr. z mehkim rojenjem c-središč (angl. fuzzy c-means clustering). Z mehkim rojenjem, ki ga izvajamo nad vhodno-zzhodnim prostorom hibridnega mehkega modela VVI, želimo podatke za identifikacijo razdeliti na več mehkih rojev. Vsak podatek za identifikacijo tako pripada posameznemu mehkemu roju z določeno stopnjo pripadnosti, ki se izračuna glede na razdaljo podatka za identifikacijo do središč posameznih mehkih rojev, ki jih algoritem določa v vsakem koraku sproti. Metoda mehkega rojenja c-središč temelji na minimizaciji kriterijske funkcije, ki jo podaja enačba (5.16). N C i=\ i=\ V enačbi (5.16) je m izbrano realno število, pri čemer mora veljati 1 < m < oo. N je število podatkov, C je število rojev, ^ je vrednost pripadnostne funkcije j-tega roja za i-tl podatek Xi. Cj označuje središče roja j, || • || pa normo, s katero je določena podobnost med središčem roja Cj in podatkom Xi. V praksi se najpogosteje uporablja evklidska norma, ki jo podaja enačba (5.17). 5.3 Identifikacija hibridnega mehkega modela 59 \\x\\ = VäF^x (5.17) Mehko rojenje se izvaja iterativno, pri čemer se v vsakem koraku sproti izračunavajo vrednosti pripadnostnih funkcij ßij} kot kaže enačba (5.18), in središča rojev Cj, kot kaže enačba (5.19). 1 ßij = ------------------- 2 ' pH-Cj\\\^^ fc=l \\xi-ck\\ C \\xi-cj\\ ^ k=l \\xi-ck\\ C pri čemer za vsak i G {1, ..., N} velja ^^ (5.18) i=i = z^=ia^—* (519) V enačbah (5.18) in (5.19) predstavlja i indeks posameznega podatka za identifikacijo, j in k pa označujeta indeks posameznega mehkega roja oz. njegovega središča. Vrednost parametra m določa mehkost oz. ostrost porazdelitve pripadnostnih funkcij v prostoru. Za skrajni primer m = 1 velja, da so pripadnostne funkcije, ki so definirane nad prostorom, degenerirane v ostre stopnje pripadnosti. Pripadnostne funkcije lahko torej v vsaki točki prostora zavzamejo samo eno od vrednosti ßtj G {0,1}. Iz enačbe (5.18) vidimo, da je ^ = 1, če je norma \\xi - Cj\\ za «-ti podatek za identifikacijo in središče j-tega roja najmanjša glede na vsa središča rojev. Za ostale roje pa velja ßik = 0, kjer je k G {1, 2,..., C}\j. Za drugo skrajnost, m = oo, pa velja, da so pripadnostne funkcije degenerirano zmehčane, kar pomeni, da so vrednosti pripadnostnih funkcij po vsem prostoru enake: ßtj = ±, in sicer za vsak j G {1, 2,..., C}. V praksi sta najpogosteje uporabljeni vrednosti za parameter m = 1,25 ali m = 2. Postopek mehkega rojenja c-središč je opisan v nadaljevanju. 1 _ 60 Hibridni mehki model 1. Izberemo število rojev C in parameter m ter določimo začetno matriko pripadnosti T(0) = [^]. 2. V fc-ti iteraciji določimo središča rojev Cj za j = 1, ..., C glede na T (k). 3. Določimo novo matriko pripadnosti T(fc + 1). 4. Če je ||T(fc + 1) - T(fc)|| < e, končamo postopek, sicer se vrnemo na 2. korak. 5.3.2 Projekcije mehkih rojev v vhodni prostor hibridnega mehkega modela Središča rojev (in ustrezne pripadnostne funkcije), ki so rezultat algoritma za mehko rojenje, so določena v vhodno-izhodnem prostoru hibridnega mehkega modela Vvi. Tako določene pripadnostne funkcije lahko neposredno uporabimo pri identifikaciji hibridnega mehkega modela, problem pa se pojavi pri uporabi hibridnega mehkega modela za predikcijo obnašanja sistema, in sicer pri določanju normiranih stopenj pripadnosti za posamezen roj ß(fc), kjer je j G {1, 2,..., C} - glej enačbo (5.12). Vrednosti pripadnostnih funkcij, kot jih določajo rezultati mehkega rojenja, so namreč odvisne od razdalj do središč posameznih rojev v vhodno-izhodnem prostoru hibridnega mehkega modela VVI - glej enačbo (5.18). Teh razdalj pa pri uporabi hibridnega mehkega modela za predikcijo obnašanja sistema ne poznamo, saj imamo opravka samo z vektorjem v vhodnem prostoru hibridnega mehkega modela Vv. Ker so pripadnostne funkcije določene z mehkim rojenjem v vhodno-izhodnem prostoru hibridnega mehkega modela VVI, moramo najti način, kako ustrezno preslikati informacijo o vrednosti pripadnostnih funkcij iz vhodno-izhodnega VVI v vhodni prostor hibridnega mehkega modela Vv, da bi ga lahko uporabljali za predikcijo obnašanja sistema. Kot kaže enačba (5.18), so vrednosti pripadnostnih funkcij ßtj odvisne od raz- 5.3 Identifikacija hibridnega mehkega modela 61 dalj točke do središč posameznih rojev v vhodno-izhodnem prostoru hibridnega mehkega modela VVI. Če torej poznamo te razdalje, lahko določimo tudi vrednosti pripadnostnih funkcij ^. Problem se torej poenostavi na projekcijo informacije o razdaljah do središč posameznih rojev iz vhodno-izhodnega VVI v vhodni prostor hibridnega mehkega modela Vv. Množice točk v vhodno-izhodnem prostoru hibridnega mehkega modela VVI, ki so enako oddaljene od izbrane točke - v našem primeru središča posameznega roja Cj - lahko, ob predpostavki, da velja enačba (5.17), geometrijsko predstavimo z obodom hiperkrogle s središčem v izbrani točki v vhodno-izhodnem prostoru hibridnega mehkega modela VVI, pri čemer radij krogle določa razdaljo do izbrane točke. Dimenzija hiperkrogle je določena z dimenzijo vhodno-izhodnega prostora Vvi, tj. s številom vhodnih in izhodnih spremenljivk hibridnega mehkega modela. Enačbe hiperkrogel v vhodno-izhodnem prostoru hibridnega mehkega modela Vvi podaja izraz (5.20). \x - Cj]T ■ \x - cA = r? = \\x-CjW2, 3 (5.20) kjer je j G {1, 2,... , C}. V enačbi (5.20) predstavlja vektor x točko v vhodno-izhodnem prostoru hibridnega mehkega modela VVI, ki pripada obodu hiperkrogle s središčem v točki, ki jo predstavlja vektor Cj. Radij hiperkrogle je enak evklidski normi Tj = \\x - Cj\\. Dimenzije vektorjev x oz. Cj so določene z dimenzijo vhodno-izhodnega prostora hibridnega mehkega modela VVI. Indeks j, kjer je j G {1,2,..., C}, določa indeks mehkega roja, ki ga trenutno obravnavamo. Kot je opisano v razdelku 5.2.2, je v hibridnem mehkem modelu za vsako pravilo Rjd definirana funkcija fjd. Če predpostavimo, da je funkcija fjd afina, kot kaže enačba (5.9), lahko rečemo, da nam predstavlja afini podmodel za primer, ko je ßj = 1 in ßk = 0, kjer velja k^j,teiq = d. Množice točk v vhodno-izhodnem prostoru hibridnega mehkega modela VVI, 62 Hibridni mehki model ki jih določa afina funkcija fjd, lahko geometrijsko predstavimo s hiperravnino v vhodno-izhodnem prostoru hibridnega mehkega modela VVI. Enačbe hiperravnin v vhodno-izhodnem prostoru hibridnega mehkega modela VVI podaja izraz (5.21). \x - Sif • Tli = 0, (5.21) kjer je j G {1, 2,... , C}. V enačbi (5.21) predstavlja vektor x točko v vhodno-izhodnem prostoru hibridnega mehkega modela VVI, ki pripada hiperravnini, ki jo določata poljubna točka s j, ki leži na hiperravnini, in vektor normale nj. Zaradi jasnosti lahko, ne da bi izgubili splošnost, predpostavimo, da je točka s j tista točka na hiperravnini (5.21), ki je najbližja središču roja Cj. V primeru, da središče roja Cj leži na hiperravnini (5.21), točki s j in Cj sovpadata. Tudi za izraz (5.21) velja, da so dimenzije vektorjev x, Sj in nj določene z dimenzijo vhodno-izhodnega prostora hibridnega mehkega modela VVI. Vektor x, ki je določen v vhodno-izhodnem prostoru hibridnega mehkega modela VVI, lahko razdelimo na komponente xv, ki so določene v vhodnem prostoru Vv, in komponento xI} ki je določena v izhodnem prostoru hibridnega mehkega modela VI} kot kaže enačba (5.22). x = xV xI (5.22) Pri uporabi hibridnega mehkega modela za predikcijo obnašanja sistema poznamo samo xv, ne pa tudi xI} kar pa je, kot bomo pokazali v nadaljevanju, rešljiva težava. Če predpostavimo, da je zj parameter, potem parametrizirani enačbi (5.20) in (5.21) določata v vhodno-izhodnem prostoru hibridnega mehkega modela VVI 5.3 Identifikacija hibridnega mehkega modela 63 konturo, ki predstavlja presečišče hiperkrogle (5.20) in hiperravnine (5.21). Ko obravnavamo obstoj konture, imamo tri možnosti. • Če je 0 < Tj < rj>min, potem ta kontura ne obstaja. • Če je Tj = rj>min, potem je ta kontura degenerirana v točko. • Če je rjtmin < Tj < oo, potem je ta kontura hiperkrožnica. V zgornjih pogojih označuje rjtmin minimalno vrednost parametra rj} ki zagotavlja obstoj presečiščne hiperkrožnice. Za nas je zanimiv tretji primer, ko je ta kontura hiperkrožnica. Tako določena hiperkrožnica predstavlja točke v vhodno-izhodnem prostoru hibridnega mehkega modela VVI, pri katerih je normirana razlika vektorjev enaka radiju hiperkrogle (5.20) \\x-Cj\\ = Tj, in ki hkrati pripadajo hiperravnini (5.21). Veljati mora torej izraz (5.23). 0 < rj>min < Tj < oo (5.23) Če središče hiperkrogle (5.20) Cj leži na hiperravnini (5.21), potem velja Tj,min = 0. Tako določeno hiperkrožnico lahko projiciramo v vhodni prostor hibridnega mehkega modela Vv in na ta način izpeljemo hiperelipso, ki določa točke v vhodnem prostoru hibridnega mehkega modela Vv, ki jim lahko pripišemo vrednost Tj. Enačbe hiperelips v vhodnem prostoru hibridnega mehkega modela Vv podaja izraz (5.24). [xv-Sjvf A- [xv-sjV] = rl J (5.24) kjer je j G {1, 2,..., C} in 0 < rjymin < Tj < oo. 64 Hibridni mehki model V izrazu (5.24) označuje xv točko v vhodnem prostoru hibridnega mehkega modela Vv, sj>v označuje središče hiperelipse v vhodnem prostoru hibridnega mehkega modela Vv, ki se ga določi s projekcijo točke s j iz vhodno-izhodnega prostora hibridnega mehkega modela VVI v vhodni prostor hibridnega mehkega modela Vv, kvadratna matrika ATj pa v geometrijskem smislu določa orientacijo in dolžine polosi hiperelipse. Različne vrednosti parametra Tj določajo različne hiperelipse v vhodnem prostoru hibridnega mehkega modela Vv, pri čemer mora seveda veljati izraz (5.23). Na opisani način lahko torej izpeljemo C funkcij, ki so definirane nad vhodnim prostorom hibridnega mehkega modela Vv in ki vsaki točki v prostoru xv priredijo vrednost rj(xv), in sicer za j G {1, 2,..., C}, kot podaja izraz (5.25). r3:Vv^ [rJ>mm,oo), Tj : Xv i—► rj(xv), (5.25) kjer je j G {1, 2,... , C}. Če poznamo funkcije rj(xv) za vsak j G {1, 2,..., C}, lahko izpeljemo pripa-dnostne funkcije, ki ustrezajo rezultatom mehkega rojenja in so definirane nad vhodnim prostorom hibridnega mehkega modela Vv in ki vsaki točki v prostoru xv priredijo vrednost ßj(xv), in sicer za j G {1, 2,..., C}, kot podaja izraz (5.26). 1 jJLj = ------------------------j) Efc=i \fk) (5.26) kjer je j G {1, 2,... , C}. Pripadnostne funkcije, ki so zapisane v izrazu (5.26), lahko neposredno implementiramo pri uporabi hibridnega mehkega modela za predikcijo obnašanja sistema - glej enačbo (5.10) - tj. pri določanju normiranih stopenj pripadnosti za posamezen roj ß3(k), kjer je j G {1, 2,..., C} - glej enačbo (5.12). 5.3 Identifikacija hibridnega mehkega modela 65 5.3.3 Globalni linearni model Hibridni mehki model s poenoteno strukturo posledičnega dela, ki je opisan v razdelku 5.2.3, lahko izrazimo kot globalni linearni model. Parametre, ki so odvisni od vhodnih signalov modela, lahko izpeljemo iz enačbe (5.14), kot kaže enačba (5.27). &(k) = &(k) ß(k) T (5.27) Ob tej predpostavki lahko zapišemo izhod hibridnega mehkega modela iz enačbe (5.10), kot ga podaja enačba (5.28). yp(k + l) = &(k)T ip(k) (5.28) 5.3.4 Priprava podatkov za ocenjevanje parametrov hibridnega mehkega modela Identifikacija hibridnega mehkega modela pomeni določitev njegovih parametrov aijd,...,anjd, bljd,...,bmjd in rjd, in sicer za vsako pravilo Rjd; j = 1,...,K in d = l,...,s. To pomeni, da moramo določiti elemente vseh matrik ®d - glej enačbo (5.14). Regresijsko matriko *jd v enačbi (5.29) za pravilo Rjd določimo iz vhodnih podatkov sistema. Indeks k teče od kx do kPjd, pri čemer Pjd označuje število vhodno-izhodnih parov, ki ustrezajo pravilu Rjd. V regresijski matriki so uporabljeni samo podatki, ki ustrezajo pogojema (5.30) in (5.31). S označuje majhno pozitivno število. Parametre modela izračunamo z inverzijo matrik, zato lahko pride do težav, če so matrike slabo pogojene. Pogoj v enačbi (5.31) zagotavlja dobro pogojenost matrik, kar pomeni, da se podatek upošteva samo v primeru, da je normirana stopnja pripadnosti ßj(k) ustrezno velika. 66 Hibridni mehki model *jd ß3(h) VT(fci) ßj(kpjd) ^T(kPjd) (5.29) q{k) = d (5.30) ßj{k) > 5 (5.31) Izhodna spremenljivka sistema je vključena v vektor izhodnih podatkov Yjd, ki ustreza pravilu Rjd, kot kaže enačba (5.32). Tudi v tem primeru velja, da so pri sestavljanju izhodnega vektorja podatkov Yjd uporabljeni samo podatki iz časovnih korakov (k + 1), ki ustrezajo pogojema v enačbah (5.30) in (5.31). Yjd ß3(h) y(h + 1) ßjikjyikpjd + l) (5.32) Del prispevka k izhodu hibridnega mehkega modela yfik + 1), ki se nanaša na pravilo Rjd, podaja enačba (5.33). ßi(k1)y3pd(k + l) = @Jd(ßi(h)ip(k)) (5.33) V enačbi (5.33) predstavlja vektor @jd tisti stolpec v matriki ®d, ki vsebuje parametre hibridnega mehkega modela, ki se nanašajo na pravilo Rjd, kot je zapisano v enačbi (5.34). _ _ ejd = [aljd ... anjd bljd ... bmjd r3d] (5.34) 5.3 Identifikacija hibridnega mehkega modela 67 5.3.5 Ocenjevanje parametrov hibridnega mehkega modela z modificirano metodo najmanjših kvadratov Glede na enačbe (5.29), (5.32) in (5.33) lahko parametre hibridnega mehkega modela, ki pripadajo posameznemu pravilu Rjd, ocenimo z modificirano metodo najmanjših kvadratov, kot opisuje enačba (5.35). ®jd = {VjaVjd^VjaVjd (5.35) Parametre hibridnega mehkega modela določimo z modificirano metodo najmanjših kvadratov za vsako pravilo Rjd (J = 1,...,K in d = l,...,s) posebej. Ko dobljene rezultate združimo, lahko končno zapišemo celoten hibridni mehki model. Za identifikacijo parametrov hibridnega mehkega modela uporabimo izmerjene vhodno-izhodne signale in modificirano identifikacijsko metodo najmanjših kvadratov. Pristop temelji na dekompoziciji matrike vhodno-izhodnih podatkov * v K ■ s podmatrik Vjd. Parametri se za vsako pravilo Rjd (j = 1,...,K in d=l,..., s) izračunajo posebej. Zaradi boljše pogojenosti podmatrik Vjd v primerjavi s celotno matriko * dobimo boljšo oceno parametrov hibridnega mehkega modela, tj. manjše variance ocen parametrov v primerjavi s klasičnim postopkom, znanim iz literature [10, 12, 130, 133]. Opisani pristop s trenutno linearizacijo sistema generira parametre globalnega linearnega modela (glej enačbo (5.27)). Parametri so odvisni od premise hibridnega mehkega modela, ki jo določajo spremenljivke q(k), y(k), ...,y(k-n + l) in u(k), ...,u(k - m + 1). Parametre globalnega linearnega modela bi lahko v algoritmu za prediktivno vodenje neposredno uporabili za napovedovanje obnašanja sistema, pri čemer bi se moral regulator seveda sproti prilagajati dinamičnim spremembam v procesu. 68 Hibridni mehki model 6. Primer postopka modeliranja in identifikacije odsekoma afinega modela Predstavili bomo postopek modeliranja in identifikacije odsekoma afinega modela, in sicer na primeru šaržnega reaktorja, ki je opisan v 3. poglavju. 6.1 Podatki za identifikacijo Za identifikacijo šaržnega reaktorja potrebujemo primerne vhodno-izhodne signale, iz katerih lahko ocenimo dinamične lastnosti sistema. Signale za identifikacijo tvorimo s psevdonaključnim vhodnim signalom, ki ga uporabimo na simulacij skem modelu šaržnega reaktorja,1 in posnetimi odzivi sistema na ta vhodni signal. Na vhode šaržnega reaktorja smo v vsakem časovnem koraku pripeljali vrednost, ki smo jo dobili iz psevdonaklj učnega generatorja, in sicer za mešalni ventil k m in ločeno za zaporna ventila kH in kc. Vhodni signali so imeli obliko stopničaste funkcije. Signal za mešalni ventil kM smo tvorili z uporabo mehanizma, ki preklaplja med psevdonaklj učno izbranimi vrednostmi v definicijskem območju kM ∈ {0;0,01;0,02;0,05;0,1;1} in zadržuje isto izbrano vrednost psevdonaključno število časovnih korakov. S podobnim psevdonaklj učnim mehanizmom smo tvorili tudi signala za zaporna ventila kH in kc, kjer velja (fcff, kc) ∈ {(0,1); (1, 0)}. Čas vzorčenja je bil Ts = 10 s. Vhodni signali morajo upoštevati celotno frekvenčno in amplitudno območje iMerjenim izhodom simulacijskega modela je bil dodan šum. 69 70 Primer postopka modeliranja in identifikacije odsekoma afinega modela sistema, ki nas zanima. Na ta način zagotovimo, da bomo z uporabo signalov za identifikacijo lahko izpeljali model, ki bo opisoval celotno dinamiko sistema. V našem primeru se v šaržnem reaktorju meša, greje in hladi granulat, iz katerega želimo dobiti homogeno zmes. V jedru ne potekajo ekso- ali endotermne reakcije. Zato lahko predpostavimo, da je sistem časovno nespremenljiv. Čas trajanja eksperimenta na šaržnem reaktorju, v katerem smo pridobili podatke za identifikacijo, je bil daljši od predvidenega časa za obdelavo ene šarže, vendar to zaradi prej navedenih razlogov ne vpliva na dinamične lastnosti šaržnega reaktorja. V podatke za identifikacijo smo zajeli odziv šaržnega reaktorja na psevdona-ključni vhodni signal: posneli smo oba merljiva izhoda, tj. temperaturo v jedru T in temperaturo v plašču šaržnega reaktorja Tw. Slika 6.1 prikazuje izhodna signala za identifikacijo T in Tw, na sliki 6.2 pa je prikazan še približan izsek poteka signalov. Slika 6.3 prikazuje vhodne signale za identifikacijo kM, kH in kC, na sliki 6.4 pa je prikazan še približan izsek poteka signalov. 6.2 Razdelitev sistema Model šaržnega reaktorja izpeljemo po korakih. • Najprej razstavimo multivariabilni sistem na dva preprostejša podsistema z več vhodi in enim izhodom. • Z upoštevanjem vpliva obeh izhodov na oba podsistema določimo strukturo podmodela za vsak podsistem posebej. Vsekakor bi bilo model možno konstruirati tudi brez predhodne razdelitve sistema na posamezne podsisteme. Ker pa parametre modela identificiramo z inverzijo matrik, bi lahko pri tem naleteli na numerične težave zaradi slabše 6.2 Razdelitev sistema 71 / .; ■; ■ ■ III j ill ::] iilh^M': i ; Ml ■ 1 I i ! : 1 J, IpN i '.■ ■: ; : 1 1 II ! f -: P y) ;"] ■ ■ :.■:■: : :l JlHf; :i :i i ;; f.V ', ■ ',. 1; :•■ -1 ' ' 7 : l|:ji : f 51 1 ; : - H:' ' n 1-1 i "1 : i'j ■ i ■ ■ i f! i ■■ ■:■ J : : 01 23456789 10 t[s] x 105 Slika 6.1: Temperatura v jedru T (polna črta) in plašču Tw (prekinjena črta) šaržnega reaktorja. pogojenosti matrik, ki nastopajo pri identifikaciji. Poleg tega bi morali v tem primeru naenkrat ocenjevati večje število parametrov - tj. matriko parametrov 0 ustrezno večje dimenzije - to pa bi se nujno pokazalo v slabših rezultatih identifikacije. Zaradi tega je seveda smiselno uporabiti predlagano razdelitev sistema in na ta način obravnavati poenostavljeno strukturo hibridnega mehkega modela. Tako se izognemo morebitnim numeričnim težavam pri ocenjevanju parametrov modela. Glede na razdelitev toplotnih tokov, ki nastopajo v šaržnem reaktorju (glej razdelek 3.2), lahko sistem razdelimo na dva podsistema: • temperatura v jedru šaržnega reaktorja; • temperatura v plašču šaržnega reaktorja. 72 Primer postopka modeliranja in identifikacije odsekoma afinega modela 70 h 60 / '\ /; V. / : / . 1 ^ ^;....."1 50 ■ ■ j ' ■ \ : \ /M \\ 1 I : \ • A 40 \ ■/ '"": v ■ \ \7 ■ \ ■ v/ ■ \ '' ■ \ 30 ' \ 20 '. \ 4 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 5 t [s] x 10 Slika 6.2: Temperatura v jedru T (polna črta) in plašču Tw (prekinjena črta) šaržnega reaktorja - izsek. Na ta način izkoristimo predhodno poznavanje strukture sistema: v procesu modeliranja torej identificiramo sivo škatlo, kar predstavlja neke vrste srednjo pot med identifikacijo črne škatle in popolnoma teoretičnim modeliranjem. 6.3 Temperatura v jedru šaržnega reaktorja 6.3.1 Struktura modela Temperatura v jedru reaktorja T je odvisna samo od pretoka toplote med jedrom in plaščem reaktorja, ki je odvisen od temperature v plašču Tw in jedru T šaržnega reaktorja. Predpostavimo lahko model z več vhodi in enim izhodom, kot kaže enačba 6.3 Temperatura v jedru šaržnega reaktorja 73 1 23456789 10 x 10 1 23456789 10 x 10 5 1 2 3 456 t [s] 7 8 9 10 5 x 10 Slika 6.3: Vhodni signali kM, kH in kC. (6.1). Regresor je sestavljen iz temperature v plašču Tw(k) in jedru T (k) šaržnega reaktorja v trenutnem časovnem koraku k. f(k + l) = f(Tw(k),T(k)) (6.1) Predpostavimo lahko, da je toplotni tok proporcionalen temperaturni razliki med plaščem Tw in jedrom T šaržnega reaktorja, zato lahko zapišemo linearni model prvega reda, kot kaže enačba (6.2). 1 0.5 0 1 0.5 0 1 0.5 0 f(k + l) = 0T[T w (k) T(k)f (6.2) 74 Primer postopka modeliranja in identifikacije odsekoma afinega modela 1 0.5 0 i 4 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 5 5 x 10 1 0.5 0 4 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 5 5 x 10 1 0.5 0 4 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 5 t [s] x 10 Slika 6.4: Vhodni signali kM, kH in kC – izsek. 6.3.2 Parametri modela Po identifikaciji parametrov z metodo najmanjših kvadratov dobimo rezultat 0 glej enačbo (6.3). 0 = [0.0033 0.9967]T (6.3) 6.4 Temperatura v plašču šaržnega reaktorja Temperatura v plašču reaktorja Tw je odvisna od pretoka toplote med plaščem reaktorja in jedrom ter med plaščem reaktorja in okolico, upoštevati pa moramo tudi pretok toplote zaradi dotoka sveže vhodne vode in iztoka vode iz plašča. 6.4 Temperatura v plašču šaržnega reaktorja 75 Predpostavimo lahko model z več vhodi in enim izhodom, kot kaže enačba (6.4). Regresor je sestavljen iz temperature v plašču Tw(k) in jedru T (k) šaržnega reaktorja ter vhodnih signalov, in sicer mešalnega ventila kM(k) ter zapornih ventilov za vročo vodo kH(k) in za hladno vodo kc(k), v trenutnem časovnem koraku k. fw(k + 1) = F(Tw(k),T(k),kM(k),kc(k),kH(k)) (6.4) Dinamika podsistema temperature v plašču šaržnega reaktorja Tw izkazuje tako hibridne kot nelinearne lastnosti, ki jih bomo predstavili z odsekoma afinim modelom. Pri modeliranju odsekoma afinega sistema je prvi korak razdelitev vhodnega prostora modela na ustrezne podprostore (konveksne poliedre), v katerih je dinamika sistema aproksimirana z lokalnim afinim modelom - glej razdelek 4.1.1. V okviru posameznega podprostora nato izvedemo identifikacijo parametrov, z dobljenimi rezultati pa lahko sestavimo celoten odsekoma afini model. 6.4.1 Odsekoma afini model - 1. pristop Razdelitev vhodnega prostora modela Vhodni prostor modela (6.4) V[TwtTtkMtkCtkH]T v sistemu, ki opisuje temperaturo v plašču šaržnega reaktorja Tw, določa definicijsko območje spremenljivk Tw, T, kM, kc in kH in je podan v enačbi (6.5). V[Tw,T,kM,kc,kH]T =^2x [0,1] x {(0,1), (1, 0)} (6.5) Prva in očitna delitev vhodnega prostora modela (6.4) V[TwtT>kMtkc>kH]T na podprostore je gotovo glede na način delovanja, tj. glede na položaj zapornih ventilov. 76 Primer postopka modeliranja in identifikacije odsekoma afinega modela • Prvi način delovanja je, ko je sveža vhodna voda vroča, tj. Tin = TH oz. kc{k) = 0 in kH(k) = 1. • Drugi način delovanja je, ko je sveža vhodna voda hladna, tj. Tin = Tc oz. kc(k) = 1 in kH(k) = 0. V naslednjem koraku moramo vhodni prostor modela (6.4) V[Tw^kMtkCtkll]T dodatno razdeliti tako, da bo končni odsekoma afini model z uporabo več afi-nih modelov v posameznih podpodročjih zaobjel nelinearno dinamiko v sistemu. Prostor torej dodatno segmentiramo glede na temperaturo v plašču reaktorja Tw(k). Privzamemo, da so središča ustreznih podprostorov pri naslednjih vrednostih temperature v plašču reaktorja Tw(k): 12 °C, 20 °C, 40 °C, 60 °C in 70 °C. Na ta način smo zajeli celotno območje delovanja. Meje med posameznimi podprostori določimo na simetrali ustreznih središč: 16 °C, 30 °C, 50 °C in 65 °C. Delitev vhodnega prostora modela (6.4) podaja enačba (6.6). 6.4 Temperatura v plašču šaržnega reaktorja 77 [Tw(k), T(k), kM(k), kC(k), kH(k)]T ∈ ft1; če velja ^2; če velja ^3; če velja Q4; če velja Q5; če velja Q6; če velja Q7; če velja ^8; če velja Q9; če velja ft10; če velja Omenimo, da oblika zapisa v spodnji enačbi ni povsem identična splošnemu zapisu segmentacije prostora na konveksne poliedre, kot ga podaja enačba (4.7), ampak je nekoliko bolj kompaktna. Kljub temu pa je mogoče zapis v enačbi (6.6) brez težav pretvoriti v zapis v enačbi (4.7). Poleg tega lahko opazimo, da so podprostori Q1} Q5, Q6 in Q10 v eno smer neomejeni. V praksi to pomeni, da jih omejimo pri ustrezno veliki oz. majhni vrednosti temperature v plašču reaktorja Tw(k). Slika 6.5 grafično prikazuje razdelitev vhodnega prostora modela (6.4). Ker zaporna ventila kc in kH naenkrat ne moreta zavzeti iste vrednosti, veljata enačbi (6.7) in (6.8). Zato lahko rečemo, da je vhodni prostor modela (6.4) V[Tw,T,kM,kc,kH]T ustrezno razdeljen na konveksne poliedre, ki so osnova za zapis modela v obliki odsekoma afinega sistema. Tw(k) < 16 °C A kc(k) = 0 A kH(k) = 1 16 °C < Tw(k) < 30 °C A kc(k) = 0 /\ kH(k) = 1 30 °C < Tw(k) < 50 °C A kc(k) = 0 /\ kH(k) = 1 50 °C < Tw(k) < 65 °C A kc(k) = 0 A kH(k) = 1 65 °C < Tw °C A kc = 0 A kH = 1 Tw(k) < 16 °C A kc(k) = 1 A kH(k) = 0 16 °C < Tw(k) < 30 °C A kc(k) = 1 A k h (k) = 0 30 °C < Tw(k) < 50 °C A kc(k) = 1 A kH(k) = 0 50 °C < Tw(k) < 65 °C A kc(k) = 1 A k h {k) = 0 65 °C < Tw(k) °C kc(k) = 1 M*0 = ° 78 Primer postopka modeliranja in identifikacije odsekoma afinega modela k_H = 1, & Qn Q, G ^c 1 2 3 4 5 k_C = 0 k_H = 0, ^ Q ^ ^n ^ 6 7 8 9 10 k_C = 1 16 30 50 65 Tw [o C] Slika 6.5: Delitev vhodnega prostora modela (6.4). Sli p| fy = 0; zavsaki,j e{l,...,10}in^j (6.7) 10 \Jni = v[TwtTtkMtkCtkH]T i=1 Lokalni afini modeli (6.8) Za vsak podprostor Qt vhodnega prostora modela (6.4) ^,T^fe^F, ki smo ga določili v prejšnjem razdelku, lahko zapišemo lokalni afini model, kot ga podaja enačba (6.9). 6.4 Temperatura v plašču šaržnega reaktorja 79 Tw(k + 1) = AiTw(k) + Bi za[Tw,T,kM,kC,kH]TeQi T(k) kM(k) + fi (6.9) Omenimo nekatere posebnosti oz. razlike glede na enačbi (4.2) in (4.3), ki se pojavijo v enačbi (6.9) in so vezane na konkretni primer. • V enačbi (6.9) ni izhodnega dela, ki ga formulacija odsekoma afinega modela vsebuje - glej enačbo (4.2). Ker stanje sistema že samo po sebi predstavlja tudi izhod sistema (y(k) = x(k) = Tw(k)), zapis izhodnega dela ni smiseln. Kljub temu lahko podamo: Ci = 1, Di = 0 in gi = 0 za vsak Qi} kjer je ie{l,...,10}. • Vektor vhodov v sistem [T(k),kM(k),kC(k),kH(k)]T je v enačbi (6.9) skrčen na [T(k),kM(k)]T, saj položaj zapornih ventilov kC(k) in kH(k) vpliva samo na določitev trenutnega podprostora Qi} v katerem se sistem nahaja v časovnem koraku k. • Razdelitev vhodnega prostora modela (6.4) V[Tw,t,km,kc,kh]t na podprostore a določa enačba (6.6). Parametri modela Podatke za identifikacijo, ki smo jih dobili, kot je opisano v razdelku 6.1, pred ocenjevanjem parametrov razdelimo glede na razdelitev vhodnega prostora modela (6.4) V[Tw,T,kM,kC,kH]T na podprostore Qi} ki jo določa enačba (6.6). Parametre ocenimo s klasično metodo najmanjše vsote kvadratov odstopanj za vsak podprostor ^ posebej. Parametri odsekoma afinega modela, ki nastopajo v enačbi (6.9), so podani v enačbi (6.10). 80 Primer postopka modeliranja in identifikacije odsekoma afinega modela Ωi : Ax = 0,8525; Bx = Ω2: A2 = 1,0626; B2 = Ω3: A3 = 1,0168; B3 = Ω4 : A4 = 0, 9505; B4 = Ω5: A5 = 0, 7438; B5 = Ω6: A6 = 0, 9750; B6 = Ω7 : A7 = 0,9991; ß7 = Ωg : ^s = 0, 9879; B8 = Ω9: A9 = 0, 7579; B9 = Ω10 : A10 = -171,3926; [0,3597 -10,7342]; /x = -3,1043 [-0,0624 -17,2953]; /2 = 0,0564 [-0,0159 -3,7872]; /3 = 0,0283 [0,0144 1,5736]; /4 = 1,8701 [0,0266 1,7284]; /5 = 15,1342 [0,0025 -0,0666]; /6 = 0, 3388 [0,0024 0,0827]; /7 = 0,0773 [0,0163 4,4435]; /8 = 0,9739 [0,1571 9,9894]; /9 = 1,5204 Bw = [18,6703, -2030,58]; /10 = 9805,72 (6.10) 6.4.2 Odsekoma afini model – 2. pristop Postopek modeliranja Pri modeliranju odsekoma afinega modela z 2. pristopom postopamo popolnoma enako, kot pri 1. pristopu, ki je opisan v razdelku 6.4.1. Vhodni prostor modela (6.4) D[Tw,T,kM,kC,kH]T je torej razdeljen na podprostore Ωi, ki jih doloˇca enaˇcba (6.6), odsekoma afini model pa podaja enaˇcba (6.9). Edina razlika med pristopoma je v ocenjevanju parametrov modela. Parametri modela Podatke za identifikacijo smo dobili, kot je opisano v razdelku 6.1. Pri prejˇsnjem pristopu smo podatke pred ocenjevanjem parametrov razdelili glede na razdelitev vhodnega prostora modela (6.4) V{Tw,T,kM,kC,kH]T na podprostore Ωi, ki jih doloˇca enaˇcba (6.6), in jih ocenili s klasiˇcno metodo najmanjˇse vsote kvadratov odstopanj za vsak podprostor Ω i posebej. 6.4 Temperatura v plašču šaržnega reaktorja 81 Pri opisanem pristopu se pojavi problem porazdelitve podatkov za identifikacijo v posameznem podprostoru: podatki z roba podprostora vplivajo na oceno enako kot podatki s sredine podprostora. Ker podatki v sploˇsnem niso enakomerno porazdeljeni po posameznem podprostoru, lahko za take podprostore dobimo neustrezne ocene parametrov. Poleg tega lahko problem predstavlja tudi ˇstevilo identifikacijskih podatkov, ki pripadajo posameznemu podprostoru: ˇce posameznemu podprostoru pripada premalo identifikacijskih podatkov, bo ocena podmodela za ta podprostor slaba ali pa je celo sploh ne bomo mogli doloˇciti. Pri 2. pristopu bomo zato za identifikacijo parametrov uporabili metodo, ki je opisana v razdelkih 5.3.4 in 5.3.5 ter se naslanja na teorijo mehkih sistemov. Ista metoda je uporabna tudi za identifikacijo hibridnega mehkega modela. Za konkreten primer identifikacije modela temperature v plaˇsˇcu ˇsarˇznega reaktorja Tw je metoda podrobno opisana v razdelku 7.4. Parametre odsekoma afinega modela, ki nastopajo v enaˇcbi (6.9), smo torej za odsekoma afini model prilagodili iz zapisa hibridnega mehkega modela – glej razdelek 7.4 ter enaˇcbi (7.8) in (7.9). Podani so v enaˇcbi (6.11). Ωi : Ai = 0,9453; Bx = Ω2 : A2 = 0,9431; S2 = Ω3 : A3 = 0,9429; B3 = Ω4 : A4 = 0,9429; B4 = Ω5 : A5 = 0,7910; S5 = Ω6 : A> = 0,9803; S6 = Ω7: A7 = 0,9740; B7 = Ω8 : A = 0,9322; B8 = Ω9 : A9 = 0,9076; S9 = Ωio : Aio = 0,8945; #i0 [0,0376 19,6748]; fx = 0, 3021 [0,0458 16,7605]; /2 = 0, 2160 [0,0395 10,5969]; /3 = 0,5273 [0,0339 3,9536]; /4 = 1,2701 [0,0225 1,6856]; /5 = 12, 0404 [0,0025 -0,0704]; /6 = 0,2707 [0,0153 -0,6956]; /7 = 0,2033 [0,0466 -7,8013]; /8 = 0,5650 [0,0446 -12,2555]; /9 = 1,9179 = [0,0111 -18,7457]; /10 = 5,6129 (6.11) 82 Primer postopka modeliranja in identifikacije odsekoma afinega modela 6.4.3 Odsekoma afini model - 3. pristop Razdelitev vhodnega prostora modela Vhodni prostor modela (6.4) V[TwtTtkMtkCtkH]T v sistemu, ki opisuje temperaturo v plašču šaržnega reaktorja Tw, določa definicijsko območje spremenljivk Tw, T, kM, kc in kH in je podan v enačbi (6.5). Kot pri pristopih v razdelkih 6.4.1 in 6.4.2 je tudi pri tem pristopu prva in očitna delitev vhodnega prostora modela (6.4)D[Tro)T)fcM)fcC)fcffF na podprostore glede na način delovanja, tj. glede na položaj zapornih ventilov. • Prvi način delovanja je, ko je sveža vhodna voda vroča, tj. Tin = TH oz. kc(k) = 0 in kH(k) = 1. • Drugi način delovanja je, ko je sveža vhodna voda hladna, tj. Tin = Tc oz. kc(k) = 1 in kH(k) = 0. V naslednjem koraku moramo vhodni prostor modela (6.4) V[Tw>TtkMtkc>kH]T dodatno razdeliti tako, da bo končni odsekoma afini model z uporabo več afinih modelov v posameznih podpodročjih zaobjel nelinearno dinamiko v sistemu. V tem primeru za vsak način delovanja preostanek vhodnega prostora modela (6.4) V{Tw,T,kM}T razdelimo na za opis nelinearne dinamike čim bolj ustrezne konveksne poliedre, pri čemer moramo zajeti celotno območje delovanja, tj. celoten preostanek vhodnega prostora modela (QA)V[TwtT>kM]T. Vsak konveksni polieder bo omejil podprostor, v katerem bomo dinamiko opisali z odsekoma afinim modelom. Mehko rojenje K segmentaciji preostanka vhodnega prostora modela (6.4) V[Tw>T>kM]T pristopimo z metodo mehkega rojenja c-središč (angl. fuzzy c-means clustering) - za podrobnejši opis glej tudi razdelek 5.3. 6.4 Temperatura v plašču šaržnega reaktorja 83 Z rojenjem, ki ga izvajamo nad prostorom vhodnih in izhodnih spremenljivk modela (6.4), želimo podatke za identifikacijo razdeliti na več mehkih rojev, tako da vsak podatek za identifikacijo pripada posameznemu mehkemu roju z določeno stopnjo pripadnosti, ki je odvisna od razdalj do središč posameznih mehkih rojev. Vsak roj želimo v končni fazi predstaviti z afinim podmodelom, območje delovanja posameznega podmodela pa v prostoru vhodnih spremenljivk modela (6.4) omejiti s konveksnimi poliedri. Pred rojenjem podatke za identifikacijo normiramo, tj. skaliramo njihove vrednosti tako, da so njihove preslikave v intervalu [0,1]. Prostor, nad katerim izvajamo rojenje, lahko torej zapišemo v enačbi (6.12). V[fw(T),f(T),kM(T)]T X Vfw(r+l) = [0, i]' (6-12) Označba " nad spremenljivko pomeni, da se zapis nanaša na normirani prostor. V našem primeru smo pri mehkem rojenju uporabili vrednost parametra m = 1,25. Z rojenjem razdelimo podatke za identifikacijo glede na vhodne spremenljivke podmodela Tw(r), T (t) in kM(r) ter izhodno spremenljivko Tw(r + 1) na mehke roje. Indeks r tu označuje časovni korak posameznega podatka za identifikacijo. Z algoritmom za rojenje določimo tudi središča mehkih rojev v normiranem prostoru (6.12) čj} kjer je j G {1, 2,..., C}, in vsaki točki iz množice podatkov za identifikacijo pripišemo ustrezne vrednosti pripadnostnih funkcij. Za vsak način delovanja sistema določimo po C rojev. Projekcije srediˇsˇc mehkih rojev v vhodni prostor modela in pretvorba v originalne koordinate Središča rojev (in ustrezne pripadnostne funkcije), ki so rezultat algoritma za mehko rojenje, so določena v normiranem vhodno-izhodnem prostoru modela, ki 84 Primer postopka modeliranja in identifikacije odsekoma afinega modela ga podaja izraz (6.12). Tako določene pripadnostne funkcije lahko neposredno uporabimo pri identifikaciji odsekoma afinega modela, problem pa se pojavi pri uporabi odsekoma afinega modela za predikcijo obnašanja sistema. V naslednjem koraku moramo torej središča rojev projicirati v vhodni prostor modela (6.4) V[fw>f^M)]T. Središča rojev, določena v normiranem vhodnem prostoru modela, so za primer C = 5 podana v enačbi (6.13). Enačba podaja rezultate obeh rojenj: • središča rojev od cx do c5 za prvi način delovanja (kc = 0 in kH = 1); • središča rojev od c6 do cw za drugi način delovanja (kc = 1 in fcH = 0). či = [0,9495 0,5507 1,0000] c2 = [0,4880 0,4765 0,0305] č3 = [0,6715 0,6935 0,0500] č4 = [0,1148 0,0980 0,0053] č5 = [0,3180 0,2655 0,0218] (6.13) c6 = [0,3718 0,5257 0,0328] c7= [0,2180 0,2939 0,0279] c8 = [0,0818 0,1010 0,0412] c9 = [0,0147 0,1273 1,0000] čio = [0,0562 0,4671 1,0000] Razmejitvene hiperravnine Glede na rezultate rojenja lahko določimo delitev vhodnega prostora odsekoma afinega modela (6.4) V[TwtT>kM]T. Prostor razdelimo na konveksne poliedre, ki jih 6.4 Temperatura v plašču šaržnega reaktorja 85 določajo razmejitvene hiperravnine.2 Za vsak par podprostorov Qt in fy lahko določimo razmejitveno hiperravnino, kot jo podaja enačba (6.14). (x - šij) ■ TU, = 0 (6.14) V enačbi (6.14) pomeni x krajevni vektor splošne točke v normiranem prostoru stanj in vhodov, ki pripada razmejitveni hiperravnini, s^ določa poljubno točko na razmejitveni hiperravnini, n^ pa je normala razmejitvene hiperravnine. Zaradi jasnosti lahko, ne da bi izgubili splošnost, predpostavimo, da je točka % tista točka na razmejitveni hiperravnini (6.14), ki leži na premici skozi središči «-tega in j-tega roja Q in 9. Točko Sij in vektor n^ lahko določimo iz središč rojev, kot kažeta enačbi (6.15) in (6.16). >J 2 ^. = ^.-^ (6.16) Če v enačbi (6.14) znak = zamenjamo z znakom < oz. >, dobimo neenačbo, ki določa hiperpolprostor, ki mu pripada središče roja č* oz. čj. Oba hiperpol-prostora ločuje razmejitvena hiperravnina. Na ta način razdelimo hiperprostor -za vsak par (i, j), kjer sta i, j G {1, 2,..., C} - na pare hiperpolprostorov. Pri tem velja, da enemu hiperpolprostoru pripadajo vse tiste točke hiperprostora, ki so bližje enemu od središč. Omenimo, da so razmejitvene hiperravnine v enačbah (6.14), (6.15) in (6.16) določene v normiranem vhodnem prostoru Vp^f^T- 2Glede na to, da imamo v našem primeru opravka z razdelitvijo trirazsežnega vhodnega prostora V[TivjTjkM]T, so tudi razmejitvene hiperravnine definirane v treh dimenzijah. 86 Primer postopka modeliranja in identifikacije odsekoma afinega modela Normiranje je preslikava, ki točko iz originalnega koordinatnega sistema V{Tw,T,kM]T preslika v točko v normiranem prostoru V[fw>f^M]T. V našem primeru gre za afino preslikavo, tj. kompozitum linearne transformacije in translate, zato lahko krajevne vektorje posameznih točk v originalnih koordinatah preprosto določimo z inverznim normiranjem, ki ga ni težko izpeljati. Pozoren pa je treba biti pri pretvorbi enačb (6.14) in (6.16). Ortogonalnost - tj. skalami produkt, s katerim so določene razmejitvene hiperravnine v enačbi (6.14) - se namreč pri afinih preslikavah v splošnem ne ohranja. Ob upoštevanju tega dejstva pa lahko končni rezultat razdelitve vhodnega prostora modela (6.4) vseeno zapišemo v koordinatah originalnega prostora V[TwtT>kM]T. Razdelitev prostora V{TwtTtkMtkCtkH]T na konveksne poliedre Qt torej podaja enačba (6.17). [Tw(k),T(k),kM(k),kc(k),kH(k)]T E nt; HtT,Jk) + Jt[T(k),kM(k),kc(k),kH(k)]T < Kt če velja " (6.17) HiTw(k) + Jt[T(k),kM(k),kc(k),kH(k)]T < Kt zai=l, ..., 10 ˜˜ ˜ Parametri razdelitve prostora Hi, Ji, Ki, Hi, Ji in Ki so za vsak i = 1, .. . , 10 podani (v originalnih koordinatah) v enaˇcbah od (6.18) do (6.27). Hi = \ 0 j ; Ji=\ 0 0 1-1; Ki = \ 0 j #1 -0,0076 -0,0046 -0,0138 -0,0105 ; Ji -0,0013 -0,9695 0 0 0,0026 -0,9500 0 0 -0,0082 -0,9947 0 0 -0,0051 -0,9781 0 0 ; Ki -0,9845 -0,6595 -1,3758 -1,2181 (6.18) __ __ __ 6.4 Temperatura v plašču šaržnega reaktorja 87 H2 H 0,0076 0 0,0030 -0,0062 -0,0028 h J ˜ 0,0013 0,9695 0 0 0 0 1-1 0,0039 0,0195 0 0 -0,0068 -0,0252 0 0 -0,0038 -0,0087 0 0 K2 K 0,9845 0 0,3249 -0,3913 -0,2336 (6.19) H3 H 0,0046 -0,0030 0 -0,0092 -0,0059 Ji J ˜ -0,0026 0,9500 0 0 -0,0039 -0,0195 0 0 0 0 1-1 -0,0107 -0,0448 0 0 -0,0077 -0,0282 0 0 ; K3 K 0,6595 -0,3249 0 -0,7163 -0,5586 (6.20) H4 H 0,0138 0,0062 0,0092 0 ; J4 0,0082 0,9947 0 0 0,0068 0,0252 0 0 0,0107 0,0448 0 0 0 0 11 [ 0,0034 ] ; ˜h = [ 0,0030 0,0166 0 0 ] ; K4 K 1,3758 0,3913 0,7163 0 [ 0,1577 (6.21) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 88 Primer postopka modeliranja in identifikacije odsekoma afinega modela H5 0,0105 0,0028 0,0059 -0,0034 0 ; J5 0,0051 0,9781 0 0 0,0038 0,0087 0 0 0,0077 0,0282 0 0 -0,0030 -0,0166 0 0 0 0 1-1 K5 1,2181 0,2336 0,5586 -0,1577 0 ˜ []; J ˜ []; K (6.22) He = []; J6 = []; K6 = [] H 0 -0,0026 -0,0049 -0,0060 -0,0053 ; J& 0 0-11 -0,0042 -0,0048 0 0 -0,0077 0,0084 0 0 -0,0072 0,9672 0 0 -0,0011 0,9672 0 0 K 0 -0,2260 -0,3570 0,1343 0,3246 (6.23) H7 H7 [ 0,0026 ] ; 0 -0,0023 -0,0034 -0,0027 J? ; Jj [ 0,0042 0,0048 0 0]; K7 = [ 0,2260 ] 0 0 ; 0 0-11 -0,0035 0,0132 0 0 -0,0030 0,9721 0 0 0,0031 0,9721 0 0 ; Kj 0 -0,1310 0,3603 0,5507 (6.24) _ _ _ _ _ _ _ _ _ _ _ _ _ _ 6.4 Temperatura v plašču šaržnega reaktorja 89 #8 #8 0,0049 0,0023 0 -0,0011 -0,0004 ■h Jh 0,0077 -0,0084 0 0 0,0035 -0,0132 0 0 0 0-11 0,0005 0,9588 0 0 0,0066 0,9588 0 0 ; K8 K 0,3570 0,1310 0 0,4913 0,6816 (6.25) H9 H 0,0060 0,0072 -0,9672 0 0 -0,1343 0,0034 ; Jg = 0,0030 -0,9721 0 0 ; K9 = -0,3603 0,0011 -0,0005 -0,9588 0 0 -0,4913 0 tJQ = 0 0-11 j\ Q = 0 0,0007 0,0062 -0,0000 0 0 0,1903 (6.26) #10 H 10 0,0053 0,0011 -0,9672 0 0 -0,3246 0,0027 ; Jio = -0,0031 -0,9721 0 0 ; Kw = -0,5507 0,0004 -0,0066 -0,9588 0 0 -0,6816 -0,0007 -0,0062 0,0000 0 0 -0,1903 3 ]; «-/1 o —— 0 0 -1 1 ] ; j\ i r\ = 0 (6.27) Ker zaporna ventila kC in kH naenkrat ne moreta zavzeti iste vrednosti, veljata enaˇcbi (6.7) in (6.8). Zato lahko reˇcemo, da je vhodni prostor modela (6.4) D[Tw,T,kM,kC,kH]T ustrezno razdeljen na konveksne poliedre, ki so osnova za zapis modela v obliki odsekoma afinega sistema. _ _ _ _ _ _ _ _ _ _ 90 Primer postopka modeliranja in identifikacije odsekoma afinega modela Lokalni afini modeli Za vsak podprostor Qi vhodnega prostora modela (6.4) V[Tw,T,kM,kc,kH]T> ki smo ga določili v prejšnjem razdelku, lahko zapišemo lokalni afini model, kot ga podaja enačba (6.28). Tw(k + 1) = AiTw(k) + Bi za[Tw,T,kM,kC,kH]T eQi T(k) kM(k) + fi (6.28) Tudi v enačbi (6.28) ni izhodnega dela, ki ga formulacija odsekoma afinega modela vsebuje - glej enačbo (4.2). Ker stanje sistema že samo po sebi predstavlja tudi izhod sistema (y(k) = x(k) = Tw(k)), zapis izhodnega dela ni smiseln. Kljub temu lahko podamo: Ci = 1, Di = 0 in gi = 0 za vsak Qi} kjer je i G {1,..., 10}. Parametri modela Podatke za identifikacijo, ki smo jih dobili, kot je opisano v razdelku 6.1, pred ocenjevanjem parametrov razdelimo glede na razdelitev vhodnega prostora modela (6.4) V[Tw,T,kM,kC,kH]T na podprostore Qi} ki jih določajo enačbe (6.17)-(6.27). Parametre ocenimo s klasično metodo najmanjše vsote kvadratov odstopanj za vsak podprostor ^ posebej. Parametri odsekoma afinega modela, ki nastopajo v enačbi (6.28), so podani v enačbi (6.29). 6.4 Temperatura v plašču šaržnega reaktorja 91 Ω1 : A1 = 0, 6314; B1 = [0, 0400 238193]; f1 = -290512 Ω2 : A2 = 0, 9448; B2 = [0, 0376 9, 2129]; f2 = 0,5571 Ω3 : A3 = 0, 9392; B3 = [0, 0379 6, 8623]; f3 = 0,8985 Ω4 : A4 = 0, 9353; B4 = [0, 0541 19, 8684]; f4 = 0,1955 Ω5 : A5 = 0, 9368; B5 = [0, 0434 13, 9952]; f5 = 0,5135 (6.29) Ω6 : A6 = 0, 9224; B6 = [0, 0485 - 8,3390]; f6 = 0,8485 Ω7 : A7 = 0, 9383; B7 = [0, 0436 - 4,0763]; f7 = 0,3900 Ω8 : A8 = 0, 9501; B8 = [0, 0337 - 1,4182]; f8 = 0,2888 Ω9 : A9 = 0, 6267; B9 = [0, 0406 - 13128]; f9 = 7153 Ω10 : A10 = 0,6312; B10 = [0, 0400 - 194, 05]; f10 = 663, 36 6.4.4 Odsekoma afini model – 4. pristop Postopek modeliranja Pri modeliranju odsekoma afinega modela s 4. pristopom postopamo popolnoma enako kot pri 3. pristopu, ki je opisan v razdelku 6.4.3. Vhodni prostor modela (6.4) D[Tw,T,kM,kC,kH]T je torej razdeljen na podprostore Ωi, ki jih doloˇcajo enaˇcbe (6.17)–(6.27), odsekoma afini model pa podaja enaˇcba (6.28). Edina razlika med pristopoma je v ocenjevanju parametrov modela. Parametri modela Podatke za identifikacijo smo dobili, kot je opisano v razdelku 6.1. Kot smo omenili ˇze v razdelku 6.4.2, se pri pristopu s klasiˇcno metodo najmanjˇse vsote kvadratov odstopanj pojavi problem porazdelitve podatkov za identifikacijo v posameznem podprostoru: podatki z roba podprostora vplivajo na oceno enako kot podatki s sredine podprostora. Ker podatki v sploˇsnem niso enakomerno porazdeljeni po posameznem podprostoru, lahko za take podprostore dobimo neustrezne 92 Primer postopka modeliranja in identifikacije odsekoma afinega modela ocene parametrov. Poleg tega lahko problem predstavlja tudi ˇstevilo identifikacijskih podatkov, ki pripadajo posameznemu podprostoru: ˇce posameznemu podprostoru pripada premalo identifikacijskih podatkov, bo ocena podmodela za ta podprostor slaba ali pa je celo sploh ne bomo mogli doloˇciti. Pri tem pristopu bomo zato za identifikacijo parametrov uporabili metodo, ki je opisana v razdelku 5.3 in se naslanja na teorijo mehkih sistemov. Ustrezne vrednosti pripadnostnih funkcij za vsak podatek za identifikacijo doloˇcimo iz rezultatov rojenja: odvisne so od oddaljenosti toˇck, ki predstavljajo podatek za identifikacijo, od srediˇsˇca posameznega roja. Parametri odsekoma afinega modela, ki nastopajo v enaˇcbi (6.28), so podani v enaˇcbi (6.30). Ω1 : A1 = 0,6312; B1 = [0, 0400 1,7115]; f1 = 22, 4874 Ω2 : A2 = 0,9257; B2 = [0, 0513 12, 5240]; f2 = 0, 7210 Ω3 : A3 = 0,9361; B3 = [0, 0384 6,9758]; f3 = 1,0316 Ω4 : A4 = 0,9404; B4 = [0, 0490 19, 3915]; f4 = 0, 1955 Ω5 : A5 = 0,9277; B5 = [0, 0515 16, 8357]; f5 = 0, 5233 (6.30) Ω6 : A6 = 0,9059; B6 = [0, 0630 - 10, 8609]; f6 = 0, 8869 Ω7 : A7 = 0,9337; B7 = [0, 0468 - 4, 5854]; f7 = 0,4228 Ω8 : A8 = 0,9462; B8 = [0, 0359 - 1, 5090]; f8 = 0,3163 Ω9 : A9 = 0,6279; B9 = [0, 0404 - 15, 3616]; f9 = 19, 3905 Ω10 : A10 = 0,6312; B10 = [0, 0400 - 14, 9129]; f10 = 18, 9084 6.5 Vrednotenje Odsekoma afine modele, ki so rezultat pristopov, opisanih v razdelkih 6.4.1, 6.4.2, 6.4.3 in 6.4.4, smo ovrednotili tako, da smo jih primerjali medsebojno in s simu-lacijskim modelom ˇsarˇznega reaktorja. 6.5 Vrednotenje 93 6.5.1 Podatki za vrednotenje Podatke za vrednotenje smo tvorili podobno kot podatke za identifikacijo v razdelku 6.1: v podatke za vrednotenje smo zajeli odziv šaržnega reaktorja na psev-donaključni vhodni signal. Posneli smo oba merljiva izhoda, tj. temperaturo v jedru T in temperaturo v plašču šaržnega reaktorja Tw. Slika 6.6 prikazuje izhodna signala za vrednotenje T in Tw, na sliki 6.7 pa je prikazan še približan izsek poteka signalov. 70 60 50 40 30 20 0 12 3 4 5 6 t [s] x 105 Slika 6.6: Temperatura v jedru T (polna črta) in plašču Tw (prekinjena črta) šaržnega reaktorja. Slika 6.8 prikazuje vhodne signale za vrednotenje kM, kH in kC, na sliki 6.9 pa je prikazan še približan izsek poteka signalov. i ■■ ■■■ ■'' ■ ■■j- -P ■! f\H-1 \'• 11P •i i ■ = u i i! I i -- f h lip j l|| = :■■ .'■■'. : ' ■/i :■: -f >: M--f % '■V : : ':' : :: lii; || §T rl;:| \ \ :(■ ; ? jh 1:1 1 ■ w '•: : i Iffi.i | Ivi :r : ll 94 Primer postopka modeliranja in identifikacije odsekoma afinega modela 70 -: 60 50 40 30 20 3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4 t [s] x 105 Slika 6.7: Temperatura v jedru T (polna ˇcrta) in plaˇsˇcu Tw (prekinjena ˇcrta) ˇsarˇznega reaktorja - izsek. 6.5.2 Eksperimenti Primerjali smo odzive odsekoma afinih modelov, ki so rezultat pristopov, opisanih v razdelkih 6.4.1, 6.4.2, 6.4.3 in 6.4.4, na vhodne signale za vrednotenje, ki so opisani v razdelku 6.5.1. V eksperimentih smo uporabili omenjene modele za napovedovanje poteka trajektorij temperature v plaˇsˇcu ˇsarˇznega reaktorja Tw, in sicer za h korakov naprej, pa tudi za celoten ˇcas poteka signalov za vrednotenje. Omenimo, da smo pri eksperimentih uporabljali celoten model ˇsarˇznega reaktorja, tj. podmodel za temperaturo v jedru T in podmodel za temperaturo v plaˇsˇcu Tw, vendar je pri vseh pristopih podmodel za temperaturo v jedru T, ki je opisan v razdelku 6.3, isti. Sliki 6.10 oz. 6.12 prikazujeta izsek trajektorije temperature v plaˇsˇcu ˇsarˇznega 6.5 Vrednotenje 95 1 - 0.5 -0 ^ JJ 1 ■JjItu™ XjJ Uji/ 0 1 2 3 4 5 6 x 10 5 1 - 0.5 -0 -L 0 1 2 3 4 5 6 x 10 5 1 -- 0.5 -0 J t [s] x 10 Slika 6.8: Vhodni signali kM, kH in kC. reaktorja Tw in odziv modela, ki smo ga dobili z 2. oz. s 4. pristopom, ki so opisani v razdelkih 6.4.2 oz. 6.4.4, na vhodne signale za vrednotenje. Za primerjavo je na slikah s prekinjeno ˇcrto oznaˇcen dejanski odziv na vhodne signale za vrednotenje. Slik, ki bi prikazovale odziv modelov, ki smo ju dobili s 1. oz. s 3. pristopom, ki sta opisana v razdelku 6.4.1 oz. 6.4.3, nismo vkljuˇcili, ker sta modela nestabilna. Tabela 6.1 prikazuje rezultate simulacij z modelom, ki smo ga dobili z 2. pristopom, opisanim v razdelku 6.4.2, tabela 6.2 pa rezultate simulacij z modelom, ki smo ga dobili s 4. pristopom, opisanim v razdelku 6.4.4. Tabel, ki bi prikazovale odziv modelov, ki smo ju dobili s 1. oz. s 3. pristopom, ki sta opisana v razdelku 6.4.1 oz. 6.4.3, nismo vkljuˇcili, ker sta modela 0 1 2 3 4 5 6 96 Primer postopka modeliranja in identifikacije odsekoma afinega modela 1 - ----- —i -| — 0.5 - 0 —i n ^ ,-,___ n ^____T .— -, p, ,___n_____: 3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4 x 10 1 0.5 0 3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4 x 10 1 0.5 0 3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4 t [s] x 10 Slika 6.9: Vhodni signali kM, kH in kc - izsek. nestabilna. V tabelah 6.1 in 6.2 so v vsaki vrstici podani rezultati simulacij, in sicer glede na število predikcijskih korakov h, ki smo jih računali v posameznem eksperimentu. Označba h = oo pomeni, da gre v tem primeru za celotno simulacijo, tj. odziv modela na vhodne signale za vrednotenje, brez sprotnih popravkov stanj, kakršne v vsakem koraku naredimo pri /i-koračni predikciji za h< oo. Stolpci v tabelah 6.1 in 6.2 predstavljajo parametre za vrednotenje modelov, kot so navedeni spodaj: • JTw,i predstavlja povprečje kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw za i-ti pristop; • JT,i predstavlja povprečje kvadratov odstopanj vrednosti temperature v je- 6.5 Vrednotenje 97 - .-— i r fl f fl A N u l^ y y /■ k / n / / V" 1 N s ^ 1 N 3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4 t [s] x 105 Slika 6.10: Odziv modela na vhodne signale za vrednotenje (polna ˇcrta) in dejanski odziv (prekinjena ˇcrta) – 2. pristop. h Jtw,2 Jt,2 tsim,2 [s] 1 0,0190 0,0020 4,04 2 0,0488 0,0020 7,71 5 0,1743 0,0020 18,81 15 0,6532 0,0025 55,81 30 1,1692 0,0064 110,75 60 1,6882 0,0278 225,78 150 2,0967 0,1570 570,38 300 2,4212 0,4090 1164 oo 2,8274 1,1951 139,43 Tabela 6.1: Rezultati simulacij – 2. pristop. 98 Primer postopka modeliranja in identifikacije odsekoma afinega modela 2.5 1.5 0.5 50 100 150 h 200 250 300 Slika 6.11: Odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila predikcijskih korakov h, ki jih računamo v posameznem eksperimentu - 2. pristop. Prekinjena črta označuje vrednost JTwt2 pri h = oo. dru šaržnega reaktorja T za i-ti pristop; • tsim,i predstavlja čas,3 ki je bil potreben za simulacijo h-koračne predikcije za i-ti pristop. Pri oo-koračni predikciji je bil uporabljen preprostejši simu-lacijski program, zato rezultati t8im>i pri h = oo in h < oo niso primerljivi. Sliki 6.11 in 6.13 prikazujeta odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila predikcij skih korakov h, ki jih računamo v posameznem eksperimentu. 3Eksperimenti so bili izvedeni v programskem paketu Matlab, verzija 7.0.1.24704, na raˇcunalniku s procesorjem Intel Pentium M, 1,6 GHz, in z 1,5 GB delovnega spomina. 3 2 1 0 0 6.5 Vrednotenje 99 1 1 \. \ \ \ ft i \ i /■■' N : I Xj 1 3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4 t [s] x 105 Slika 6.12: Odziv modela na vhodne signale za vrednotenje (polna ˇcrta) in dejanski odziv (prekinjena ˇcrta) – 4. pristop. h Jtw,4 Jt,4 tsim,4 [s] 1 0,0075 0,0020 31,40 2 0,0220 0,0020 61,62 5 0,0972 0,0020 152,66 15 0,3892 0,0023 463,52 30 0,6256 0,0047 902,94 60 0,7698 0,0171 1806 150 0,9133 0,0884 4524 300 1,0388 0,2313 9053 oo 1,2735 0,6780 115,48 Tabela 6.2: Rezultati simulacij – 4. pristop. 100 Primer postopka modeliranja in identifikacije odsekoma afinega modela 1.5 0.5 50 100 150 h 200 250 300 Slika 6.13: Odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila predikcijskih korakov h, ki jih računamo v posameznem eksperimentu - 4. pristop. Prekinjena črta označuje vrednost JTwA pri h = oo. Slika 6.14 in tabela 6.3 prikazujeta odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw JTwA od števila rojev C, ki jih določamo pri mehkem rojenju pri 4. pristopu. 6.5.3 Komentar rezultatov Iz rezultatov, ki smo jih predstavili v prejˇsnjem razdelku, lahko zakljuˇcimo, da je ˇsarˇzni reaktor mogoˇce ustrezno predstaviti z odsekoma afinim modelom. Pristopi, ki smo jih opisali v razdelkih 6.4.1, 6.4.2, 6.4.3 in 6.4.4, se razlikujejo po identifikacijski metodi. Pri vseh pristopih je vhodni prostor odsekoma afinega 1 0 0 6.5 Vrednotenje 101 8------------------------------------------------------------------------------------------------------------------------- 7 \ 6 - \ 5 - \ \ 4 - \ \ 3 - \ 2 - ^-^^^ 0-------------------------------------------------------------------------------------------------------------------------- 23456789 10 C Slika 6.14: Odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila rojev, ki jih določamo pri mehkem rojenju pri 4. pristopu. modela v prvem koraku razdeljen glede na način delovanja, tj. glede na položaj zapornih ventilov, v naslednjem koraku pa poskušamo nelinearno dinamiko opisati z odsekoma afinimi modeli, ki veljajo vsak v svojem podprostoru. Podprostore pri 1. in 2. pristopu ločimo glede na temperaturo v plašču reaktorja Tw, pri čemer meje podprostorov določamo hevristično, pri 3. in 4. pristopu pa pri določanju mej podprostorov uporabimo metodo mehkega rojenja. Parametre lokalnih afinih modelov, ki pripadajo posameznemu podprostoru, ocenimo pri 1. in 3. pristopu s klasično metodo najmanjše vsote kvadratov odstopanj, pri 2. in 4. pristopu pa uporabimo metodo, ki se naslanja na teorijo mehkih sistemov in je primerna tudi za ocenjevanje parametrov hibridnih mehkih modelov. 102 Primer postopka modeliranja in identifikacije odsekoma afinega modela C Jtw,4 2 7,2825 3 2,0667 4 1,5788 5 1,2735 6 1,0699 7 0,8828 8 0,6985 9 0,6364 10 0,4900 Tabela 6.3: Odvisnost povpreˇcja kvadratov odstopanj vrednosti temperature v plaˇsˇcu ˇsarˇznega reaktorja Tw od ˇstevila rojev, ki jih doloˇcamo pri mehkem rojenju pri 4. pristopu. Ugotovimo lahko, da se v praktiˇcnih primerih, kot je npr. ˇsarˇzni reaktor, s podatki za identifikacijo, ki jih imamo na voljo, pojavi problem porazdelitve podatkov za identifikacijo v posameznem podprostoru: podatki z roba podpro-stora vplivajo na oceno enako kot podatki s sredine podprostora. Ker podatki v sploˇsnem niso enakomerno porazdeljeni po posameznem podprostoru, lahko za take podprostore dobimo neustrezne ocene parametrov. Poleg tega lahko problem predstavlja tudi ˇstevilo identifikacijskih podatkov, ki pripadajo posameznemu podprostoru: ˇce posameznemu podprostoru pripada premalo identifikacijskih podatkov, bo ocena podmodela za ta podprostor slaba ali pa je celo sploh ne bomo mogli doloˇciti. Zaradi opisane teˇzave sta bila rezultata pri 1. in 3. pristopu nestabilna odsekoma afina modela, ki sta seveda povsem neuporabna za prediktivno vodenje. Po drugi strani pa smo z metodo mehkega ocenjevanja parametrov pri 2. in 4. pristopu, ki smo jo priredili za identifikacijo odsekoma afinih modelov, dobili modela, ki bolj ali manj ustrezno aproksimirata dinamiko ˇsarˇznega reaktorja in 6.5 Vrednotenje 103 bi ju lahko uporabili pri prediktivnem vodenju. Sliki 6.11 in 6.13 prikazujeta, kako se s povečevanjem števila predikcijskih korakov h, ki jih računamo v posameznem eksperimentu, veča povprečje kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw. To pomeni, da potrebujemo pri prediktivnem vodenju z velikimi predikcijskimi horizonti, tj. v primerih, ko s predikcijo računamo obnašanje sistema za relativno veliko korakov naprej, tudi bolj natančne modele, ki jih za ta namen uporabljamo. Pri majhnih predikcij skih horizontih natančnost modela ni tako bistvena. Iz slik je razvidno, da - če se omejimo na odsekoma afine modele z 2 • C = 10 podprostori - dobimo s 4. pristopom bolj natančen model kot z 2. pristopom, kar smo tudi pričakovali, saj naj bi z mehkim rojenjem v splošnem dobili bolj ustrezne rezultate kot s hevrističnim določanjem mej med konveksnimi poliedri v vhodnem prostoru odsekoma afinega modela. Po drugi strani pa je določitev in uporaba modela, ki je rezultat 2. pristopa, preprostejša, saj se izognemo rojenju. Če število rojev C, ki jih določamo pri rojenju pri 4. pristopu za vsak način delovanja, povečujemo, se izboljšuje tudi natančnost modela, kar prikazujeta tudi slika 6.14 in tabela 6.3. Omenimo, da pretirano povečevanje števila rojev ni smiselno, saj bi na ta način dobili preveč kompleksen odsekoma afini model, poleg tega pa bi neenakomerna porazdelitev podatkov za identifikacijo in numerične težave pri ocenjevanju parametrov povzročili, da bi se natančnost modela začela poslabševati, na koncu pa bi lahko dobili celo nestabilen model. Odločitev, katerega od pristopov je bolj ustrezno uporabiti, je torej v končni fazi načrtovalska odločitev. Odvisna je od sistema, ki ga želimo modelirati, in od zahtev algoritma za prediktivno vodenje. 104 Primer postopka modeliranja in identifikacije odsekoma afinega modela 7. Primer postopka modeliranja in identifikacije hibridnega mehkega modela Predstavili bomo postopek modeliranja in identifikacije hibridnega mehkega modela, in sicer na primeru ˇsarˇznega reaktorja, ki je opisan v 3. poglavju. 7.1 Signali za identifikacijo Za identifikacijo ˇsarˇznega reaktorja potrebujemo primerne vhodno-izhodne signale, iz katerih lahko ocenimo dinamiˇcne lastnosti sistema. Signale za identifikacijo tvorimo s psevdonakljuˇcnim vhodnim signalom in posnetimi odzivi sistema na ta vhodni signal. Za podrobnejˇsi opis glej razdelek 6.1. 7.2 Razdelitev sistema Model ˇsarˇznega reaktorja izpeljemo po korakih. • Najprej razstavimo multivariabilni sistem na dva preprostejˇsa podsistema z veˇc vhodi in enim izhodom. • Z upoˇstevanjem vpliva obeh izhodov na oba podsistema doloˇcimo strukturo podmodela za vsak podsistem posebej – glej razdelek 5.2. • Vsak podsistem identificiramo z metodo, opisano v razdelku 5.3. 105 106 Primer postopka modeliranja in identifikacije hibridnega mehkega modela Vsekakor bi bilo model možno konstruirati tudi brez predhodne razdelitve sistema na posamezne podsisteme. Ker pa parametre modela identificiramo z inverzijo matrik (glej razdelek 5.3), bi lahko pri tem naleteli na numerične težave zaradi slabše pogojenosti matrik, ki nastopajo pri identifikaciji. Poleg tega bi morali v tem primeru hkrati ocenjevati večje število parametrov - tj. matriko parametrov 0 ustrezno večje dimenzije - to pa bi se nujno pokazalo v slabših rezultatih identifikacije. Zaradi tega je seveda smiselno uporabiti predlagano razdelitev sistema in na ta način obravnavati poenostavljeno strukturo hibridnega mehkega modela. Tako se izognemo nekaterim morebitnim numeričnim težavam pri ocenjevanju parametrov modela. Za podrobnejšo razlago pristopov k posplošitvi hibridnega mehkega modela in smiselnosti poenostavitev v zvezi z multivariabilnimi sistemi in sistemi višjega reda glej razdelek 5.2.4. Glede na razdelitev toplotnih tokov, ki nastopajo v šaržnem reaktorju (glej razdelek 3.2), lahko sistem razdelimo na dva podsistema: • temperatura v jedru šaržnega reaktorja; • temperatura v plašču šaržnega reaktorja. Na ta način izkoristimo predhodno poznavanje strukture sistema: v procesu modeliranja torej identificiramo sivo škatlo, kar predstavlja neke vrste srednjo pot med identifikacijo črne škatle in popolnoma teoretičnim modeliranjem. 7.3 Temperatura v jedru šaržnega reaktorja Postopek modeliranja in identifikacije je opisan v razdelku 6.3. Model za temperaturo v jedru šaržnega reaktorja podaja enačba (7.1). 7.4 Temperatura v plašču šaržnega reaktorja 107 T(k + l) = 0T[T w (k) T(k)f (7.1) Parametre modela 0 prikazuje enačba (7.2). 0 = [0.0033 0.9967]T (7.2) 7.4 Temperatura v plašču šaržnega reaktorja Temperatura v plašču reaktorja Tw je odvisna od pretoka toplote med plaščem reaktorja in jedrom ter med plaščem reaktorja in okolico, upoštevati pa moramo tudi pretok toplote zaradi dotoka sveže vhodne vode in iztoka vode iz plašča. Predpostavimo lahko model z več vhodi in enim izhodom, kot kaže enačba (7.3). Regresor je sestavljen iz temperature v plašču Tw(k) in jedru T (k) šaržnega reaktorja ter vhodnih signalov, in sicer mešalnega ventila kM(k) ter zapornih ventilov za vročo kH(k) in hladno vodo kc(k), v trenutnem časovnem koraku k. Tw(k + 1) = F(Tw(k),T(k),kM(k),kc(k),kH(k)) (7.3) Podmodel temperature v plašču šaržnega reaktorja Tw bomo zapisali v obliki hibridnega mehkega modela saj dinamika izkazuje tako hibridne kot nelinearne lastnosti. Splošni postopek modeliranja in identifikacije hibridnih mehkih modelov je opisan v razdelkih 5.2 in 5.3. 7.4.1 Hibridni mehki model - 1. pristop Diskretna dinamika Očitno je, da lahko v podmodelu, ki opisuje temperaturo v plašču šaržnega reaktorja Tw, ločimo dva načina delovanja, tj. vpeljemo dve diskretni stanji (s = 2). 108 Primer postopka modeliranja in identifikacije hibridnega mehkega modela • Prvi način delovanja (q = 1) je, ko je sveža vhodna voda vroča, tj. Tin = TH oz. kc{k) = 0 in kH(k) = 1. • Drugi način delovanja (q = 2) je, ko je sveža vhodna voda hladna, tj. Tin = Tc oz. kc{k) = 1 in kH(k) = 0. Opisana razdelitev modela z več vhodi in enim izhodom, ki je zapisan v enačbi (7.3), določa diskretni del hibridnega mehkega modela, ki ga predstavlja enačba (7.4). f 1 ; kc(k) = Q NkH(k) = l q(k) = q(kH(k),kc(k)) = { (7.4) [ 2 ; kc(k) = l/\kH(k) = 0 Nelinearna dinamika V naslednjem koraku moramo določiti primerne pripadnostne funkcije, da bomo lahko v hibridnem mehkem modelu ustrezno zajeli nelinearno dinamiko sistema. Mehčanje izvedemo glede na temperaturo v plašču reaktorja Tw(k). Izbrali smo K = 5 normiranih trikotnih pripadnostnih funkcij z maksimumi pri 12 °C, 20 °C, 40 °C, 60 °C in 70 °C, tako da smo zajeli celotno območje delovanja. Pripadnostne funkcije so prikazane na sliki 7.1. Oblika pripadnostnih funkcij zagotavlja, da so normirane stopnje pripadnosti ßj(Tw) enake pripadnostim ßj(Tw) v celotnem območju delovanja za vsako pravilo Rjd posebej. Pravila Pravila hibridnega mehkega sistema podaja enačba (7.5). Predpostavimo, da lahko lokalni model, ki pripada posameznemu pravilu Rjd, zapišemo v afini obliki - glej tudi enačbo (5.9) in razdelek 5.2.2. 7.4 Temperatura v plašču šaržnega reaktorja 109 0.8 0.6 0.4 0.2 20 30 40 50 60 70 T [0C] Slika 7.1: Pripadnostne funkcije. čeq(k) je Qd in Tw(k) je A{ potem Tw(k + 1) = aljdTw{k) + a2jdT(fc) + bljdkM(k) + rJ(i (7.5) zaj = l,...,5ind= 1,2 Izhod hibridnega mehkega modela, ki pripada pravilu R**, lahko zapišemo, kot kaže enačba (7.6). Rjd : fld(k + 1) = &Jf (q) [Tw{k) T{k) kM{k) lf Diskretni del hibridnega mehkega modela določa enačba (7.7). (7.6) 1 0 110 Primer postopka modeliranja in identifikacije hibridnega mehkega modela ®w(q) = ®w(q(k)) ©w1 če q{k) = 1 ©w2 če q(k) = 2 (7.7) Parametri modela Postopek za ocenjevanje hibridnih mehkih modelov je natančneje opisan v razdelku 5.3. Po določitvi parametrov modela za vsako pravilo Rjd posebej lahko zapišemo matriki s parametri modela, ki jih podajata enačbi (7.8) in (7.9). ©wi 0,9453 0,9431 0,9429 0,9396 0,7910 0,0376 0,0458 0,0395 0,0339 0,0225 19,6748 16,7605 10,5969 3,9536 1,6856 0,3021 0,2160 0,5273 1,2701 12,0404 (7.8) ©w2 0,9803 0,9740 0,9322 0,9076 0,8945 0,0025 0,0153 0,0466 0,0466 0,0111 -0,0704 -0,6956 -7,8013 -12,2555 -18,7457 0,2707 0,2033 0,5650 1,9179 5,6129 (7.9) Izhod modela v kompaktni obliki Če povzamemo, lahko izhod hibridnega mehkega modela, ki obravnava temperaturo v plašču šaržnega reaktorja Tw, zapišemo v kompaktni obliki, kot kaže enačba (7.10). _ _ _ Tw(k + 1) = ß(k)@Tw(q) [Tw(k) T (k) kM(k) l]T (7.10) 7.4 Temperatura v plašču šaržnega reaktorja 111 7.4.2 Hibridni mehki model - 2. pristop Diskretna dinamika Podobno kot pri 1. pristopu (glej razdelek 7.4.1) lahko tudi tu v podmodelu, ki opisuje temperaturo v plašču šaržnega reaktorja Tw, ločimo dva načina delovanja, tj. vpeljemo dve diskretni stanji (s = 2). • Prvi način delovanja (q = 1) je, ko je sveža vhodna voda vroča, tj. Tin = TH oz. kC(k) = 0 in kH(k) = 1. • Drugi način delovanja (q = 2) je, ko je sveža vhodna voda hladna, tj. Tin = TC oz. kC{k) = 1 in kH{k) = 0. Opisana razdelitev modela z več vhodi in enim izhodom, ki je zapisan v enačbi (7.3), določa diskretni del hibridnega mehkega modela, ki ga predstavlja enačba (7.4)-glej razdelek 7.4.1. Nelinearna dinamika V naslednjem koraku moramo določiti primerne pripadnostne funkcije, da bomo lahko v hibridnem mehkem modelu ustrezno zajeli nelinearno dinamiko sistema. V tem primeru si bomo pri mehčanju vhodnega prostora hibridnega mehkega modela pomagali z metodo mehkega rojenja c-središč (angl. fuzzy c-means clustering) - za podrobnejši opis glej tudi razdelek 5.3. Z rojenjem, ki ga izvajamo nad prostorom vhodnih in izhodnih spremenljivk modela (7.3), želimo podatke za identifikacijo razdeliti na več mehkih rojev, tako da vsak podatek za identifikacijo pripada posameznemu mehkemu roju z določeno stopnjo pripadnosti, ki je odvisna od razdalj do središč posameznih mehkih rojev. Vsak roj želimo v končni fazi predstaviti z afinim podmodelom. Pred rojenjem podatke za identifikacijo normiramo, tj. skaliramo njihove 112 Primer postopka modeliranja in identifikacije hibridnega mehkega modela vrednosti tako, da so njihove preslikave v intervalu [0,1]. Prostor, nad katerim izvajamo rojenje lahko torej zapišemo v enačbi (7.11). P[fm(r),f(r),fc„(r)F X Vfw(r+1) = i0, ^ (7-U) Označba " nad spremenljivko pomeni, da se zapis nanaša na normirani prostor. V našem primeru smo pri mehkem rojenju uporabili vrednost parametra m = 1,25. Z rojenjem razdelimo podatke za identifikacijo glede na vhodne spremenljivke podmodela Tw(τ), T (τ) in kM(τ) ter izhodno spremenljivko Tw(τ + 1) na mehke roje. Indeks τ tu označuje časovni korak posameznega podatka za identifikacijo. Z algoritmom za rojenje določimo tudi središča mehkih rojev v normiranem prostoru (7.11) cj} kjer je j G {1, 2,..., C}, in vsaki točki iz množice podatkov za identifikacijo pripišemo ustrezne vrednosti pripadnostnih funkcij. Za vsak način delovanja sistema določimo po C rojev. Središča rojev, določena v normiranem vhodnem prostoru modela, so za primer C = 5 podana v enačbah (7.12) in (7.13). Enačba (7.12) podaja rezultate za prvi način delovanja (kc = 0 in kH = 1), enačba (7.13) pa rezultate za drugi način delovanja (kc = 1 in kH = 0). cM = [0,9495 0,5507 1,0000 0,9511] c2,i = [0,4880 0,4765 0,0305 0,4838] c3)i = [0,6715 0,6935 0,0500 0,6682] (7.12) c4,i = [0,1148 0,0980 0,0053 0,1080] c5)i = [0,3180 0,2655 0,0218 0,3126] 7.4 Temperatura v plašču šaržnega reaktorja 113 či)2 = [0,3718 0,5257 0,0328 0,4323] c2)2 = [0,2180 0,2939 0,0279 0,2540] č3)2= [0,0818 0,1010 0,0412 0,0954] (7.13) č4)2= [0,0147 0,1273 1,0000 0,0168] č5)2= [0,0562 0,4671 1,0000 0,0620] Projekcije mehkih rojev v vhodni prostor modela Središča rojev (in ustrezne pripadnostne funkcije), ki so rezultat algoritma za mehko rojenje, so določena v normiranem vhodno-izhodnem prostoru modela, ki ga podaja izraz (7.11). Tako določene pripadnostne funkcije lahko neposredno uporabimo pri identifikaciji odsekoma afinega modela, problem pa se pojavi pri uporabi odsekoma afinega modela za predikcijo obnašanja sistema. V naslednjem koraku moramo torej mehke roje projicirati v vhodni prostor modela (7.3) V[TwyTykM]T. V tem primeru postopamo, kot je opisano v razdelku 5.3. Na ta način lahko torej za vsako rojenje izpeljemo po C funkcij, ki so definirane nad vhodnim prostorom hibridnega mehkega modela V[Tw>T>kM]T in ki vsaki točki [Tw,T,kM]T v tem prostoru priredijo vrednosti rjti([Tw,T, kM]T) za q = 1 oz. r3,2([Tw,T,kM]T) za q = 2, in sicer za j G {1,2,..., C}, kot podajata izraza (7.14) in (7.15). rjtl : [Tw,T,kM]T ^ r3A([Tw,T,kM]T), (7.14) kjer je j G {1, 2,... , C}. 114 Primer postopka modeliranja in identifikacije hibridnega mehkega modela r3,2:D[Tw,T,kM]T^[r3,2,rmn,Oc), r3,2 : [Tw,T,kM]T ^ r3,2([Tw,T,kM]T), (7.15) kjer je j G {1, 2,..., C}. Če poznamo funkcije rjti([Tw,T, kM]T) oz. r3,2([Tw,T, kM]T) za vsak j G {1,2,..., C}, lahko izpeljemo pripadnostne funkcije, ki ustrezajo rezultatom mehkega rojenja in so definirane nad vhodnim prostorom hibridnega mehkega modela D[Tw>T>kM]T in ki vsaki točki v prostoru [Tw,T,kM]T priredijo vrednosti n3,i([Tw,T,kM]T) za q = 1 oz. /i3,2([Tw,T,kM}T) za q = 2, in sicer za j G {1, 2,..., C}, kot podajata izraza (7.16) in (7.17). 1 VjA = -----------------17, ^fc=i(S)m_1 (7-16) kjer je j G {1, 2,... , C}. 1 ßj,2 =-----------------j, ^fc=i(Sj)m_1 (7.17) kjer je j G {1, 2,... , C}. Pripadnostne funkcije, ki so zapisane v izrazih (7.16) in (7.17), lahko neposredno implementiramo pri uporabi hibridnega mehkega modela za predikcijo obnašanja sistema - glej enačbo (5.10) - tj. pri določanju normiranih stopenj pripadnosti za posamezen roj ßjA(k) oz. ß3,2(k), kjer je j G {1, 2,..., C} - glej enačbo (5.12). Definicija pripadnostnih funkcij, ki je osnovana na razdalji od središč posameznih rojev, zagotavlja, da so normirane stopnje pripadnosti ß3A([Tw(k),T(k),kM(k)]T) oz. ß3,21([Tw(k),T(k),kM(k)]T) enake vrednostim pripadnostnih funkcij ß3tl([Tw(k),T(k),kM(k)]T) oz. ß3A([Tw(k),T(k),kM(k)]T) v celotnem območju delovanja za vsako pravilo Rjd posebej. 7.4 Temperatura v plašču šaržnega reaktorja 115 Pravila Pravila hibridnega mehkega sistema podaja enačba (7.18). Predpostavimo, da lahko lokalni model, ki pripada posameznemu pravilu Rjd, zapišemo v afini obliki - glej tudi enačbo (5.9) in razdelek 5.2.2. R>d: če q(k) je Qd in [Tw(k),T(k), kM(k)]T je A{d potem Tw(k + l) = aljdTw(k) + a2jdT{k) + bljdkM{k) + rjd (7.18) za j = l,...,5ind= 1,2 Izhod hibridnega mehkega modela, ki pripada pravilu Rjd, lahko zapišemo enako kot pri 1. pristopu - kot kaže enačba (7.6). Tudi diskretni del hibridnega mehkega modela je določen enako kot pri 1. pristopu, in sicer ga podaja enačba (7.7)-glej razdelek 7.4.1. Parametri modela Postopek za ocenjevanje hibridnih mehkih modelov je natančneje opisan v razdelku 5.3. Po določitvi parametrov modela za vsako pravilo Rjd posebej lahko zapišemo matriki s parametri modela, ki jih podajata enačbi (7.19) in (7.20). ewi 0,6312 0,9257 0,9361 0,9404 0,9277 0,0400 0,0513 0,0384 0,0490 0,0515 1,7115 12,5240 6,9758 19,3915 16,8357 22,4874 0,7210 1,0316 0,1955 0,5233 (7.19) _ 116 Primer postopka modeliranja in identifikacije hibridnega mehkega modela ®w2 0,9059 0,9337 0,9462 0,6279 0,6312 0,0630 0,0468 0,0359 0,0404 0,0400 -10,8609 -4,5854 -1,5090 -15,3616 -14,9129 0,8869 0,4228 0,3163 19,3905 18,9084 (7.20) Izhod modela v kompaktni obliki Če povzamemo, lahko izhod hibridnega mehkega modela, ki obravnava temperaturo v plašču šaržnega reaktorja Tw, zapišemo v kompaktni obliki, kot kaže enačba (7.21). Tw(k + 1) = ß(k, q)@Tw(q) [Tw(k) T {k) kM(k) lf (7.21) 7.5 Vrednotenje Hibridna mehka modela, ki sta rezultat pristopov, opisanih v razdelkih 7.4.1 in 7.4.2, smo ovrednotili tako, da smo jih primerjali medsebojno in s simulacijskim modelom šaržnega reaktorja. 7.5.1 Podatki za vrednotenje Podatke za vrednotenje smo tvorili, kot je opisano v razdelku 6.5.1. V podatke za vrednotenje smo zajeli odziv šaržnega reaktorja na psevdonaključni vhodni signal. Posneli smo oba merljiva izhoda, tj. temperaturo v jedru T in temperaturo v plašču šaržnega reaktorja Tw. 7.5.2 Eksperimenti Primerjali smo odzive hibridnih mehkih modelov modelov, ki sta rezultat pristopov, opisanih v razdelkih 7.4.1 in 7.4.2, na vhodne signale za vrednotenje, ki _ 7.5 Vrednotenje 117 \ 1 1 A f n 1 V 1 wr / / \ 3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4 t [s] x 105 Slika 7.2: Odziv modela na vhodne signale za vrednotenje (polna ˇcrta) in dejanski odziv (prekinjena ˇcrta) – 1. pristop. h Jt 1 Jt,i tsim,1 [s] 1 0,0105 0,0020 10,59 2 0,0293 0,0020 20,94 5 0,1101 0,0020 51,77 15 0,4343 0,0024 154,56 30 0,8067 0,0052 314,04 60 1,1867 0,0214 624,20 150 1,4917 0,1232 1566 300 1,6568 0,3188 3230 oo 1,8861 0,8288 82,18 Tabela 7.1: Rezultati simulacij – 1. pristop. 118 Primer postopka modeliranja in identifikacije hibridnega mehkega modela 2.5 1.5 0.5 50 100 150 h 200 250 300 Slika 7.3: Odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila predikcijskih korakov h, ki jih računamo v posameznem eksperimentu - 1. pristop. Prekinjena črta označuje vrednost JTw,1 pri h = oo. so opisani v razdelku 6.5.1. V eksperimentih smo uporabili omenjene modele za napovedovanje poteka trajektorij temperature v plašču šaržnega reaktorja Tw, in sicer za h korakov naprej, pa tudi za celoten čas poteka signalov za vrednotenje. Omenimo, da smo pri eksperimentih uporabljali celoten model šaržnega reaktorja, tj. podmodel za temperaturo v jedru T in podmodel za temperaturo v plašču Tw, vendar je pri vseh pristopih podmodel za temperaturo v jedru T, ki je opisan v razdelku 6.3, isti. Sliki 7.2 oz. 7.4 prikazujeta izsek trajektorije temperature v plašču šaržnega reaktorja Tw in odziv modela dobljenega si. oz. z 2. pristopom, ki sta opisana v razdelkih 7.4.1 in 7.4.2, na vhodne signale za vrednotenje. Za primerjavo je na 1 0 7.5 Vrednotenje 119 70 1 1 / I (1 A / 60 v \ 1 1 \.. A 1 /1 50 V 1 u\ \ 40 \/^ \ ^w \ f 1 30 \ V \ 20 \ \ 3.1 3.2 3.3 3.4 3.5 t [s] 3.6 3.7 3.8 3.9 x 10 Slika 7.4: Odziv modela na vhodne signale za vrednotenje (polna ˇcrta) in dejanski odziv (prekinjena ˇcrta) – 2. pristop. h Jtw,2 Jt,2 tsim,2 [s] 1 0,0075 0,0020 8,33 2 0,0201 0,0020 15,42 5 0,0814 0,0020 38,30 15 0,3208 0,0022 108,76 30 0,5167 0,0042 214,56 60 0,6393 0,0146 430,79 150 0,7623 0,0757 1085 300 0,8629 0,1968 2196 oo 1,0474 0,5574 90,79 Tabela 7.2: Rezultati simulacij – 2. pristop. 3 4 120 Primer postopka modeliranja in identifikacije hibridnega mehkega modela 1.5 0.5 50 100 150 h 200 250 300 Slika 7.5: Odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila predikcijskih korakov h, ki jih računamo v posameznem eksperimentu - 2. pristop. Prekinjena črta označuje vrednost JTw,2 pri h = oo. slikah s prekinjeno ˇcrto oznaˇcen dejanski odziv na vhodne signale za vrednotenje. Tabela 7.1 prikazuje rezultate simulacij z modelom, ki smo ga dobili s 1. pristopom, opisanim v razdelku 7.4.1; tabela 7.2 pa rezultate simulacij z modelom, ki smo ga dobili z 2. pristopom, opisanim v razdelku 7.4.2. V tabelah 7.1 in 7.2 so v vsaki vrstici podani rezultati simulacij, in sicer glede na ˇstevilo predikcijskih korakov h, ki smo jih raˇcunali v posameznem eksperimentu. Oznaˇcba h = ∞ pomeni, da gre v tem primeru za celotno simulacijo, tj. odziv modela na vhodne signale za vrednotenje, brez sprotnih popravkov stanj, kakrˇsne v vsakem koraku naredimo pri h-koraˇcni predikciji za h < ∞. 1 0 0 7.5 Vrednotenje 121 Stolpci v tabelah 7.1 in 7.2 predstavljajo parametre za vrednotenje modelov, kot so navedeni spodaj: • JTw,i predstavlja povprečje kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw za i-ti pristop; • JT,i predstavlja povprečje kvadratov odstopanj vrednosti temperature v jedru šaržnega reaktorja T za «-ti pristop; • t8im>i predstavlja čas,1 ki je bil potreben za simulacijo /i-koračne predikcije za «-ti pristop. Pri oo-koračni predikciji je bil uporabljen preprostejši simu-lacijski program, zato rezultati tsim%i pri h = oo in h < oo niso primerljivi. Sliki 7.3 in 7.5 prikazujeta odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila predikcijskih korakov h, ki jih računamo v posameznem eksperimentu. Slika 7.6 in tabela 7.3 prikazujeta odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw JTwy2 od števila rojev C, ki jih določamo pri mehkem rojenju pri 2. pristopu. 7.5.3 Komentar rezultatov Iz rezultatov, ki smo jih predstavili v prejšnjem razdelku 7.5, lahko zaključimo, da je šaržni reaktor mogoče ustrezno predstaviti s hibridnim mehkim modelom. Pristopi, ki smo jih opisali v razdelkih 7.4.1 in 7.4.2 se razlikujejo po identifikacijski metodi. Podprostore pri 1. pristopu ločimo glede na temperaturo v plašču reaktorja Tw, pri čemer pripadnostne funkcije določimo hevristično, pri 2. pristopu pa pri določanju pripadnostnih funkcij uporabimo metodo mehkega rojenja. Eksperimenti so bili izvedeni v programskem paketu Matlab, verzija 7.0.1.24704, na raˇcunalniku s procesorjem Intel Pentium M, 1,6 GHz, in z 1,5 GB delovnega spomina. 122 Primer postopka modeliranja in identifikacije hibridnega mehkega modela 8------------------------------------------------------------------------------------------------------------- 7 6 5 -\ \ 4 - \ \ 3 - \ 2 - ^i 0-------------------------------------------------------------------------------------------------------------------------- 23456789 10 C Slika 7.6: Odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila rojev, ki jih določamo pri mehkem rojenju pri 2. pristopu. Parametre lokalnih afinih modelov, ki pripadajo posameznemu podprostoru, ocenimo z metodo, ki se naslanja na teorijo mehkih sistemov. Na ta način smo dobili modela, ki bolj ali manj ustrezno aproksimirata dinamiko šaržnega reaktorja in bi ju lahko uporabili pri prediktivnem vodenju. Sliki 7.3 in 7.5 prikazujeta, kako se s povečevanjem števila predikcijskih korakov h, ki jih računamo v posameznem eksperimentu, veča povprečje kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw. To pomeni, da potrebujemo pri prediktivnem vodenju z velikimi predikcijskimi horizonti, tj. v primerih, ko s predikcijo računamo obnašanje sistema za veliko korakov naprej, tudi bolj natančne modele, ki jih za ta namen uporabljamo. Pri majhnih predikcijskih horizontih natančnost modela ni tako bistvena. 7.5 Vrednotenje 123 C Jtw,2 2 5,6844 3 1,8832 4 1,3633 5 1,0474 6 0,8970 7 0,6615 8 0,5214 9 0,4487 10 0,4048 Tabela 7.3: Odvisnost povprečja kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw od števila rojev, ki jih določamo pri mehkem rojenju pri 2. pristopu. Iz slik je razvidno, da - če se pri številu pripadnostnih funkcij omejimo na C = 5 (za vsak način delovanja) - dobimo z 2. pristopom bolj natančen model kot s 1. pristopom, kar smo tudi pričakovali, saj naj bi z mehkim rojenjem v splošnem dobili bolj ustrezne rezultate kot s hevrističnim določanjem pripadnostnih funkcij. Po drugi strani pa je določitev in uporaba modela, ki je rezultat 1. pristopa, preprostejša, saj se izognemo rojenju. Če število rojev C, ki jih določamo pri rojenju v 2. pristopu za vsak način delovanja, povečujemo, se izboljšuje tudi natančnost modela, kar prikazujeta slika 7.6 in tabela 7.3. Omenimo naj, da povečevanje števila rojev v nedogled ni smiselno, saj bi na ta način dobili preveč kompleksen hibridni mehki model, poleg tega pa bi neenakomerna porazdelitev podatkov za identifikacijo in numerične težave pri ocenjevanju parametrov povzročili, da bi se natančnost modela začela poslabševati, na koncu pa bi lahko dobili celo nestabilen model. Primerjava med hibridnim mehkim modelom in ustreznim odsekoma afinim modelom (glej 6. poglavje) pokaže, da - ob primerljivi zahtevnosti pristopa za 124 Primer postopka modeliranja in identifikacije hibridnega mehkega modela modeliranje in identifikacijo ter kompleksnosti na primerljiv način dobljenega končnega modela - dosežemo večjo natančnost s hibridnim mehkim modelom. Če primerjamo hibridni mehki model, ki smo ga dobili s 1. pristopom, in odsekoma afini model, ki smo ga dobili z 2. pristopom, lahko ugotovimo, da znaša povprečje kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw pri simulaciji za hibridni mehki model JTw,i 1*=«,= 1, 8861, za odsekoma afini model pa JTw>1 \h=00= 2,8274. Tudi pri primerjavi hibridnega mehkega modela, ki smo ga dobili z 2. pristopom, in odsekoma afinega modela, ki smo ga dobili s 4. pristopom, so rezultati v prid hibridnega mehkega modela. Povprečje kvadratov odstopanj vrednosti temperature v plašču šaržnega reaktorja Tw znaša pri simulaciji za hibridni mehki model JTwt2 \h=00= 1,0474, za odsekoma afini model pa JTwA \h=00= 1,2735. Primerjava slik 6.14 in 7.6 oz. tabel 6.3 in 7.3 pokaže, da odsekoma afini model preseže natančnost hibridnega mehkega modela, ki je rezultat mehkega rojenja s po C = 5 rojev, šele pri C = 7 rojih. Za primerljivo natančnost moramo torej uporabiti kompleksnejši odsekoma afini model glede na hibridni mehki model, kar pa lahko bistveno poveča računsko zahtevnost algoritma za prediktivno vodenje. Odločitev, katerega od pristopov je ustrezneje uporabiti, je torej v končni fazi načrtovalska odločitev. Odvisna je od sistema, ki ga želimo modelirati, in od zahtev algoritma za prediktivno vodenje. Del III Metode prediktivnega vodenja hibridnih sistemov 125 126 8. Uvod v metode prediktivnega vodenja hibridnih sistemov Ena od naprednih metodologij vodenja sistemov, ki se je zelo uveljavila v industrijski praksi, je prediktivno vodenje [45, 117]. Večinoma se prediktivno vodenje uporablja v petrokemični industriji, vedno večjo veljavo pa pridobiva tudi v ostalih industrijskih sektorjih. Glavni razlogi za uspeh prediktivnega vodenja v praksi so [93]: • preprosta obravnava multivariabilnih sistemov; • možnost upoštevanja omejitev aktuatorjev; • dovoljuje delovanje bližje omejitvam (v primerjavi s klasičnimi pristopi), kar vodi k bolj ekonomičnemu delovanju; • v mnogih primerih so dovoljeni relativno dolgi časi med spremembami re-gulirnih signalov, kar omogoči dovolj časa za njihovo sprotno (angl. online) izračunavanje. Prediktivno vodenje je način vodenja dinamičnih sistemov, pri katerem uporabljamo model procesa za napovedovanje obnašanja sistema pri določenih vhodih. Optimalne vhode, ki jih uporabimo za dejansko vodenje sistemov, navadno določimo s pomočjo različnih optimizacijskih postopkov. Prediktivni regulatorji so uporabni za vodenje širokega spektra različnih tipov sistemov, zato se predvsem v primerih, ko so vodeni sistemi sorazmerno 127 128 Uvod v metode prediktivnega vodenja hibridnih sistemov kompleksni [64, 59, 121, 84, 106, 60, 71, 94, 61] (nelinearni sistemi, multivaria-bilni sistemi, sistemi z omejitvami, hibridni sistemi idr.), pokaˇze njihova prednost pred drugimi regulatorji. Pomembna prednost prediktivnega vodenja je, da lahko razmeroma preprosto upoˇstevamo omejitve v procesu, kot so omejitve aktuatorjev, nevarna ali prepovedana obmoˇcja delovanja ipd. V procesni industriji je pogosto pogoj za optimalno, tj. najbolj donosno, vodenje, da proces deluje blizu omejitev. Te so veˇcinoma povezane s ceno, porabo energije ipd. Prav tako je lahko predpisan minimalni kakovostni standard konˇcnega produkta, ki predstavlja omejitev v procesu. V takem primeru poskuˇsamo s prediktivnim vodenjem proces voditi tako, da mini-miziramo proizvodne stroˇske, ob tem pa ne prekrˇsimo omejitve, ki jo predstavlja minimalni kakovostni standard. Metode prediktivnega vodenja so se v industriji uveljavile [118], ker se odlikujejo po svoji enostavnosti, uporabnosti, relativno dobrem delovanju in razumljivem algoritmu. Z razvojnega vidika bi lahko pristope k prediktivnemu vodenju razdelili na dve glavni veji: poleg prediktivnega vodenja, pri katerem je bistvena optimizacija z upoˇstevanjem omejitev, se pojavlja tudi prediktivno vodenje, pri katerem sta bistvena preprosto umerjanje parametrov vodenja in jasnost pristopa. V drugem primeru sama optimizacija in omejitve v algoritmu niso bistvenega pomena, ampak je poudarjena predvsem preprostost in majhna raˇcunska zahtevnost algoritmov, ki so primerni predvsem za sisteme z enim vhodom in enim izhodom (angl. single-input, single-output – SISO). Moderni raˇcunalniki omogoˇcajo vedno veˇcje hitrosti raˇcunanja, zato meja med zgoraj omenjenima vejama prediktivnega vodenja vse bolj izginja [20]. Predik-tivno vodenje danes ni veˇc omejeno samo na poˇcasne procese, kjer je ˇcasa za raˇcunanje med dvema korakoma oz. spremembama regulirnega signala veliko, ampak se uporaba vedno bolj ˇsiri tudi na podroˇcje hitrih procesov. Kljub temu pa je pri zahtevnih problemih vodenja, kjer nastopajo kompleksni dinamiˇcni procesi, raˇcunska zahtevnost ˇse vedno glavna teˇzava. V literaturi se zato pojavljajo pri- 8.1 Optimalno vodenje 129 stopi z optimizacijskimi algoritmi [143, 123, 122, 82, 51, 140, 128], ki so računsko sicer manj zahtevni, a zagotavljajo suboptimalne rešitve. V nadaljevanju poglavja bomo opisali osnovno idejo in formulacijo problema optimalnega vodenja ter glavno omejitev, na katero naletimo pri iskanju splošne rešitve. Nato bomo predstavili prediktivno vodenje kot uveljavljeno poenostavitev splošnega problema optimalnega vodenja, opisali osnovni mehanizem delovanja in poudarili nekatere pomembne vidike, ki jih moramo upoštevati pri načrtovanju. V naslednjih poglavjih tretjega dela doktorske disertacije pa se bomo osredotočili na nekaj pristopov k prediktivnemu vodenju hibridnih sistemov. 8.1 Optimalno vodenje Ideja o reševanju problema vodenja kot optimizacijskega problema sega že med leti 1955 in 1970, ko se je razvijala teorija optimalnega vodenja. Glavno gonilo razvoja so bili optimizacij ski problemi, ki so se pojavljali v letalski in vesoljski industriji, predvsem pri vodenju letal in raket ter pri vzletanju, letanju in pristajanju vesoljskih plovil [93, 103]. V nekaterih pogledih je teorija optimalnega vodenja rešila izredno širok nabor problemov. Predpostavimo, da v sistemu, ki ga želimo voditi, predstavlja u vektor vhodov in x vektor stanj. Dinamiko sistema, ki je v splošnem nelinearna, naj podaja enačba (8.1). ^ = f(x,u) (8.1) Denimo, da je cilj vodenja minimizacija kriterijske funkcije, ki jo podaja enačba (8.2). ftkon J(x,u,t)= / l(x(r),u(r),r)dr + Fkon(x(tkon)) (8.2) o 130 Uvod v metode prediktivnega vodenja hibridnih sistemov Naj bo vhod omejen na množico u(t) G U. V enačbi (8.2) je 1(x(t),u(t),t) nenegativna funkcija, Fkm pa je funkcija, ki ovrednoti stanje sistema v trenutku tkan, ko se vodenje konča. Opisana formulacija predstavlja zelo splošen zapis problema optimalnega vodenja. S primerno določitvijo funkcij /, F in / lahko zaobjamemo praktično vsak smiseln problem vodenja. 8.1.1 Hamilton-Jacobi-Bellmanova enačba V osnovi je potek reševanja tovrstnih splošnih optimizacijskih problemov znan: problem se prevede na reševanje Hamilton-JacoU-Bellmanove enačbe [42], ki jo podaja enačba (8.3). ^J°(x, t) = mm H fx, u, ^J°(x, t)) (8.3) Funkcijo H{x,u,X) iz enačbe (8.3) podaja enačba (8.4). H{x,u,X) = l{x,u) + Xf{x,u) (8.4) Robni pogoj podaja enačba (8.5). J°(x,tkon) = Frob(x) (8.5) Ko rešimo enačbo (8.3), izberemo vhodni signal tako, da minimiziramo funkcijo H, kot kaže enačba (8.6). u°(x,t) = argnunff (x,u,^J°(x,t)\ (8.6) Poudariti je treba, da zgornje enačbe predstavljajo zaprtozančni regulirni zakon, saj je v trenutku t odvisen od stanja sistema x(t), ki pa je posledica dogajanja v sistemu od začetka do trenutka t. 8.1 Optimalno vodenje 131 Žal je Hamilton-Jacobi-Bellmanovo enačbo v splošnem praktično nemogoče rešiti, zato se v praksi omejimo na ožje razrede optimizacijskih problemov, ki strukturno poenostavijo osnovni problem optimalnega vodenja. 8.1.2 Optimalno vodenje linearnih sistemov En način poenostavitve je obravnava samo linearnih sistemov. V tem primeru lahko enačbo (8.1) zapišemo, kot kaže enačba (8.7) x(t) = A(t)x(t) + B(t)u(t) (8.7) Predpostavimo, da sta / in F kvadratni funkciji. Cilj vodenja je torej minimi-zacija kriterijske funkcije, ki jo podaja enačba (8.8). J(x,u,t) = ftkon / (x(r) T Q(t) x(t) + u(t) t R(t) u(t)) dr + (8.8) o + x(tkmf S x(tkm) V enačbi (8.8) so Q(t), R(t) in S kvadratne, simetrične in pozitivno definitne matrike. V opisanem primeru se Hamilton-Jacobi-Bellmanova enačba v (8.3) pretvori v navadno diferencialno Riccatijevo enačbo. Rešitev Riccatijeve enačbe je linearen časovno spremenljiv regulirni zakon, ki ga podaja enačba (8.9). u{t) = F(t)x(t) (8.9) V enačbi (8.9) določa matrika F (t) regulator, ki je odvisen od rešitev Riccatijeve enačbe. Večina razvoja optimalnega vodenja je temeljila na opisani poenostavitvi Hamilton-Jacobi-Bellmanove enačbe, kar je prineslo razvoj zelo močne in izpopolnjene teorije, ki je bila pogosto uporabljana tudi v praksi, posebno v dualni obliki v zvezi s Kalmanovim filtrom [93]. 132 Uvod v metode prediktivnega vodenja hibridnih sistemov Slabost pristopa je, da je omejen na linearne sisteme v obliki, kot jo podaja enaˇcba (8.7), in kriterijske funkcije v obliki, kot jo podaja enaˇcba (8.8), v formulaciji in reˇsitvi pa ne upoˇsteva omejitev in ostalih morebitnih nelinearnosti v sistemu. 8.2 Prediktivno vodenje kot poenostavitev reševanja problema optimalnega vodenja Glavna težava optimalnega vodenja v osnovni obliki je, da rešuje problem optimizacije nad funkcijo, tj. vhodnim signalom u. Da bi našli optimalno vhodno funkcijo med vsemi mogočimi moramo torej uporabiti variacijski račun. Uveljavljen pristop k poenostavitvi problema reševanja Hamilton-Jacobi-Bellmanove enačbe v okviru optimalnega vodenja je prediktivno vodenje. Osnovna ideja prediktivnega vodenja je, da splošni variacijski račun poenostavimo tako, da omejimo množico mogočih vhodov, in sicer do te mere, da se optimizacija izvaja samo nad končno množico parametrov, namesto nad množico funkcij. Navadno se poenostavitev izvede tako, da diskretiziramo zvezni čas, tj. čas razdelimo na diskretne intervale, in optimizacijo izvajamo nad končnim predik-cijskim horizontom H oz. nad končnim številom časovnih intervalov. Pri tem predpostavimo, daje vhodni signal u v času trajanja enega diskretnega časovnega intervala, tj. časovnega koraka, konstanten. Na ta način pretvorimo - v splošnem nerešljiv - problem optimizacije vhodne funkcije na bolj obvladljiv problem optimizacije končnega števila vrednosti vhodnega signala, ki bi jih uporabili v posameznem prihodnjem časovnem intervalu do predikcijskega horizonta H. 8.3 Uporaba modelov v diskretnem času 133 8.3 Uporaba modelov v diskretnem ˇcasu Kot smo omenili v razdelku 2.4, se bomo v disertaciji pri obravnavi prediktivnega vodenja omejili na pristope z modeli, ki so določeni v diskretnem času. V tem primeru postane pomembna ustrezna izbira časa vzorčenja tS, od katerega je odvisno modeliranje diskretnega modela ali pretvorba zveznega modela sistema v diskretni model, ki ga potem uporabimo pri prediktivnem vodenju. Po eni strani je z izbiro časa vzorčenja povezana natančnost modela oziroma predikcije obnašanja sistema: izbira predolgega časa vzorčenja namreč onemogoča modeliranje hitrejše dinamike v sistemu. Izbira časa vzorčenja je s tega vidika predvsem modelerski problem, seveda pa ima posledice tudi pri vodenju sistema, saj algoritem za prediktivno vodenje s slabim modelom ne more doseči ustrezne kakovosti vodenja. Po drugi strani pa izbira časa vzorčenja vpliva na računsko zahtevnost (glej razdelek 8.6): število računskih operacij pri računanju predikcije obnašanja sistema v določenem časovnem intervalu je namreč obratno sorazmerno s časom vzorčenja. Z drugimi besedami - za dosego nekega končnega časa predikcije tH je potrebnih več predikcijskih korakov, tj. daljši predikcijski horizont H. Podaljšanje predikcijskega horizonta H pa v splošnem povzroči (eksponentno) povečanje računske zahtevnosti algoritma za prediktivno vodenje, kar lahko v skrajnem primeru tudi onemogoči uporabo algoritma v realnem času. 8.4 Delovanje algoritmov za prediktivno vodenje Prediktivno vodenje je pristop, pri katerem se z uporabo matematičnega modela sistema, ki ga želimo voditi, napoveduje bodoče obnašanje sistema [45]. Pri prediktivnem vodenju v diskretnem času gre torej v osnovi za to, da ob vsakem časovnem koraku k izberemo tisto vrednost vektorja vhodov v sistem, ki je najprimernejša glede na trenutno stanje sistema in želeni potek stanj oziroma izhodov 134 Uvod v metode prediktivnega vodenja hibridnih sistemov sistema. Določanje primernosti vektorja vhodov predstavlja optimizacijski problem, ki ga rešujemo v okviru končnega predikcijskega horizonta H, tj. za določeno število korakov naprej. Optimizacijo izvajamo glede na napoved bodočega obnašanja sistema pri določenih vhodnih signalih, ki jo določimo z modelom, ki ga uporabljamo za predikcijo, in ustrezne kriterijske funkcije,1 pri čemer pa moramo upoštevati tudi vse omejitve za vhode, izhode in stanja sistema. Rešitev problema vodenja v času t = k ■ ts (tj. v fc-tem časovnem koraku) predstavlja zaporedje vrednosti vektorja vhodov, ki jo podaja enačba (8.10). U^+H-1 = (u(k\k),u(k + l \k),...,u(k + H-l\k)) (8.10) V enačbi (8.10) označuje u(k + i - 1 | k) vektor vhodov, ki ga uporabimo za predikcijo obnašanja sistema v (k + i)-tem časovnem koraku,2 tj. v «-tem koraku predikcije, ki se izračunava v časovnem koraku k; H G N pa predstavlja predikcijski horizont, tj. število korakov naprej od koraka k, ki jih algoritem za prediktivno vodenje izračuna. Pri prediktivnem vodenju želimo model sistema, ki ga vodimo, (v vsakem časovnem koraku k) iz začetnega stanja x(k) - preko vseh vmesnih korakov (fc+1 | k,..., k + H - 1 | k) in pripadajočih stanj v okviru največjega predikcijskega horizonta H, ki jih podaja enačba (8.11) - pripeljati v končno stanje x(k + H), in sicer s tako izbiro zaporedja vrednosti vhodnih vektorjev (8.10), da minimiziramo kriterijsko funkcijo. Xkk+i =(x(k + l | k),x{k + 2\ k),...,x(k + H\ k)) (8.11) Od celotnega optimiziranega zaporedja vrednosti vektorja vhodov (8.10) se za vodenje sistema uporabi samo prvi vhodni vektor iz zaporedja u(k | k), in sicer iGlej razdelek 8.5. 2i G {1,2,..., H}. 8.5 Kriterijska funkcija 135 samo v času trajanja časovnega koraka k. V naslednjih časovnih korakih k+j, kjer je j ∈ {1, 2,...}, moramo vsakič rešiti nov optimizacij ski problem, ki je določen z novim trenutnim stanjem sistema x(k+ j) in želenim potekom stanj v okviru premaknjenega predikcijskega horizonta Omenimo, da prediktivno vodenje v osnovni obliki ne rešuje zaprtozančnega problema, ampak niz odprtozančnih problemov. Zaprtozančno delovanje dosežemo tako, da začetnim pogojem v nizu odprtozančnih problemov priredimo v vsakem časovnem koraku k zadnje izmerjene signale, ki predstavljajo stanje sistema. 8.5 Kriterijska funkcija Kot smo povedali v prejšnjih razdelkih, predstavlja temelj delovanja algoritmov za prediktivno vodenje minimizacija kriterijske funkcije, zato je od njene določitve neposredno odvisna kakovost vodenja pa tudi računska zahtevnost. Splošen zapis kriterijske funkcije za prediktivno vodenje lahko izpeljemo z modifikacijo splošnega zapisa kriterijske funkcije za optimalno vodenje v enačbi (8.2). Zapis podaja enačba (8.12). k+H j=y i(xkkx?, ui+H-\ k, h) hZk (8.12) za/i= 1,2,..., H Funkcija /(X^+f, Uk+H~l, k, h) v enačbi (8.12) ni nujno enaka funkciji 1(x(t),u(t),t) v enačbi (8.2), opravlja pa podobno vlogo pri vrednotenju kakovosti vodenja. Vlogo funkcije Fkon(x(tkon)) iz enačbe (8.2) lahko prevzame funkcija 1(x(t),u(t),t) v enačbi (8.2), če je to za H korakov naprej smiselno. Različne metode prediktivnega vodenja zahtevajo različne formulacije krite- 136 Uvod v metode prediktivnega vodenja hibridnih sistemov rijske funkcije - primerjaj npr. (8.2) in (8.8). Pri nekaterih so poleg tega pogoj za delovanje tudi posebne lastnosti kriterijske funkcije, kot so monotonost ipd. Posebne oblike kriterijskih funkcij pa lahko izhajajo tudi iz samega sistema oz. modela, ki ga uporablja algoritem za prediktivno vodenje. Vse te omejitve in zahteve seveda posredno in neposredno vplivajo na kakovost vodenja in na računsko zahtevnost reševanja problema prediktivnega vodenja. 8.6 Računska zahtevnost optimizacijskega problema Če hočemo sistem voditi v realnem času, se mora algoritem za prediktivno vodenje v vsakem koraku izvesti do konca. To pa lahko pri uporabi predstavlja problem, zato moramo poznati računsko zahtevnost problema vodenja in dejavnike, ki nanjo vplivajo. Računska zahtevnost je odvisna od: • sistema, ki ga želimo voditi, oz. modela sistema, ki ga uporablja algoritem za prediktivno vodenje - torej od števila stanj, vhodov, izhodov, omejitev, (ne)zveznosti, (ne)linearnosti itd.; • predikcijskega horizonta H; • algoritma za prediktivno vodenje, tj. načina reševanja optimizacij skega problema; • kriterijske funkcije. Poudariti je treba, da računska zahtevnost predstavlja enega bistvenih vidikov pri uporabi prediktivnega vodenja v praksi: pri nekaterih kombinacijah zgoraj navedenih dejavnikov se namreč lahko tako poveča, da prediktivnega vodenja sploh ne moremo implementirati. 8.7 Prediktivno vodenje hibridnih sistemov 137 8.7 Prediktivno vodenje hibridnih sistemov Naˇcrtovanje vodenja hibridnih sistemov je zaradi prepletanja zvezne in diskretne dinamike v sploˇsnem zelo zahtevna naloga. V literaturi lahko zato najdemo razliˇcne pristope k reˇsevanju tega problema [126, 127, 107, 30, 31, 26, 17, 135, 29]. Veˇcina pristopov se omejuje na hibridne sisteme v diskretnem ˇcasu, saj s tem zaobidejo veˇc kompleksnih matematiˇcnih problemov – glej razdelek 2.4. V praksi so se uveljavile nekatere metode za optimalno oziroma prediktivno vodenje hibridnih sistemov. Kot smo omenili, je prediktivno vodenje pristop, pri katerem z napovedovanjem obnaˇsanja procesa z uporabo modela doloˇcamo ustrezne regulirne signale. Bistveno je torej modeliranje procesa, kar je zaradi kompleksne hibridne in nelinearne dinamike ˇstevilnih industrijskih procesov pogosto teˇzavna naloga. Za tovrstne sisteme klasiˇcne metode modeliranja in identifikacije, ki temeljijo na teoriji linearnih sistemov, niso primerne, zato potrebujemo posebne pristope [125]. Kaˇze se torej potreba po ustreznih formulacijah modelov, ki naj bodo primerni za prediktivno vodenje, poleg tega pa morajo ustrezno upoˇstevati kompleksnost dinamike sistemov, ki jih ˇzelimo voditi. Modeli morajo torej imeti primerno strukturo, pomembna pa je tudi moˇznost eksperimentalne identifikacije parametrov, ki jih ne moremo ali jih ni smiselno doloˇciti s teoretiˇcnim modeliranjem. Nekatere od formulacij modelov hibridnih sistemov, ki so primerni za uporabo pri prediktivnem vodenju, smo opisali v prejˇsnjih poglavjih. Od formulacije modela hibridnega sistema, ki ga uporabljamo za prediktivno vodenje, je odvisna tudi moˇznost uporabe razliˇcnih pristopov k vodenju. Nekateri algoritmi za vodenje tako zahtevajo toˇcno doloˇceno formulacijo modela hibridnega sistema, da jih sploh lahko uporabimo. V naslednjih poglavjih tretjega dela doktorske disertacije se bomo torej osre-dotoˇcili na nekatere pristope k prediktivnemu vodenju hibridnih sistemov. 138 Uvod v metode prediktivnega vodenja hibridnih sistemov 9. Reševanje mešanih celoštevilskih optimizacij-skih problemov V tem poglavju bomo opisali metodo za prediktivno vodenje hibridnih sistemov na osnovi reševanja mešanih celoštevilskih optimizacijskih problemov, primerno za sisteme, ki jih lahko zapišemo v obliki odsekoma afinega ali ekvivalentnega modela - glej 4. poglavje. 9.1 Odsekoma afini in ekvivalentni modeli Kot smo omenili že v 4. poglavju, je za namene prediktivnega vodenja hibridnih sistemov najbolj razširjena uporaba zapisov sistema, ki ga želimo voditi, v obliki odsekoma afinih in njim ekvivalentnih modelov (predvsem mešanih logično-dinamičnih modelov) [109]. Zapis je podprt z zaokroženo teorijo modeliranja in je bil za namene prediktivnega vodenje že večkrat uporabljen v praksi [22, 102, 66, 39, 65, 43, 27, 44, 119]. Poleg tega postopke modeliranja oz. zapisa sistema olajšujejo tudi nekateri programski paketi oz. jeziki, kot sta npr. Hysdel [136] in Hybrid Identification Toolbox [62]. Formulacije odsekoma afinih in njim ekvivalentnih modelov omogočajo opis dinamike hibridnih linearnih oz. afinih sistemov. Problem prediktivnega vodenja sistemov, ki so formulirani kot odsekoma afini in njim ekvivalentni modeli, lahko pretvorimo v mešani celoštevilski optimizacijski problem (angl. mixed integer optimization problem), ki ga rešujemo s pomočjo programov za reševanje optimizacijskih problemov (angl. solver). 139 140 Reševanje mešanih celoštevilskih optimizacijskih problemov 9.2 Sprotno in predhodno reˇsevanje optimizacijskega problema Pri reševanju optimizacijskega problema ločujemo dva osnovna pristopa. 1. Problem lahko rešujemo v vsakem časovnem koraku sproti (angl. online) [90, 98]. 2. Lahko zastavimo in predhodno (angl. offline) rešimo multiparametričm mešam celoštevilski optimizacij ski problem (angl. multiparametnc mixed integer optimization problem) [25, 38] ter na ta način izkoristimo dejstvo, da je rešitev strukturno enolična. Izkaže se, da jo lahko izrazimo v obliki eksplicitno določenega odsekoma afinega regulirnega zakona [34]. 9.3 Delovanje algoritma za prediktivno vodenje Za uporabo metode za prediktivno vodenje hibridnih sistemov na osnovi reševanja mešanih celoštevilskih optimizacij skih problemov obstajajo različna programska orodja [33], kot sta npr. Multi-Parametric Toolbox [87] in Hybrid Toolbox [19]. V tem razdelku bomo opisali pristop z multiparametričnim programiranjem, kakršnega uporablja programsko orodje Multi-Parametric Toolbox [87]. 9.3.1 Politopi Politopi, ali splošneje poliedri, imajo osrednjo vlogo pri multiparametričnem programiranju. Polieder Q C Rn je konveksna množica, ki je presek končnega števila zaprtih polprostorov, kot podaja enačba (9.1). Q={xeRn; Qx x «-to oglišče, vP pa skupno število oglišč politopa V. Opis s polprostori v enačbi (9.2) označimo kot ^-zapis, opis z oglišči v enačbi (9.3) pa kot V-zapis. Linearna neenačba a'x < b je veljavna za polieder V, če velja za vsak xeV. Podmnožici poliedra rečemo ploskev, če jo za veljavno neenačbo a'x < b lahko predstavimo kot presek, ki ga podaja izraz (9.4). T = V^ {xeW- a'x = b} (9.4) Pravimo, da je politop V G Era, V = {x G Era; Px x < Pc} v minimalni obliki, če bi ga odstranitev katere koli vrstice v Px x < Pc spremenila. Normirani in polnodimenzionalni politop ima enolično določeno minimalno obliko. Osnovne operacije nad politopi Razlika množic, ki določata politopa V in Q, je unija politopov TZ = {J^, kot kaže enačba (9.5). 142 Reševanje mešanih celoštevilskih optimizacijskih problemov TZ = V\Q:={xeRn; xeV, x (£ Q} (9.5) Pontryaginova razlika politopov V in W je politop, ki ga določa enačba (9.6). VeW-.= {xeRn; x + weV,VweW} (9.6) Vsota Minkovskega politopov V in W je politop, ki ga določa enačba (9.7). V®W:={x + weRn; xeV, weW} (9.7) Konveksna ovojnica unije politopov Vi C Rn, i = l,...,pje politop, ki ga določa enačba (9.8). p p p D(IJ Vi) ■= {xeRn; x = Y^aixi> XiEVi, 0 Japtlv^, 2. dosežena je zgornja meja predikcijskega horizonta: h\Vi = H. Omenimo, da algoritem za prediktivno vodenje v vsakem koraku pred začetkom računanja predikcije nastavi trenutno optimalno vrednost kriterijske funkcije na neskončno J^v, = oo. Prvi pogoj poskrbi, da čim prej zavržemo neperspektivne smeri razvoja problemskega drevesa, drugi pa pove, da smo drevo razvili že dovolj v višino, tj. do največjega predikcijskega horizonta H. Če je izpolnjen kateri od pogojev, nadaljujemo, kot je navedeno spodaj. 1. Če vozlišče Vi izpolnjuje prvi pogoj (Ji > Japtlv^), ga kot neperspektivnega zavržemo in razvoj drevesa v tej smeri ustavimo. 2. Če vozlišče V- ne izpolnjuje prvega, torej velja J; < Japtlv^, izpolnjuje pa drugi pogoj (h\Vi = H), to pomeni, da smo dobili novo, bolj optimalno 10.1 Problemsko drevo 159 rešitev zaporedja vrednosti vektorja vhoda Ul+H~l\Vi, kot je bila prejšnja. V tem primeru moramo narediti tri stvari: • shranimo to vozlišče kot novo optimalno vozlišče: V^v, = V*; • shranimo zaporedje Ul+H~l\ViJ ki je privedlo do vozlišča Vi} kot novo optimalno zaporedje: U^~l\Vi = U*+H-l\Vi; • shranimo vrednost kriterijske funkcije, ki pripada vozlišču V-, kot novo optimalno vrednost kriterijske funkcije: J^y. = J*. Poudariti je treba, da v primeru, ko algoritem za prediktivno vodenje šele prvič doseže največji predikcijski horizont h = H, zaporedje vrednosti vektorja vhoda ni novo, ampak šele prvo potencialno optimalno zaporedje U^~l\Vi. Tedaj prvi pogoj (Ji > Japtlv^) nikakor ne more biti izpolnjen, saj je trenutna optimalna vrednost kriterijske funkcije nastavljena na neskončno (Japtlv^ = oo). 10.1.3 Nadaljevanje razvoja problemskega drevesa po izpolnitvi enega od pogojev V primeru, da je prišlo do izpolnitve katerega od pogojev, ki smo ju opisali v razdelku 10.1.2, nadaljujemo razvoj problemskega drevesa z iskanjem optimalnega zaporedja vrednosti vektorja vhoda U^;l\Vi+1 tako, da se vrnemo nazaj po drevesu na najvišji predikcijski korak h, na katerem še najdemo neraziskana vozlišča. Nato nadaljujemo iskanje v smeri še neraziskanih vozlišč, pri čemer najprej izberemo najbolj perspektivno neraziskano vozlišče, tj. tisto, ki ima najmanjšo vrednost kriterijske funkcije na svojem predikcijskem koraku. V algoritmu za prediktivno vodenje se opisani postopek ponavlja, dokler niso raziskana vsa vozlišča v problemskem drevesu in lahko rečemo, da je problemsko drevo (v okviru največjega predikcijskega horizonta H) do konca razvito. Tedaj lahko privzamemo, da je zadnje optimalno zaporedje vrednosti vektorja vhoda v časovnem koraku k tudi končno optimalno zaporedje vrednosti vektorja vhoda. 160 Prediktivno vodenje na osnovi analize dosegljivosti Prvi element iz tega zaporedje uporabimo kot vhod v sistem v časovnem koraku k, kot kaže enačba (10.1). k, apt ,maxK (101) kjer je imax = max{ % : 3 U^~l\Vi} V naslednjem časovnem koraku k + 1 celotni algoritem iskanja optimalnega zaporedja vektorja vhoda ponovimo. 10.2 Analiza dosegljivosti V splošnem lahko ugotovimo, da na sistemu ni vedno mogoče uporabiti vseh mogočih kombinacij vhodov, tj. vseh različnih vrednosti vektorja vhodov - glej npr. vhodni vektor ux v vozlišču VA na sliki sliki 10.1. To je po eni strani posledica omejitev kombinacij vrednosti vhodnega vektorja, ki jih lahko določimo že na začetku načrtovanja vodenja in izhajajo iz zahtev za delovanje sistema, po drugi strani pa možnosti, da določeno zaporedje vrednosti vektorja vhodov pripelje stanja sistema v nedovoljeno področje. Do omejitev v sistemu lahko pride iz različnih razlogov: • fizikalne ipd. omejitve - te morajo biti vključene že v model sistema, ki ga vodimo; • omejitve v zvezi s kakovostjo vodenja - te so navadno implicitno vključene v kriterijski funkciji. Ker na sistemu ne moremo (vedno) uporabiti vseh mogočih kombinacij vrednosti vektorja vhodov oziroma vseh mogočih zaporedij vrednosti vhodnih vektorjev Uk+H~l v okviru največjega predikcijskega horizonta H, je smiselno v algoritmu za prediktivno vodenje to upoštevati in zavreči nemogoče vrednosti vhodnega 10.3 Kriterijska funkcija 161 vektorja. Na ta naˇcin lahko neposredno zmanjˇsamo raˇcunsko zahtevnost problema vodenja sistema. Izbiro vrednosti vhodnega vektorja, ki jih bomo zavrgli, lahko doloˇcimo z uporabo analize dosegljivosti. Algoritem za prediktivno vodenje torej pri gradnji problemskega drevesa, kot smo ga opisali v razdelku 10.1, uporablja strategijo razmejitve in omejitve (angl. branch and bound). To pomeni, da algoritem razvija problemsko drevo, ki ga po eni strani s predikcijo razveji, po drugi strani pa ga, z uporabo analize dosegljivosti, doloˇcenega (omejenega) nabora kombinacij vrednosti vektorja vhoda ter ˇcimprejˇsnjim zaznavanjem in izloˇcanjem neperspektivnih smeri razvoja stanj sistema, omeji. Algoritem za prediktivno vodenje raziskuje samo tista stanja sistema, ki so dosegljiva, oziroma tiste vhode v sistem, ki so dovoljeni. Denimo, da je x(k+h | k) stanje sistema v predikcijskem koraku h. Z analizo dosegljivosti izraˇcunamo vsa mogoˇca stanja sistema xj(k + h + 1 | k) v predikcijskem koraku h + 1. S tem doloˇcimo tudi vse mogoˇce kombinacije vrednosti vektorja vhoda uj(k + h | k), ki sistema ne pripeljejo v nedovoljeno podroˇcje stanj oziroma so sploh dovoljene, kar izhaja iz delovanja samega sistema. Pri tem indeks j oznaˇcuje dosegljiva stanja xj(k + h + 1 | k) in pripadajoˇce vhode uj(k + h | k), ki so sistem pripeljali v ta stanja. 10.3 Kriterijska funkcija Ustrezna doloˇcitev kriterijske funkcije ima velik vpliv na kakovost vodenja, saj neposredno doloˇca obnaˇsanje zaprtozanˇcnega sistema. Poleg tega kriterijska funkcija doloˇca (ne)perspektivnost posameznih vozliˇsˇc v problemskem drevesu in s tem poslediˇcno izbiro vozliˇsˇca, iz katerega bomo nadaljevali razvoj problemskega drevesa – glej razdelek 10.1 – zato je povezana tudi z velikostjo do konca razvitega problemskega drevesa. S tem pa posredno vpliva tudi na raˇcunsko zahtevnost algoritma za prediktivno vodenje. 162 Prediktivno vodenje na osnovi analize dosegljivosti Kriterijsko funkcijo (za vozlišče V-), v kateri je lahko vsebovan tudi referenčni potek signalov, v obliki, ki je primerna za uporabo hibridnega mehkega modela (glej 5. poglavje) zapišemo, kot kaže enačba (10.2). Ji = K*kti k,Qj£i k,£4fc+7l_1 k,M k) (10-2) V enačbi (10.2) označuje X%+* \v. zaporedje vektorjev zveznih stanj x, QkXi k Je zaporedje diskretnih stanj q, Ul+h~l \v. pa zaporedje vhodov u, ki so pripeljali v vozlišče V*. h \v. označuje predikcijski korak v vozlišču V*. 10.3.1 Pogoj za ustreznost kriterijske funkcije Kot smo opisali v razdelku 10.1, je najboljši način za doseganje časovne učinkovitosti algoritma za prediktivno vodenje ta, da razvoj drevesa nadaljujemo iz tistega vozlišča, ki je v določenem predikcijskem koraku h najbolj perspektivno. Perspektivnost posameznih vozlišč v predikcijskem koraku h določimo glede vrednosti kriterijske funkcije, ki jim pripadajo. Če hočemo, da bi predlagani mehanizem algoritma za prediktivno vodenje deloval, moramo zagotoviti, da vrednost kriterijske funkcije v vsakem primeru z višanjem predikcijskega koraka h proti končnemu predikcijskemu horizontu H monotono narašča, kot je zapisano v izrazu (10.3). Kx£i k,Q^i k,£4fc+7l_1 k, M k)- -l(xkti \vi,Qkkthi ki,ul+h~l k,fc,h\Vi-i)>o (10.3) z&h = 2,3,...,H Na ta način smo lahko prepričani, da v neperspektivnih smereh razvoja problemskega drevesa na največjem predikcijskem horizontu H ne bomo dobili boljše rešitve, kot je trenutna optimalna rešitev U^+^l\Vi . Če torej kriterijska funkcija 10.3 Kriterijska funkcija 163 (10.2) izpolnjuje pogoj (10.3), lahko neperspektivne smeri razvoja brez izgube zavržemo. Na ta način lahko bistveno zmanjšamo razvejanost do konca raziskanega problemskega drevesa in s tem računsko zahtevnost algoritma za prediktivno vodenje. 10.3.2 Predlog oblike kriterijske funkcije V nadaljevanju bomo opisali predlog uporabne1 oblike kriterijske funkcije, ki zadošča pogoju monotonega naraščanja (10.3). Kriterijska funkcija naj ima obliko, ki jo podaja izraz (10.4). Pri tem naj veljata pogoja v izrazih (10.5) in (10.6). Ji = K*kti k, QJK k,ukk+h~l \Vi,k,h |yj = = UXk+tl \v-,Qkkitl \v-,Uk+h~2 \v;k,h\v. -1)+ + + (10.4) + Al(x(k + h\k) \Vi,q(k + h\ k) \v.,u(k + h-l | k) \Vi,k,h\v.) za vsak Vi in h= 1,2,..., H Al(x(k + h\ k) \v.,q(k + h\k) \Vi,u(k + h-l \k) \Vi,k,h\Vi) >0 za vsak Vi in h= l,2,..., H /((),(), (),fc,0) = 0 za h = 0 Kriterijska funkcija v vozlišču V je torej v glede na predikcijski korak h določena kot vsota dveh členov. • Prvi člen določa vrednost kriterijske funkcije XZ uporabno obliko kriterijske funkcije mislimo obliko, ki jo lahko uporabimo pri večini sistemov, ki jih želimo voditi z algoritmom za prediktivno vodenje. 164 Prediktivno vodenje na osnovi analize dosegljivosti KXkkXi~l W^Qttl'1 |vt,U^+h-2 |Vi,k,h |Vi -1), izračunano v vozlišču v prejšnjem predikcijskem koraku h - 1, iz katerega je sistem prišel v trenutno vozlišče Vi. Omenimo, da je vrednost kriterijske funkcije v korenini problemskega drevesa, tj. v izhodiščnem vozlišču Vx enaka 0, kar določa enačba (10.6). • Drugi člen je poljubna nenegativna (glej pogoj (10.5)) funkcija Al(x(k + h | k) |Vi,q(k + h | k) |Vi,u(k + h- 1 | k) |Vi,k,h |v.), ki oceni stopnjo optimalnosti vodenja v trenutnem vozlišču. V veliki večini primerov lahko kriterij kakovosti vodenja A/ izrazimo z vsoto ustrezno (pozitivno) obteženih normiranih2 razlik med dejanskim in želenim potekom vrednosti komponent vektorja stanj sistema oziroma vektorja vhodov v sistem. V tem primeru je funkcija A/ nenegativna in s tem je izpolnjen pogoj (10.5). Po potrebi lahko v funkciji A/ upoštevamo tudi odvisnost od koraka v diskretnem času k - če je npr. referenčni potek signalov že vsebovan v kriterijski funkciji - pa tudi predikcijskega koraka h - če so uteži v kriterijski funkciji odvisne od predikcijskega koraka h, v katerem se nahaja vozlišče V-. Pozorni moramo biti le, da je pogoj (10.5) vedno izpolnjen. Vrednost Al(x(k + h | k) |Vi,q(k + h | k) |v.,u{k + h-l | k) |Vi,k,h |Vi) se prišteva vsoti vrednosti kriterija kakovosti vodenja, ki so bile izračunane vzdolž poti od korenine problemskega drevesa Vx do vozlišča V*. Kriterijsko funkcijo lahko torej zapišemo v nerekurzivni obliki, kot jo podaja enačba (10.7). J% = h (10.7) ^Al(x(k + j |k) |Vi,q(k + j | k) |Vi,u(k + j-l | k) |Vi,k,j |Vi) 3=0 2Uporabne so različne vektorske norme || • ||, ki določajo skalarno vrednost razdalje med vektorjema. 10.4 Računska zahtevnost 165 Glede na to, da kriterijska funkcija A/ ni omejena z ničemer drugim kot s pogojem (10.5), ki pa ga ni težko izpolniti, lahko rečemo, da je predlagana oblika kriterijske funkcije uporabna v praksi. Če je pogoj (10.5) izpolnjen, lahko dokažemo, da je izpolnjen tudi pogoj za delovanje algoritma za prediktivno vodenje (10.3): če v izraz (10.3) vstavimo razčlenjeno kriterijsko funkcijo v izrazu (10.4), dobimo po krajšavi pogoj (10.5). 10.4 Računska zahtevnost Računska zahtevnost obravnavanega algoritma za prediktivno vodenje je prvenstveno odvisna od največjega predikcijskega horizonta H, ki določa višino problemskega drevesa, in števila diskretnih vhodov z ustreznim številom mogočih vrednosti, ki jih lahko zavzame posamezen diskretni vhod, kar vpliva na razvejanost drevesa. Denimo, da lahko «-ti diskretni vhod, kjer je i G {1,...,/}, zavzame rm različnih diskretnih vrednosti. V tem primeru lahko število vseh mogočih kombinacij vrednosti vhodnega vektorja izračunamo, kot kaže enačba (10.8). M0 = ml- ...-mi (10.8) Množico mogočih zaporedij vhodnih vektorjev podaja izraz (10.9). Ul+H~l G {«i,...,uMo}H (10.9) V izrazu (10.9) označuje Uj, kjer je j G {1,..., M0}, enega od mogočih vhodnih vektorjev. Ocena računske zahtevnosti obravnavanega algoritma za prediktivno vodenje je sorazmerna velikosti nabora vseh mogočih zaporedij vrednosti vektorja vhoda M0 v okviru največjega predikcijskega horizonta H, ki jih ocenjuje algoritem v 166 Prediktivno vodenje na osnovi analize dosegljivosti enem časovnem koraku k. Omeniti je treba, da ocena velja za večja števila M0 in H, saj imajo poraba časa zaradi inicializacije in ostali režijski stroški pri manjših številih večji relativni vpliv. Oceno računske zahtevnosti podaja izraz (10.10). Co oc M0H (10.10) 10.4.1 Zmanjšanje računske zahtevnosti z uporabo analize dosegljivosti Prvi pristop k zmanjšanju računske zahtevnosti v obravnavanem algoritmu za prediktivno vodenje predstavlja uporaba analize dosegljivosti - glej razdelek 10.2. Učinkovitost pristopa oz. stopnja zmanjšanja računske zahtevnosti je tesno povezana s sistemom, ki ga želimo voditi, oz. njegovim modelom, izbiro kriterijske funkcije, referenčno trajektorijo in trenutnim stanjem sistema, zato je v splošnem ni mogoče enostavno računsko določiti. 10.4.2 Zmanjšanje računske zahtevnosti z omejitvijo nabora mogočih kombinacij vrednosti vektorja vhoda Zaradi fizičnih in tehnoloških zahtev in pogojev v sistemu, ki ga želimo voditi, je v splošnem smiselno že na začetku načrtovanja vodenja omejiti nabor mogočih kombinacij vrednosti vektorja vhoda. To povzroči zmanjšanje računske zahtevnosti problema vodenja. Predpostavimo, da smo nabor mogočih kombinacij vrednosti vektorja vhoda, ki izhajajo iz zahtev za delovanje sistema, omejili na M < M0. V tem primeru množico mogočih zaporedij vhodnih vektorjev podaja izraz (10.11). ut+H-le{uu...,uM}H (10.11) V izrazu (10.11) označuje Uj, kjer je j G {1,..., M}, enega od mogočih vho- 10.4 Računska zahtevnost 167 dnih vektorjev. Kot smo že omenili, je ocena računske zahtevnosti obravnavanega algoritma za prediktivno vodenje sorazmerna velikosti nabora vseh mogočih zaporedij vrednosti vektorja vhoda v okviru največjega predikcijskega horizonta H, ki jih ocenjuje algoritem v enem časovnem koraku k. V tem primeru jo podaja enačba (10.12). CM oc Mh (10.12) Kot je zapisano v enačbi (10.13), lahko z zmanjšanjem nabora kombinacij vrednosti vektorja vhoda zmanjšamo tudi kompleksnost problema vodenja za faktor, ki je eksponentno odvisen od končnega predikcijskega horizonta H, osnova pa je odvisna od stopnje zmanjšanja nabora kombinacij vrednosti vektorja vhoda. Zmanjšanje števila vseh mogočih kombinacij vrednosti vektorja vhoda M0 na ustrezen nabor mogočih kombinacij vrednosti vektorja vhoda M ima velik vpliv na kompleksnost problema vodenja, kar še posebej velja v primerih, ko je izbrana večja vrednost največjega predikcijskega horizonta H. 10.4.3 Zmanjšanje računske zahtevnosti z zadrževanjem vrednosti vektorja vhodov skozi več časovnih korakov V modelih, ki jih uporabljamo za prediktivno vodenje, je čas vzorčenja ts vezan na več dejavnikov: dinamiko3 sistema, ki ga vodimo, želeno natančnost4 predikcije in morebitni čas vzorčenja senzorjev,5 ki jih v sistemu za vodenje uporabljamo. 3Hitrim sistemom ustreza krajši, počasnejšim pa daljši čas vzorčenja ts. 4Za doseganje ustrezne natančnosti predikcije moramo uporabiti dovolj kratek čas vzorčenja ts- 5 V primeru, da senzorji merjeno količino vzorčijo, je potrebna ustrezna sinhronizacija. Če senzorji podajajo merjeno količino zvezno, nimajo vpliva na čas vzorčenja ts. 168 Prediktivno vodenje na osnovi analize dosegljivosti V splošnem želimo načrtati prediktivno vodenje, ki v vsakem koraku izvaja predikcijo za določen največji predikcijski čas tpred naprej. Z največjim predikcij-skim časom pa sta povezana tudi največji predikcijski horizont H in čas vzorčenja ts, kot kaže enačba (10.14). ts Čas vzorčenja ts je določen glede na sistem, ki ga želimo voditi. Dejavniki, ki vplivajo na čas vzorčenja, so dinamika sistema, potrebna natančnost pre-dikcije, morebitni čas vzorčenja senzorjev ipd. - glej tudi razdelka 2.4 in 8.3. Kot vidimo iz enačbe (10.14), lahko ob izbranem času vzorčenja ts pri večanju največjega predikcijskega časa tpred največji predikcijski horizont H precej naraste. Z naraščanjem največjega predikcijskega horizonta H v splošnem eksponentno narašča tudi računska zahtevnost problema prediktivnega vodenja, kar pa lahko kmalu privede do situacije, ko je čas, ki ga porabi algoritem za prediktivno vodenje za izračun rešitve, daljši od časa vzorčenja ts, tako da vodenje sistema v realnem času ni več mogoče. Opisani situaciji se lahko v mnogo primerih izognemo z zadrževanjem vrednosti vektorja vhodov skozi več časovnih korakov. V mnogo sistemih lahko namreč dopustimo (ali celo želimo), da se vrednosti vektorja vhodov ne spreminjajo z vsakim časom vzorčenja ts. Če je npr. čas vzorčenja ts relativno kratek, ak-tuatorji pa bi bili s spreminjanjem vhodnega vektorja v vsakem koraku preveč obremenjeni, lahko predpišemo, naj se vektor vhodov spreminja samo vsakih Z časovnih korakov, tj. da zadrži svojo vrednost za čas Z ■ ts. Algoritem za prediktivno vodenje je potrebno v primeru zadrževanja vrednosti vektorja vhodov skozi več časovnih korakov prilagoditi. Upoštevati moramo vrednost spremenljivke parametra Z: razvoj problemskega drevesa - glej razdelek 10.1 - moramo nekoliko modificirati. Prehod na naslednji predikcijski horizont izvedemo s predikcijo preko vmesnih 10.4 Računska zahtevnost 169 vozlišč Vi,m,z. Pri tem indeksi i, m, kjer velja m G {1, 2,..., M}, in z, kjer velja z E {2, 3,..., Z}, pomenijo sledeče: • i označuje, iz katerega vozlišča izhajamo; • m označuje, v kateri smeri peljemo sistem, tj. katera iz nabora kombinacij vrednosti vektorja vhoda pripada veji v vmesno vozlišče Vi,m,z\ • z označuje, na kateri stopnji na poti proti naslednjemu predikcijskemu koraku h se nahaja vmesno vozlišče Vi,m,z- Ugotovimo torej, da mora algoritem, da bi dosegel naslednji predikcijski korak, predikcijo izvesti Z-krat. Slika 10.2 prikazuje spremenjen izsek problemskega drevesa v primeru zadrževanja vrednosti vektorja vhodov skozi Z = 3 časovne korake za M = 3 mogoče različne vrednosti vhodnega vektorja. Ker v splošnem želimo načrtati prediktivno vodenje, ki v vsakem koraku izvaja predikcijo za izbrani največji predikcijski čas tpred naprej, hkrati pa predpišemo, da naj vektor vhodov zadrži svojo vrednost za čas Z ■ tS, se z večanjem števila Z manjša potrebni največji predikcijski horizont HZ, kot je zapisano v enačbi (10.15). tS Z y J Če predpostavimo, da sta izbrani največji predikcijski čas tpred in čas vzorčenja tS fiksna - torej velja enačba (10.16) - lahko ocenimo računsko zahtevnost problema prediktivnega vodenja z zadrževanjem vrednosti vektorja vhodov skozi Z časovnih korakov, kot jo podaja izraz (10.17). HZ = Z-H (10.16) CZ oc Z-MHZ = Z-MHZ (10.17) 170 Prediktivno vodenje na osnovi analize dosegljivosti h = \ h = 0 Slika 10.2: Primer izseka problemskega drevesa v primeru zadrževanja vrednosti vektorja vhodov skozi Z = 3 časovne korake za M = 3 mogoče različne vrednosti vhodnega vektorja. Z zadrževanjem vrednosti vektorja vhodov skozi Z časovnih korakov lahko torej zmanjšamo računsko zahtevnost problema vodenja glede na (10.12). Oceno stopnje zmanjšanja računske kompleksnosti podaja enačba (10.18). CZ Z ·MHZ CM ≈MH Z Z H-(Z-l) M((z-1)-hZ) (10.18) Z manjšanjem potrebnega največjega predikcijskega horizonta H se zmanjša tudi računska zahtevnost problema prediktivnega vodenja. Dodatna obremenitev je sicer računanje Z - 1 vmesnih stanj sistema pri predikciji, ki ima za posledico linearno naraščanje računske zahtevnosti, kar pa je v splošnem obvladljiv problem. _ _ 10.4 Računska zahtevnost 171 Poleg tega smo zaradi zmanjšanja največjega predikcijskega horizonta s H na Hz računsko zahtevnost eksponentno zmanjšali, to pa pomeni bistven prihranek pri računski zahtevnosti. Z zadrževanjem vrednosti vektorja vhodov skozi Z časovnih korakov lahko dosežemo več učinkov: • zmanjšamo potrebni največji predikcijski horizont H in s tem računsko zahtevnost algoritma za prediktivno vodenje; • omogočimo pri določenem času vzorčenja ts večji največji predikcijski čas tpred; • omogočimo pri izbranem največjem predikcijskem času tpred manjši čas vzorčenja ts; • razbremenimo aktuatorje, ki bi bili s spreminjanjem vhodnega signala v vsakem časovnem koraku preobremenjeni. Zadrževanje vrednosti vektorja vhodov skozi Z časovnih korakov torej po eni strani lahko omogoči vodenje tudi v primerih, ko imamo težave s preveliko računsko zahtevnostjo problema vodenja, po drugi strani pa lahko razbremeni sistem oz. aktuatorje morebitne prevelike frekvence spreminjanja vrednosti vektorja vhoda. Zaključimo lahko, da je pristop z zadrževanjem vrednosti vektorja vhodov skozi Z časovnih korakov primeren predvsem za sisteme, pri katerih ne potrebujemo ali ne želimo sprememb vhodnega signala v vsakem časovnem koraku k, npr. za toge sisteme. Nastavitev parametra Z je odvisna od sistema in zahtev pri vodenju: večji Z poveča prej naštete učinke in lahko izboljša kakovost vodenja, če le ni frekvenca sprememb vhodnega signala preveč omejena. Ustrezno vrednost parametra Z določimo s poskušanjem, pri čemer si lahko pomagamo s simulacijami. 172 Prediktivno vodenje na osnovi analize dosegljivosti 10.5 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju Algoritem za prediktivno vodenje hibridnih sistemov z diskretnimi vhodi na osnovi analize dosegljivosti smo preizkusili na primeru vodenja šaržnega reaktorja, ki je opisan v 3. poglavju. 10.5.1 Matematični model šaržnega reaktorja Matematični model šaržnega reaktorja je podan v enačbah v razdelku 3.2. Dinamiko v jedru šaržnega reaktorja opisuje enačba (3.1), dinamiko v plašču pa enačba (3.2). Masa komponent v jedru šaržnega reaktorja je m = 600 kg, masa vode v plašču je mw = 40 kg. Specifična toplota komponent v jedru cw = 4200 J kg"1 K"1, specifična toplota vode v plašču je cw = 4200 J kg"1 K"1. Pretok vode v plašču znaša (p = 1, 6 kg s"1, prevodnost toplotnega stika med jedrom in plaščem znaša A = 420 W m"2 K"1, prevodnost toplotnega stika med plaščem in okolico znaša A0 = 84 W m"2 K"1, površina toplotnega stika med jedrom in plaščem znaša S = 2 m2, površina toplotnega stika med plaščem in okolico znaša S0 = 2 m2. Temperatura sveže vhodne vode je lahko TC = 12 oC ali TH = 75 oC. 10.5.2 Omejitev nabora mogočih kombinacij vhodnih vektorjev Kot smo opisali v razdelku 10.4.2, je v splošnem smiselno že na začetku načrtovanja vodenja omejiti nabor mogočih kombinacij vrednosti vektorja vhoda, kar povzroči zmanjšanje računske zahtevnosti problema vodenja. Omejitev izhaja iz fizičnih in tehnoloških zahtev in pogojev v sistemu, ki ga želimo voditi, saj na ta način izločimo vse nemogoče ali nesmiselne kombinacije vhodnih vektorjev. V tem smislu lahko določimo matriko vhodnih vektorjev P, ki jo podaja izraz (10.19). 10.5 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 173 P O 0,01 0,02 0,05 0,1 1 1 0 0 O O 0 0 1 11 1 1 110 (10.19) V izrazu (10.19) označuje vsak stolpec enega izmed mogočih vhodnih vektorjev. Vrstice v matriki vhodnih vektorjev P imajo naslednji pomen: • prva vrstica označuje položaj mešalnega ventila kM e {0,0.01,0.02,0.05,0.1,1}; • druga vrstica označuje položaj zapornega ventila za hladno vodo kce {0,1}; • tretja vrstica označuje položaj zapornega ventila za vročo vodo kHE {1,0}. 10.5.3 Vodenje Algoritem za prediktivno vodenje, ki ga preizkušamo v tem eksperimentu, za delovanje potrebuje primeren matematični model šaržnega reaktorja. V našem primeru smo izbrali hibridni mehki model, katerega razvoj je natančno opisan v razdelku 7.4.1. Pri vodenju temperature v jedru šaržnega reaktorja smo izbrali največji pre-dikcijski horizont Hz = 4. Število časovnih korakov, skozi katere algoritem zadržuje vrednosti vektorja vhodov, smo nastavili na Z = 15 - glej razdelek 10.4.3. Na ta način algoritem upošteva predikcijo obnašanja sistema za H = Hz ■ Z = 4 • 15 = 60 korakov oz. tpred = H ■ ts = 60 • 10 s = 600 s naprej. _ 174 Prediktivno vodenje na osnovi analize dosegljivosti 10.5.4 Kriterijska funkcija Kot smo opisali v razdelku 10.3, ima ustrezna doloˇcitev kriterijske funkcije velik vpliv na kakovost vodenja, saj neposredno doloˇca obnaˇsanje zaprtozanˇcnega sistema, poleg tega pa je povezana tudi z velikostjo do konca razvitega problemskega drevesa, s tem pa posredno vpliva tudi na raˇcunsko zahtevnost algoritma za prediktivno vodenje. V naˇsem primeru mora kriterijska funkcija, ki jo uporabljamo v algoritmu, zadoˇsˇcati pogoju, da njena vrednost v vsakem primeru z viˇsanjem predikcijskega koraka h proti konˇcnemu predikcijskemu horizontu H monotono naraˇsˇca, kot je zapisano v izrazu (10.3) v razdelku 10.3.1. Pri vodenju temperature v jedru ˇsarˇznega reaktorja smo si pomagali s predlogom oblike ustrezne kriterijske funkcije, ki je opisana v izrazih (10.4), (10.5) in (10.6) v razdelku 10.3.2. 10.5.5 Rezultati – 1. pristop Preizkusili smo vodenje z uporabo preproste kriterijske funkcije, ki jo podajajo enaˇcbe (10.20), (10.21) in (10.22). Ji = KxkkXi k,Qkkthi \v^uhk+h-1 k,k,h\Vi) = = Witt1 Iv^QtXi'1 \v,uhk+h~2 k,k,h\Vl -i)+ + Al(x(k + h\ k) \v.,q(k + h\k) \Vi,u(k + h-l \k) \Vi,k,h\Vi) za vsak Vi in h= l,2,..., H Al(x(k + h\ k) \v.,q(k + h\k) \Vi,u(k + h-l \k) \Vi,k,h\Vi) = = (T(k + h\k)-Tref(k + h\ k)f /((),(), (), fc,0) = 0 za h = O (10.20) (10.21) (10.22) 10.5 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 175 65 60 55 50 45 40 35 30 25 JAr^vvN^ J / / / / \ \ j\ \ \ - \ j 0.5 1.5 t [s] 2.5 x 10 Slika 10.3: Temperatura v jedru reaktorja T (polna črta) in referenčna temperatura Tref (prekinjena črta). Očitno je, da kriterijska funkcija, ki jo podajajo enačbe (10.20), (10.21) in (10.22), zadostuje pogoju (10.5). Opisana kriterijska funkcija upošteva kvadrat odstopanja temperature v jedru T, ki jo določa predikcijski model, od referenčne temperature Tref. Rezultati eksperimenta so prikazani na naslednjih slikah. Slika 10.3 prikazuje potek temperature v jedru šaržnega reaktorja T in referenčne temperature Tref. Slika 10.4 prikazuje potek temperature v plašču šaržnega reaktorja Tw in položaje ventilov kM, kH in kc. Ugotovimo lahko, da temperatura v jedru reaktorja T sicer sledi referenčni temperaturi Tref, vendar se kljub temu kažejo trije očitni vidiki vodenja, kjer je potrebna izboljšava. 0 1 2 3 176 Prediktivno vodenje na osnovi analize dosegljivosti 60 40 20 r \ivi| V 1 vuVAAv-i 'n / 0 0.5 0.5 0.5 0.5 0.5 nJ L-i Lru LrI\r~v 1.5 1.5 1.5 1.5 t [s] 2.5 2.5 2.5 2.5 x 10 x 10 x 10 x 10 Slika 10.4: Temperatura v plašču reaktorja Tw in položaji ventilov kM, kH in kC. • Položaji ventilov se pretirano spreminjajo. • V nekaterih časovnih intervalih lahko opazimo, da se vodenje pretežno izvaja s spreminjanjem položaja zapornih ventilov kH in kC, pri čemer ostaja mešalni ventil kM relativno odprt, kar pri obratovanju v splošnem ni zaželeno. Takšno obnašanje zaprtozančnega sistema smo sicer pričakovali, saj se v primeru uporabe kriterijske funkcije, ki jo podajajo enačbe (10.20), (10.21) in (10.22), zaporna ventila kH in kC obnašata kot še en mešalni ventil, ki pa ima večji6 vpliv na temperaturo v jedru od dejanskega mešalnega ventila kM. • Poraba sveže vhodne vode je prevelika, kar ima za posledico preveliko porabo energije pri obdelavi šarže. Razlog za to je pretirana odprtost 6Razlog za večji vpliv je hitrejša dinamika zaradi večjega temperaturnega razpona. 1 2 3 1 0.5 0 0 1 2 1 0.5 0 0 1 2 3 1 0 0 1 2 3 10.5 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 177 mešalnega ventila kM- 10.5.6 Rezultati – 2. pristop 65 60 55 50 45 40 35 30 25 / I \ / / \ / v \ / / \ \ \ \ / / 0.5 1.5 t [s] 2.5 x 10 Slika 10.5: Temperatura v jedru reaktorja T (polna črta) in referenčna temperatura Tref (prekinjena črta). Problematične vidike vodenja, ki so se pojavili pri pristopu v razdelku 10.5.5, smo poskusili izboljšati z vključitvijo členov v kriterijsko funkcijo, ki kaznujejo spreminjanje položaja ventilov kM, kH in kc. Spremenjeno kriterijsko funkcijo podajajo enačbe (10.20), (10.23) in (10.22). Al(x(k + h\k) \Vi,q(k + h\ k) \v.,u(k + h-l | k) |v*,Mk) = Wl {T {k + h\k)- Tref(k + h | k))2 + +w2 (kc{k + h\k)- kH(k + h-l\k)) + +w3 \kM(k + h\k)- kM(k + h-l\k)\ kH(k + h-l\k) (10.23) 0 1 2 3 _ 178 Prediktivno vodenje na osnovi analize dosegljivosti 60 40 20 0 0.5 0.5 0.5 0.5 0.5 1.5 1.5 1.5 1.5 t [s] 2.5 2.5 2.5 2.5 x 10 x 10 x 10 x 10 Slika 10.6: Temperatura v plašču reaktorja Tw in položaji ventilov kM, kH in kc. Členi kriterijske funkcije v enačbi (10.23) so uteženi, kot je opisano v nadaljevanju. • Kvadrat odstopanja temperature v jedru T, ki jo določa predikcijski model, od referenčne temperature Tref, je utežen glede na izbiro parametra Z. V našem primeru je torej wx j_ • Utež w2 utežuje preklop zapornih ventilov kH in kc na hladno svežo vhodno vodo. To preprečuje preklop položaja zapornih ventilov kH in kc, kadar se referenčni signal Tref ne spremeni stopničasto. Utež w2 moramo nastaviti na čim večjo vrednost, še vedno pa dovolj majhno, da algoritem dopusti preklop položaja zapornih ventilov kH in kc, ko je to res potrebno. V našem primeru je w2 = 15. • Utež w3 preprečuje prekomerno premikanje mešalnega ventila. Vseeno pa 1 2 3 1 0.5 0 0 1 2 1 0.5 0 0 1 2 3 1 0 0 1 2 3 10.5 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 179 moramo utež w3 nastaviti na dovolj majhno vrednost, da onemogočimo vodenje samo z zapornimi ventili, kot pri pristopu iz razdelka 10.5.5. V našem primeru je w3 = 0,03. Rezultati eksperimenta so prikazani na naslednjih slikah. Slika 10.5 prikazuje potek temperature v jedru šaržnega reaktorja T in referenčne temperature Tref. Slika 10.6 prikazuje potek temperature v plašču šaržnega reaktorja Tw in položaje ventilov kM, kH in kc. Ugotovimo lahko, da temperatura v jedru reaktorja T dobro sledi referenčni temperaturi Tref, poleg tega pa smo tudi ustrezno izboljšali problematične vidike vodenja, ki so se pojavili pri pristopu v razdelku 10.5.5: položaji ventilov se manj spreminjajo; regulacijo izvaja pretežno mešalni ventil, medtem ko zaporna ventila preklapljata samo pri večjih spremembah reference; poraba sveže vhodne vode se je bistveno zmanjšala (za natančnejše podatke glej [78]). 10.5.7 Primerjava prediktivnega vodenja s hibridnim mehkim in hibridnim linearnim modelom Pristop iz razdelka 10.5.6 smo primerjali s prediktivnim vodenjem s hibridnim linearnim modelom. Hibridni linearni model za temperaturo v plašču šaržnega reaktorja Tw smo izpeljali iz hibridnega mehkega modela - glej enačbo (7.10) v razdelku 7.4.1. Hibridni mehki model lineariziramo v bližini središča območja delovanja, in sicer tako, da uporabimo fiksen vektor normiranih stopenj pripadnosti, kot kaže enačba (10.24). ß = [0 0 1 0 0] (10.24) Izhod modela je zapisan v enačbi (10.25), parametri pa v enačbi (10.26). 180 Prediktivno vodenje na osnovi analize dosegljivosti 65 60 55 50 45 40 35 30 25 ^^—""" 1 1 \ ' / / / \ \ \ \ / \ " 0.5 1.5 t [s] 2.5 x 10 Slika 10.7: Temperatura v jedru reaktorja T (polna črta) in referenčna temperatura Tref (prekinjena črta). fw(k + l) ®lHn[Tw(k) T{k) kM{k) 1]T; kc = 0/\kH = l ®1lin[Tw{k) T{k) kM{k) 1]T; kc = 1 /\kH = 0 (10.25) ®i,un = [0,9429 0,0395 10,5969 0,5273]T ©2)Hn = [0, 9322 0,0466 -7,8013 0,5650]T (10.26) Rezultati eksperimenta so prikazani na naslednjih slikah. Slika 10.7 prikazuje potek temperature v jedru šaržnega reaktorja T in referenčne temperature Tref. Slika 10.8 prikazuje potek temperature v plašču šaržnega reaktorja Tw in položaje ventilov kM, kH in kc. Razlika med pristopoma v razdelku 10.5.6 in razdelku 10.5.7 je samo v modelu, 0 1 2 3 _ 10.5 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 181 60 40 20 0 0.5 0.5 0.5 0.5 0.5 1.5 1.5 1.5 1.5 t [s] 2.5 2.5 2.5 2.5 x 10 x 10 x 10 x 10 Slika 10.8: Temperatura v plaˇsˇcu reaktorja Tw in poloˇzaji ventilov kM, kH in kc. ki ga uporablja algoritem za prediktivno vodenje. Kriterijska funkcija in vsi ostali parametri vodenja so pri obeh pristopih isti. Na slikah 10.9, 10.10 in 10.11 so prikazani pribliˇzani izseki primerjave poteka temperature v jedru ˇsarˇznega reaktorja T za pristop, pri katerem je uporabljen hibridni mehki model, in pristop, pri katerem je uporabljen hibridni linearni model. Slika 10.9 prikazuje prvi del poskusa, kjer je referenˇcna temperatura Tref = 62 oC. Ugotovimo lahko, da pri vodenju s hibridnim mehkim modelom prej doseˇzemo ustaljeno stanje kot pri vodenju s hibridnim linearnim modelom. Kljub hitremu dosegu referenˇcne vrednosti pa algoritem (v obeh primerih) zagotavlja vodenje brez prevzpona, kar je tudi ena od prednosti pristopov s prediktivnim vodenjem. 1 2 3 1 0.5 0 0 1 2 3 1 0.5 0 0 1 2 3 1 0 0 1 2 3 182 Prediktivno vodenje na osnovi analize dosegljivosti 2000 3000 4000 5000 6000 7000 8000 9000 t [s] Slika 10.9: Primerjava uporabe hibridnega mehkega modela (glej razdelek 10.5.6) in hibridnega linearnega modela (glej razdelek 10.5.7): temperatura v jedru reaktorja T (polna ˇcrta) in referenˇcna temperatura Tref (prekinjena ˇcrta) – izsek. Podobno lahko ugotovimo tudi v drugem delu poskusa – na sliki 10.10 – kjer je referenˇcna temperatura Tref = 26 oC. V tretjem delu poskusa, tj. v primeru stopniˇcaste spremembe referenˇcne vrednosti na Tref = 35 oC – glej sliko 10.11 – predstavlja hibridni linearni model boljˇsi pribliˇzek dinamike dejanskega sistema, kot pri Tref = 62 oC ali Tref = 26 oC, zato sta tudi odziva zaprtozanˇcnega sistema pri uporabi vodenja s hibridnim mehkim modelom in vodenja s hibridnim linearnim modelom precej bolj podobna. Kljub temu pa dobimo pri vodenju s hibridnim mehkim modelom tudi v tem delu poskusa boljˇse rezultate kot pri vodenju s hibridnim linearnim modelom. 10.5 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 183 29 28.5 28 27.5 27 26.5 26 25.5 t [s] x 10 Slika 10.10: Primerjava uporabe hibridnega mehkega modela (glej razdelek 10.5.6) in hibridnega linearnega modela (glej razdelek 10.5.7): temperatura v jedru reaktorja T (polna ˇcrta) in referenˇcna temperatura Tref (prekinjena ˇcrta) – izsek. 10.5.8 Komentar Uporabnost algoritma za prediktivno vodenje hibridnih sistemov z diskretnimi vhodi na osnovi analize dosegljivosti smo preverili na primeru vodenja ˇsarˇznega reaktorja. Delovanje smo preizkusili s tremi razliˇcicami algoritma za prediktivno vodenje. • V prvi razliˇcici smo preizkusili vodenje z uporabo preproste kriterijske funkcije, ki jo podajajo enaˇcbe (10.20), (10.21) in (10.22). Algoritem je za pre-dikcijo uporabljal hibridni mehki model, ki je natanˇcno opisan v razdelku 7.4.1. 184 Prediktivno vodenje na osnovi analize dosegljivosti 35.5 35 34.5 34 33.5 33 32.5 32 2 2.1 2.2 2.3 2.4 2.5 2.6 2.7 t [s] x 104 Slika 10.11: Primerjava uporabe hibridnega mehkega modela (glej razdelek 10.5.6) in hibridnega linearnega modela (glej razdelek 10.5.7): temperatura v jedru reaktorja T (polna črta) in referenčna temperatura Tref (prekinjena črta) - izsek. Ugotovili smo, da temperatura v jedru reaktorja T sicer sledi referenčni temperaturi Tref, vendar se kljub temu kažejo nekateri vidiki vodenja, kjer so potrebne izboljšave, in sicer predvsem v zvezi s spreminjanjem položaja ventilov kM, kH in kc. • V drugi različici smo kriterijsko funkcijo razširili s členi, ki kaznujejo spreminjanje položaja ventilov kM, kH in kc, kot kaže enačba (10.23). Ugotovili smo, da temperatura v jedru reaktorja T dobro sledi referenčni temperaturi Tref, poleg tega pa smo tudi ustrezno izboljšali problematične vidike vodenja, ki so se pojavili pri prvi različici. -hibridni mehki model -hibridni linearni model 10.5 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 185 • V zadnji razliˇcici smo v algoritmu iz drugega pristopa hibridni mehki model zamenjali s hibridnim linearnim modelom. Ugotovili smo, da pri vodenju s hibridnim mehkim modelom prej doseˇzemo ustaljeno stanje kot pri vodenju s hibridnim linearnim modelom, predvsem v primerih, ko je delovna toˇcka bolj oddaljena od obmoˇcja, kjer lahko s hibridnim linearnim modelom ˇse zadovoljivo aproksimiramo dinamiko sistema. Hibridni mehki model nam torej omogoˇca bolj kakovostno vodenje, kar se moˇcneje odraˇza predvsem pri sistemih, ki imajo izrazito nelinearno dinamiko. Rezultati so pokazali, da uporaba algoritma omogoˇca izpolnitev zahtev vodenja. Temperatura v jedru zadovoljivo sledi referenˇcnemu signalu, kar zagotavlja kratek ˇcas obdelave posamezne ˇsarˇze. Z ustrezno doloˇcitvijo kriterijske funkcije pa lahko tudi ˇstevilo preklopov zapornih ventilov omejimo na minimum. Kljub hitremu sledenju referenˇcni vrednosti algoritem zagotavlja vodenje brez prevzpona, kar tudi je ena od prednosti pristopov s prediktivnim vodenjem. 186 Prediktivno vodenje na osnovi analize dosegljivosti 11. Prediktivno vodenje na osnovi genetskega algoritma V tem poglavju bomo opisali metodo za prediktivno vodenje hibridnih sistemov z diskretnimi vhodi, ki deluje na osnovi genetskega algoritma [96, 47, 101, 86]. 11.1 Uporaba genetskega algoritma pri optimizaciji problemov z diskretnimi spremenljivkami Genetski algoritem predstavlja pristop, ki je primeren za optimizacijo problemov z diskretnimi spremenljivkami. Optimizacijo izvaja nad zaporedjem genov, ki sestavljajo kromosom posameznega osebka. Geni neposredno opisujejo diskretne optimizacijske spremenljivke: • vsak gen predstavlja enega izmed mogoˇcih vhodnih vektorjev v sistem uj, kjer je j ∈ {1, 2,... , M}; • vsak osebek oz. njegov kromosom predstavlja eno izmed mogoˇcih reˇsitev optimizacij skega problema, tj. zaporedje vrednosti vektorja vhodov v sistem Ul+H~, kot ga podaja enaˇcba (8.10). Vsak kromosom posameznega osebka torej predstavlja eno izmed mogoˇcih reˇsitev in ga lahko zapiˇsemo z zaporedjem H genov. Dolˇzina kromosoma je odvisna od najveˇcjega predikcijskega horizonta H. 187 188 Prediktivno vodenje na osnovi genetskega algoritma Binarno kodiranje spremenljivk pri genetskem algoritmu ni potrebno, saj vsak izmed mogočih vhodnih vektorjev v sistem Uj, kjer je j G {1, 2,..., M}, določa po en gen. Genetski algoritem je torej že v zasnovi primeren za prediktivno vodenje hibridnih sistemov z diskretnimi vhodi in predstavlja učinkovit način reševanja nelinearnih mešanih celoštevilskih optimizacijskih problemov z omejitvami [96]. Poleg tega se pristopi k prediktivnemu vodenju na osnovi genetskega algoritma izognejo izračunavanju gradientov kriterijske funkcije, kakršne izvajajo standardni nelinearni optimizacijski algoritmi, kar pomeni bistveno manjšo računsko zahtevnost pristopa. Genetske algoritme lahko uporabimo pri reševanju nelinearnih mešanih celoštevilskih optimizacijskih problemov z omejitvami. Zaradi kompleksnih lastnosti genetskih operatorjev pa je algoritem problematičen za analizo in v splošnem tudi ne zagotavlja rešljivosti problema. V literaturi lahko najdemo veliko primerov optimizacije z omejitvami, pri katerih se uporabljajo genetski algoritmi [14, 52, 100, 85]. Kljub temu pa še ne obstaja splošna in sistematična rešitev tega problema. 11.2 Mehanizem optimizacije na osnovi genetskega algoritma Optimizacijo na osnovi genetskega algoritma lahko opišemo z naslednjimi koraki. 1. Inicializacija: določitev naključne populacije osebkov, ki ustrezajo možnim rešitvam. 2. Izračun vrednosti kriterijske funkcije za vsak osebek v populaciji. 3. Izbor naključnih staršev v trenutni populaciji. 11.3 Genetski operatorji 189 4. Uporaba genetskih operatorjev, tj. križanja in/ali mutacije, na izbranih starših in izpeljava osebkov nove generacije. 5. Izračun vrednosti kritenjske funkcije za vsak osebek v novi generaciji. 6. Izbor najboljših osebkov (glede na vrednost kriterijske funkcije). 7. Zamenjava najslabših osebkov prejšnje generacije z najboljšimi nove generacije, ki so bili izpeljani v 6. koraku. 8. Če kriterijska funkcija doseže določeno tolerančno mejo ali če je doseženo maksimalno število generacij, se algoritem ustavi, sicer se nadaljuje z 2. korakom. Potek algoritma je grafično prikazan na sliki 11.1. Opisani genetski algoritem torej poskuša posnemati naravno evolucijo. Algoritem v vsaki generaciji izbere najboljše in zavrže najslabše osebke glede na vrednost kriterijske funkcije. Na ta način dobimo vedno boljše generacije novih osebkov, dokler ni dosežen kriterij za zaustavitev, tj. dokler kriterijska funkcija ne doseže določene tolerančne meje ali dokler ni doseženo maksimalno število generacij. 11.3 Genetski operatorji Genetska operatorja, ki ju uporabljamo v algoritmu, sta križanje in mutacija. Operatorja predstavljata analogijo genetskim procesom, ki se dogajajo v naravi in zagotavljajo raznolikost in razvoj vrst. V algoritmu za prediktivno vodenje torej izvajamo proces, ki je analogen naravni evoluciji, pri čemer za naravni izbor skrbi algoritem z izbiranjem najboljših osebkov glede na vrednost kriterijske funkcije, ki jo izračuna za vsak obravnavani osebek. 190 Prediktivno vodenje na osnovi genetskega algoritma Inicializacija populacije I Izračun kriterijske funkcije i Izbor staršev i Križanje i Mutacija i Izračun kriterijske funkcije i Izbor naslednje generacije /^Kriterijza\ izpolnjen? DA Vrni najboljšo rešitev Slika 11.1: Potek genetskega algoritma. 11.3.1 Kriˇzanje Križanje je genetski operator, ki deluje nad kromosomoma dveh staršev. Pri križanju se za določeno verjetnostjo izmenjata dela kromosomov križanih osebkov (staršev) in na ta način dobimo kromosoma dveh novih osebkov. Vzemimo za primer križanje dveh osebkov - d in 02 - katerih kromosoma podajata izraza (11.1) in (11.2). Denimo, da kromosom v tem primeru sestavlja zaporedje 5 genov. Oi = [giil) gi{2) 0i(3) 0i(4) 0i(5)] (11.1) 11.3 Genetski operatorji 191 02 = [g2(1) g2(2) g2(3) g2(4) g2(5)] (11.2) V izrazih (11.1) in (11.2) oznaˇcuje g1(i) gen, ki je v kromosomu osebka O1 na i-tem mestu, g2(j) pa gen, ki je v kromosomu osebka O2 na j-tem mestu. ˇ Ce osebka O1 in O2 kriˇzamo, pri ˇcemer za ta primer predpostavimo, da se kriˇzanje zgodi po 3. mestu, dobimo nova osebka – O3 in O4 – katerih kromosoma podajata izraza (11.3) in (11.4). 03 = [g1(1) g1(2) g1(3) g2(4) g2(5)] (11.3) 04 = [g2(1) g2(2) g2(3) g1(4) g1(5)] (11.4) Dobljena kromosoma osebkov O3 in O4 sta sestavljena iz genskega materiala svojih starˇsev O1 in O2, kar je tudi znaˇcilnost kriˇzanja v naravi. 11.3.2 Mutacija Mutacija je genetski operator, ki deluje nad kromosomom enega osebka. Pri mutaciji se gen v kromosomu z doloˇceno verjetnostjo zamenja z drugim genom in na ta naˇcin dobimo kromosom novega osebka. Vzemimo za primer mutacijo osebka O1, katerega kromosom podaja izraz (11.1). Cˇe osebek O1 mutira, pri ˇcemer za ta primer predpostavimo, da se mutacija zgodi na 3. mestu, dobimo mutirani osebek O1,m, katerega kromosom podaja izraz (11.5). O1,m = [g1(1) g1(2) gm(3) g1(4) g1(5)] (11.5) 192 Prediktivno vodenje na osnovi genetskega algoritma V izrazu (11.5) označuje gm(3) mutirani gen, ki je zamenjal gen ^(3) na 3. mestu v kromosomu osebka Ox. Del dobljenega kromosoma mutiranega osebka 01>m je sestavljen iz genskega materiala svojega nemutiranega predhodnika Ou kar je tudi značilnost mutacije v naravi. 11.4 Suboptimalnost pristopa Genetski algoritem zagotovi rešitev problema prediktivnega vodenja, ki je blizu optimalni, tj. suboptimalno rešitev. Suboptimalni pristopi, kakršno je tudi prediktivno vodenje na osnovi genetskega algoritma, se v praksi izkažejo kot učinkoviti, vendar je njihova analiza težavna, saj je neposredna primerjava z optimalnimi pristopi vprašljiva. Delovanje algoritma in konkretna rešitev problema sta odvisna od več načrtovalskih parametrov, ki jih je pred zagonom algoritma treba nastaviti. Poleg tega pa algoritem strogo gledano ni ponovljiv, saj vsebuje korake, ki so povezani s (psevdo)naključnimi izbirami oz. dogodki. V našem primeru so taki deli v algoritmu L, 3., 4. in 6. korak. Parametri, ki jih je pred uporabo algoritma treba nastaviti, so: • število osebkov; • število generacij; • verjetnost križanja; • verjetnost mutacije; • tolerančna meja kriterijske funkcije za prekinitev algoritma. Nastavitve parametrov vplivajo tako na kakovost vodenja kot tudi na računsko 11.5 Kriterijska funkcija 193 zahtevnost algoritma, zato jih je treba karseda skrbno določiti, pri čemer si lahko pomagamo s simulacijami. 11.5 Kriterijska funkcija Pri izbiri kriterijske funkcije, ki jo uporabimo v genetskem algoritmu, imamo relativno proste roke, saj sam algoritem za delovanje ne zahteva nobene posebne oblike funkcije (8.12). V praksi se za uporabno izkaže oblika kriterijske funkcije, ki jo podajajo enačbe (11.6), (11.7) in (11.8). J=Jl + \-J2 (11.6) H J1 = Y,(y(k + h\k)-r(k + h))2 (11.7) /1=1 H J2 = ^(u(k + h\k)-u(k + h-l\ k))2 (11.8) /1=1 V enačbi (11.6) označuje A faktor uteženosti spreminjanja vhodnega signala v kriterij ski funkciji. Enačba (11.7) podaja del kriterijske funkcije, ki kaznuje odstopanje od referenčne trajektorije. Tu y(k + h \ k) označuje predikcijo izhoda modela za h korakov naprej, r(k) pa referenčno trajektorijo. Enačba (11.8) pa podaja del kriterijske funkcije, ki kaznuje spreminjanja vhodnega signala pri predikciji. Tu u(k+h | k) označuje vhodni signal, ki se uporablja za izračun predikcije izhoda modela za h korakov naprej. 194 Prediktivno vodenje na osnovi genetskega algoritma 11.6 Računska zahtevnost Računska zahtevnost obravnavanega algoritma za prediktivno vodenje je prvenstveno odvisna od dveh dejavnikov. • Število generacij, ki vpliva na število izvedb oz. ponovitev genetskega algoritma. Večje število generacij pomeni večjo računsko zahtevnost genetskega algoritma. • Število osebkov, ki nastopajo v genetskem algoritmu. Več osebkov ima za posledico več operacij v posameznem koraku v genetskem algoritmu in s tem večjo računsko zahtevnost. Ocena računske zahtevnosti obravnavanega algoritma za prediktivno vodenje je sorazmerna produktu števila generacij NG(i in števila osebkov N0(i. Omeniti je treba, da ocena velja za večja števila NGo in N0o, saj imajo poraba časa zaradi inicializacije in ostali režijski stroški pri manjših številih večji relativni vpliv. Oceno računske zahtevnosti podaja enačba (11.9). Co oc NGo-N0o (11.9) Poleg števila generacij NG(i in števila osebkov N0(i, ki nastopajo v genetskem algoritmu, vplivajo na računsko zahtevnost tudi drugi dejavniki, ki jih bomo našteli v nadaljevanju. Največji predikcijski horizont H vpliva na dolžino zaporedja genov v kromosomih, nad katerimi delujejo genetski operatorji. Daljši kromosomi pomenijo večjo računsko zahtevnost genetskega algoritma. Število diskretnih vhodov z ustreznim številom mogočih vrednosti, ki jih lahko zavzame posamezen diskretni vhod, pa vpliva na število mogočih različnih genov, ki jih moramo upoštevati v genetskem algoritmu. 11.6 Računska zahtevnost 195 Denimo, da lahko «-ti diskretni vhod, kjer je i G {1,...,/}, zavzame m* različnih diskretnih vrednosti. V tem primeru lahko število vseh mogočih kombinacij vrednosti vhodnega vektorja izračunamo, kot kaže enačba (11.10). M0 = TOi-... -TOj (11.10) Množico mogočih zaporedij vhodnih vektorjev podaja izraz (11.11). Ujr+H-1 e{Ul,...,uMo}H (11.11) V izrazu (11.11) označuje Uj, kjer je j G {1,...,M0}, enega od mogočih vhodnih vektorjev, H pa največji predikcijski horizont. Število mogočih vhodnih vektorjev M0 torej določa število mogočih različnih genov, največji predikcijski horizont H pa dolžino kromosomov. Število mogočih različnih genov sicer na računsko zahtevnost genetskega algoritma ne vpliva neposredno. Kljub temu pa moramo pri večjem številu mogočih različnih genov in večji dolžini kromosomov v splošnem povečati tudi število osebkov in število generacij, da bi dosegli primerljivo kakovost vodenja. Opozoriti je treba, da odvisnosti ustreznih stopenj povečanja števila osebkov in števila generacij pri večjem številu mogočih različnih genov in večji dolžini kromosomov, pri čemer želimo ohraniti primerljivo kakovost vodenja, ni mogoče enostavno računsko določiti. Število osebkov in število generacij sta načrtovalska parametra, ki ju določimo s simulacijami. Povečanje števila osebkov in števila generacij ima, kot smo že zapisali, za posledico večjo računsko zahtevnost genetskega algoritma. Oceno stopnje povečanja računske zahtevnosti podaja izraz (11.12). Co NGo ■ N0o V J 196 Prediktivno vodenje na osnovi genetskega algoritma V izrazu (11.12) označuje d spremenjeno računsko zahtevnost, iVGl spremenjeno število generacij in iV0l spremenjeno število osebkov v genetskem algoritmu. Preostali načrtovalski parametri - verjetnost križanja, verjetnost mutacije in tolerančna meja kriterijske funkcije za prekinitev algoritma - prav tako posredno vplivajo na računsko zahtevnost genetskega algoritma. • Verjetnost križanja in verjetnost mutacije sta povezani s hitrostjo konvergence genetskega algoritma k rešitvi. Vpliv nastavitve verjetnosti križanja in verjetnosti mutacije na učinkovitost genetskega algoritma je tesno povezan s sistemom, ki ga želimo voditi, oz. njegovim modelom, izbiro kriterijske funkcije, referenčno trajektorijo in trenutnim stanjem sistema, zato ga v splošnem ni mogoče enostavno računsko določiti. • Tolerančna meja kriterijske funkcije za prekinitev algoritma lahko - če je postavljena dovolj visoko - izvajanje genetskega algoritma prekine, še preden je doseženo maksimalno predpisano število generacij. Po drugi strani pa lahko previsoko postavljena tolerančna meja negativno vpliva na kakovost vodenja. 11.6.1 Zmanjšanje računske zahtevnosti z omejitvijo nabora mogočih kombinacij vrednosti vektorja vhoda Zaradi fizičnih in tehnoloških zahtev in pogojev v sistemu, ki ga želimo voditi, je v splošnem smiselno že na začetku načrtovanja vodenja omejiti nabor mogočih kombinacij vrednosti vektorja vhoda. To povzroči zmanjšanje računske zahtevnosti problema vodenja. Predpostavimo, da smo nabor mogočih kombinacij vrednosti vektorja vhoda, ki izhajajo iz zahtev za delovanje sistema, zmanjšali z M0 na M, pri čemer velja M < M0. V tem primeru množico mogočih zaporedij vhodnih vektorjev podaja izraz (11.13). 11.6 Računska zahtevnost 197 U^H-le{Ul,...,uM}H (11.13) V izrazu (11.13) označuje Uj, kjer je j G {1,..., M}, enega od mogočih vhodnih vektorjev. Omejitev nabora mogočih kombinacij vrednosti vektorja vhoda ima za posledico omejitev števila mogočih različnih genov, s tem pa tudi nabora vseh možnih osebkov oz. njihovih kromosomov - glej enačbo (11.13). Število vseh možnih kromosomov se torej z M 0 H zmanjša na MH. To omogoča zmanjšanje števila osebkov in števila generacij v genetskem algoritmu, in sicer ob ohranitvi primerljive kakovosti vodenja. Zmanjšanje števila osebkov in števila generacij pa ima, kot smo že zapisali, za posledico manjšo računsko zahtevnost genetskega algoritma - glej izraz (11.12). 11.6.2 Zmanjšanje računske zahtevnosti z zadrževanjem vrednosti vektorja vhodov skozi več časovnih korakov V modelih, ki jih uporabljamo za prediktivno vodenje, je čas vzorčenja ts vezan na več dejavnikov: dinamiko1 sistema, ki ga vodimo, želeno natančnost2 predikcije in morebitni čas vzorčenja senzorjev,3 ki jih v sistemu za vodenje uporabljamo. V splošnem želimo načrtati prediktivno vodenje, ki v vsakem koraku izvaja predikcijo za določen največji predikcijski čas tpred naprej. Z največjim predikcij-skim časom pa sta povezana tudi največji predikcijski horizont H in čas vzorčenja iffitrim sistemom ustreza krajši, počasnejšim pa daljši čas vzorčenja ts. 2Za doseganje ustrezne natančnosti predikcije moramo uporabiti dovolj kratek čas vzorčenja ts- 3 V primeru, da senzorji merjeno količino vzorčijo, je potrebna ustrezna sinhronizacija. Če senzorji podajajo merjeno količino zvezno, nimajo vpliva na čas vzorčenja ts. 198 Prediktivno vodenje na osnovi genetskega algoritma ts, kot kaže enačba (11.14). H= t^ (H.14) ts Čas vzorčenja ts je določen glede na sistem, ki ga želimo voditi. Dejavniki, ki vplivajo na čas vzorčenja, so dinamika sistema, potrebna natančnost pre-dikcije, morebitni čas vzorčenja senzorjev ipd. - glej tudi razdelka 2.4 in 8.3. Kot vidimo iz enačbe (11.14), lahko ob izbranem času vzorčenja ts pri večanju največjega predikcijskega časa tpred največji predikcijski horizont H precej naraste. Z naraščanjem največjega predikcijskega horizonta H narašča tudi dolžina zaporedja genov v kromosomih, nad katerimi delujejo genetski operatorji. Daljši kromosomi pa pomenijo večjo računsko zahtevnost genetskega algoritma. Dolžine kromosomov lahko v mnogo primerih zmanjšamo z zadrževanjem vrednosti vektorja vhodov skozi več časovnih korakov. V veliko sistemih lahko namreč dopustimo (ali celo želimo), da se vrednosti vektorja vhodov ne spreminjajo z vsakim časom vzorčenja ts. Če je npr. čas vzorčenja ts relativno kratek, ak-tuatorji pa bi bili s spreminjanjem vhodnega vektorja v vsakem koraku preveč obremenjeni, lahko predpišemo, naj se vektor vhodov spreminja samo vsakih Z časovnih korakov, tj. da zadrži svojo vrednost za čas Z ■ ts. Ker v splošnem želimo načrtati prediktivno vodenje, ki v vsakem koraku izvaja predikcijo za izbrani največji predikcijski čas tpred naprej, hkrati pa predpišemo, da naj vektor vhodov zadrži svojo vrednost za čas Z ■ ts, se z večanjem števila Z manjša potrebni največji predikcijski horizont Hz, kot je zapisano v enačbi (11.15). = t.i (1L15) ts Z Če predpostavimo, da sta izbrani največji predikcijski čas tpred in čas vzorčenja ts fiksna - torej velja enačba (11.16) - lahko množico mogočih zaporedij vhodnih vektorjev zapišemo v izrazu (11.17). 11.6 Računska zahtevnost 199 Hz = j-H (11.16) Ijk+H-i e {ui) Um}hz = {ui}___}Um}% (n.17) V izrazu (11.17) označuje Uj, kjer je j G {1,..., M}, enega od mogočih vhodnih vektorjev. Omejitev nabora mogočih kombinacij vrednosti vektorja vhoda ima za posledico omejitev števila mogočih različnih kromosomov - glej enačbo (11.17). Število vseh možnih kromosomov se torej z MH zmanjša na MHz = Aff. V splošnem to omogoča zmanjšanje števila osebkov in števila generacij v genetskem algoritmu, in sicer ob ohranitvi primerljive kakovosti vodenja. Zmanjšanje števila osebkov in števila generacij pa ima, kot smo že zapisali, za posledico manjšo računsko zahtevnost genetskega algoritma - glej izraz (11.12). Z zadrževanjem vrednosti vektorja vhodov skozi Z časovnih korakov lahko dosežemo več učinkov: • zmanjšamo potrebni največji predikcijski horizont H in s tem računsko zahtevnost algoritma za prediktivno vodenje; • omogočimo pri določenem času vzorčenja ts večji največji predikcijski čas tpred, • omogočimo pri izbranem največjem predikcijskem času tpred manjši čas vzorčenja ts; • razbremenimo aktuatorje, ki bi bili s spreminjanjem vhodnega signala v vsakem časovnem koraku preobremenjeni. Zadrževanje vrednosti vektorja vhodov skozi Z časovnih korakov torej po eni strani lahko omogoči vodenje tudi v primerih, ko imamo težave s preveliko 200 Prediktivno vodenje na osnovi genetskega algoritma računsko zahtevnostjo problema vodenja, po drugi strani pa lahko razbremeni sistem oz. aktuatorje morebitne prevelike frekvence spreminjanja vrednosti vektorja vhoda. Podobno kot v 10. poglavju lahko zaključimo, da je pristop z zadrževanjem vrednosti vektorja vhodov skozi Z časovnih korakov primeren predvsem za sisteme, pri katerih ne potrebujemo ali ne želimo sprememb vhodnega signala v vsakem časovnem koraku k, npr. za toge sisteme. Nastavitev parametra Z je odvisna od sistema in zahtev pri vodenju: večji Z poveča prej naštete učinke in lahko izboljša kakovost vodenja, če le ni frekvenca sprememb vhodnega signala preveč omejena. Ustrezno vrednosti parametra Z določimo s poskušanjem, pri čemer si lahko pomagamo s simulacijami. Omenimo naj, da za razliko od pristopa v 10. poglavju, pri genetskem algoritmu računska zahtevnost ni eksponentno odvisna od največjega predikcijskega horizonta H, ampak ta nanjo vpliva posredno, in sicer preko spremenjene dolžine kromosoma, nad katerim delujejo genetski operatorji, in preko spremenjenega števila generacij in spremenjenega števila osebkov v genetskem algoritmu - glej izraz (11.12). 11.7 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju Algoritem za prediktivno vodenje hibridnih sistemov z diskretnimi vhodi na osnovi genetskega algoritma smo preizkusili na primeru vodenja šaržnega reaktorja, ki je opisan v 3. poglavju. 11.7.1 Matematični model šaržnega reaktorja Matematični model šaržnega reaktorja je podan v enačbah v razdelku 3.2. Dinamiko v jedru šaržnega reaktorja opisuje enačba (3.1), dinamiko v plašču pa enačba (3.2). 11.7 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 201 Masa komponent v jedru šaržnega reaktorja je m = 600 kg, masa vode v plašču je mw = 40 kg. Specifična toplota komponent v jedru cw = 4200 J kg"1 K"1, specifična toplota vode v plašču je cw = 4200 J kg"1 K"1. Pretok vode v plašču znaša (p = 1, 6 kg s"1, prevodnost toplotnega stika med jedrom in plaščem znaša A = 420 W m"2 K"1, prevodnost toplotnega stika med plaščem in okolico znaša A0 = 84 W m"2 K"1, površina toplotnega stika med jedrom in plaščem znaša S = 2 m2, površina toplotnega stika med plaščem in okolico znaša S0 = 2 m2. Temperatura sveže vhodne vode je lahko TC = 12 oC ali TH = 75 oC. Pri vodenju tovrstnih šaržnih reaktorjev lahko predpostavimo dve osnovni vrsti motenj na izhodu: • motnja, ki se prišteje k temperaturi v jedru šaržnega reaktorja T in • motnja, ki se prišteje k temperaturi v plašču šaržnega reaktorja Tw. Zaradi hitrejše dinamike je pri vodenju precej lažja naloga odpraviti motnjo, ki se prišteje k temperaturi v plašču Tw. V eksperimentu zato predpostavimo samo motnjo, ki se prišteje k temperaturi v jedru T: v trenutku t = 23000 s torej temperaturi v jedru dodamo stopničasto motnjo, pri čemer velikost stopnice znaša AT = 3 oC. 11.7.2 Omejitev nabora mogočih kombinacij vhodnih vektorjev Kot smo opisali v razdelku 11.6.1, je smiselno že na začetku načrtovanja vodenja omejiti nabor mogočih kombinacij vrednosti vektorja vhoda, kar povzroči zmanjšanje računske zahtevnosti problema vodenja. Omejitev izhaja iz fizičnih in tehnoloških zahtev in pogojev v sistemu, ki ga želimo voditi, saj na ta način izločimo vse nemogoče ali nesmiselne kombinacije vhodnih vektorjev. V tem smislu lahko določimo matriko vhodnih vektorjev P, ki jo podaja izraz (11.18). 202 Prediktivno vodenje na osnovi genetskega algoritma P 0 0,01 0,02 0,05 0,1 1 1 0 0 0 0 0 0 1 11 1 1110 (11.18) V izrazu (11.18) označuje vsak stolpec enega izmed mogočih vhodnih vektorjev. Vrstice v matriki vhodnih vektorjev P imajo naslednji pomen: • prva vrstica označuje položaj mešalnega ventila kM ∈ {0,0.01,0.02,0.05,0.1,1}; • druga vrstica označuje položaj zapornega ventila za hladno vodo fcc∈{0,l}; • tretja vrstica označuje položaj zapornega ventila za vročo vodo itn ∈{1,0}. 11.7.3 Vodenje Algoritem za prediktivno vodenje, ki ga preizkušamo v tem eksperimentu, za delovanje potrebuje primeren matematični model šaržnega reaktorja. V našem primeru smo izbrali hibridni mehki model, katerega razvoj je natančno opisan v razdelku 7.4.1. Pri vodenju temperature v jedru šaržnega reaktorja smo izvajali eksperimente z različnimi vrednostmi največjega predikcijskega horizonta, in sicer s Hz>1 = 4, Hz,2 = 5 in Hz,z = 6. Število časovnih korakov, skozi katere algoritem zadržuje vrednosti vektorja vhodov, smo nastavili na Z = 15 - glej razdelek 11.6.2. Na ta način algoritem upošteva predikcijo obnašanja sistema za H1} H2 in H3 korakov oz. tpredA, tpred,2 in W,3 sekund naprej, kot podajata izraza (11.19) oz. (11.20). _ 11.7 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 203 Hi = Hz,i ■ Z = 4 • 15 = 60 H2 = HZt2-Z = 5-15 = 75 (11.19) H3 = Hz>3 ■ Z = 6 • 15 = 90 tpred,l = ^ ■ ts = 60 • 10 S = 600 s tpred,2 = H2 ■ ts = 75 • 10 S = 750 s (11.20) tpred,3 = H3 ■ ts = 90 • 10 s = 900 s Matrika vhodnih vektorjev P v izrazu (11.18) določa tudi nabor genov. Vsak gen predstavlja enega od mogočih vhodnih vektorjev. Izraz (11.21) torej podaja 7 različnih genov, ki jih algoritem za prediktivno vodenje upošteva pri delovanju. 9i = [0 0 1]T g2 = [0,01 0 1]T g3 = [0,02 0 1]T & = [0,05 0 1]T (H.21) g5 = [0,1 0 1]T 9e = [l 0 1]T g7=[l 1 0]T Kot smo že povedali v razdelku 11.1, je vsak osebek v genetskem algoritmu enolično določen s svojim kromosomom, ki ga sestavlja niz genov iz nabora (11.21). Vsak osebek predstavlja eno izmed mogočih rešitev optimizacijskega problema. Dolžina kromosoma je odvisna od največjega predikcijskega horizonta, ki v našem primeru znaša Hz,i = 4, Hz,2 = 5 oz. Hz>3 = 6. Nabor vseh mogočih rešitev problema vodenja šaržnega rektorja podaja izraz (11.22). 204 Prediktivno vodenje na osnovi genetskega algoritma Up*-1 = U k k +Z-Hz'~l e e{{gi}z, Mz, {g3}z, Mz, Mz, {g6}z, {gi}z}Hz'% (H-22) kjer je« G {1,2, 3}. Za primer, ko je Hz = Hz,i = 4, imamo v naboru vseh mogočih rešitev problema vodenja šaržnega rektorja 74 = 2401 osebek. 11.7.4 Kriterijska funkcija Zaradi primerljivosti algoritmov smo izbrali enako kriterijsko funkcijo kot v pristopu, ki je opisan v razdelku 10.5.6. Kriterijsko funkcijo torej podajajo enačbe (10.20), (10.23) in (10.22). 11.7.5 Rezultati Rezultati eksperimenta za primer vodenja z genetskim algoritmom so prikazani na slikah 11.2 in 11.3. Slika 11.2 prikazuje potek temperature v jedru šaržnega reaktorja T in referenčne temperature Tref. Slika 11.3 prikazuje potek temperature v plašču šaržnega reaktorja Tw in položaje ventilov kM, kH in kc. V prikazanem primeru je največji predikcijski horizont Hz = Hz,i = 4, število osebkov iV0 = 30, število generacij iVG = 10, verjetnost križanja pkri = 0, 8, verjetnost mutacije pmut = 0, 001, tolerančna meja kriterijske funkcije za prekinitev algoritma pa je nastavljena na 0, kar pomeni, da se algoritem izračunava vseh NG = 10 generacij osebkov. Parametri algoritma so izbrani hevristično. Prediktivno vodenje na osnovi genetskega algoritma v vsakem koraku zagotovi suboptimalno rešitev, ki je lahko bolj ali manj blizu optimalni in je odvisna od parametrov, ki jih moramo pred uporabo algoritma nastaviti - glej razdelek 11.4. Ugotovimo lahko, da temperatura v jedru reaktorja T dobro sledi referenčni temperaturi Tref, poleg tega pa algoritem tudi ustrezno kompenzira stopničasto 11.7 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 205 65 60 55 50 45 40 35 30 25 0 0.5 1 1.5 2 2.5 3 t [s] 4 x 10 Slika 11.2: Temperatura v jedru reaktorja T (polna črta) in referenčna temperatura Tref (prekinjena črta). motnjo na izhodu, ki se zgodi v trenutku t = 23000 s. Slike 11.4, 11.5 in 11.6 prikazujejo, kako izbira števila osebkov N0 in izbira števila generacij NG vpliva na čas tk, ki ga genetski algoritem porabi za izračun rešitve v enem koraku, in kako vpliva na vrednost kriterijske funkcije J, ki določa kakovost vodenja. Na slikah so prikazane srednje vrednosti in standardni odkloni. Slika 11.4 se nanaša na primer, ko je največji predikcijski horizont Hz = Hz,i = 4, slika 11.5 na primer, ko je Hz = Hz>2 = 5, slika 11.6 pa na primer, ko je Hz = HZ}3 = 6. Z rezultati na slikah 11.4, 11.5 in 11.6 si lahko pomagamo pri izbiri parametrov algoritma, tj. števila osebkov iV0 in števila generacij iVG. Pri tem iščemo pri- / / 1 \ \ \ \ / 206 Prediktivno vodenje na osnovi genetskega algoritma 60 40 20 1 0.5 0 — y^s-j^v-^-^^-^, ________^_______ ^—^----------------. 1 0.5 0 1 0.5 0 0 0.5 0.5 1.5 1.5 t [s] 2.5 2.5 x 10 - - 0 0.5 1 1.5 2 2.5 3 x 104 0 0.5 1 1.5 2 2.5 3 x 104 x 10 Slika 11.3: Temperatura v plašču reaktorja Tw in položaji ventilov kM, kH in kC- memo razmerje med časom tk, ki ga genetski algoritem porabi za izračun rešitve v enem koraku, in vrednostjo kriterijske funkcije. • V primeru, ko je Hz = Hz,i = 4, smo izbrali število osebkov iV0 = 30 in število generacij iVG = 10. V tem primeru je znašal povprečni čas, ki ga genetski algoritem porabi za izračun rešitve v enem časovnem koraku, ik = 0, 72 s. • V primeru, ko je Hz = Hz,2 = 5, smo izbrali število osebkov iV0 = 30 in število generacij iVG = 30. V tem primeru je znašal povprečni čas, ki ga genetski algoritem porabi za izračun rešitve v enem časovnem koraku, tk = 1,93 s. • V primeru, ko je Hz = Hz;i = 6, smo izbrali število osebkov iV0 = 30 0 2 3 2 3 11.7 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 207 i -w , ----------Ng = 10 Ng = 20 1.75 , ----------Ng = 30 . ----------Ng = 40 ----------Ng = 50 ; 1.50 7^ / 1.25 1.00 / ' / / ' '' 0.75 %■•■'" j^^ // / /^ /// ^r 0.50 Ji" ■ s 0.25 - 10 20 30 40 50 4.5 4.4 4.3 4.2 4.1 4 3.9 3.8 3.7 3.6 3.5 3.4 x 10 1 \ ----------Ng = 10 Ng = 20 ----------Ng = 30 ----------Ng = 40 ----------Ng = 50 \ \ \ \ \ \ v \\.V ■ N v v - - ... . ^4= ■ — ■.—■■■ <■ No 10 20 30 No 40 50 Slika 11.4: Čas tk, ki ga genetski algoritem porabi za izračun rešitve v enem koraku, in vrednost kriterijske funkcije J za Hz = Hz,i = 4. in število generacij NG = 30. V tem primeru je znašal povprečni čas, ki ga genetski algoritem porabi za izračun rešitve v enem časovnem koraku, 4 = 6,1 s. V vseh treh primerih je čas tk, ki ga genetski algoritem porabi za izračun rešitve v enem koraku, krajši od časa vzorčenja ts = 10 s, kar pomeni, da lahko algoritem uporabimo za vodenje v realnem času. 11.7.6 Primerjava algoritmov za prediktivno vodenje na osnovi genetskega algoritma, na osnovi analize dosegljivosti in na osnovi ocenjevanja vseh mogoˇcih reˇsitev V tem razdelku bomo primerjali rezultate vodenja ˇsarˇznega reaktorja z algoritmi za prediktivno vodenje na osnovi genetskega algoritma, na osnovi analize dosegljivosti (glej 10. poglavje) in na osnovi ocenjevanja vseh mogoˇcih reˇsitev. 208 Prediktivno vodenje na osnovi genetskega algoritma 3.00 2.75 2.50 2.25 2.00 1.75 1.50 1.25 1.00 0.75 0.50 0.25 5.2 x 10 4.2 4.8 i 4.6 * \ . 4.4 — 10 20 30 40 50 No 10 20 30 40 No 50 Slika 11.5: Cas tk, ki ga genetski algoritem porabi za izračun rešitve v enem koraku, in vrednost kriterijske funkcije J za Hz = HZß = 5. Algoritem za prediktivno vodenje na osnovi ocenjevanja vseh mogočih rešitev deluje tako, da izračuna vrednost kriterijske funkcije za vse mogoče rešitve optimizacij skega problema, in sicer v okviru nabora mogočih kombinacij vhodnih vektorjev in največjega predikcijskega horizonta. Na koncu algoritem vrne najustreznejšo rešitev, tj. tisto, ki ima najnižjo vrednost kriterijske funkcije. Mehanizem delovanja lahko, podobno kot pri algoritmu na osnovi analize dosegljivosti, opišemo z razvojem problemskega drevesa, pri čemer pa v vsakem časovnem koraku raziščemo vsa mogoča vozlišča, tj. brez upoštevanja dosegljivosti in določanja neperspektivnih smeri razvoja. Na slikah 11.7, 11.8 in 11.9 je prikazan normirani čas ik, ki ga algoritem porabi za izračun rešitve v vsakem koraku, in sicer za Hz = Hz,i = 4, Hz = HZ}2 = 5 in Hz = HZ}3 = 6. Normirani čas ik izračunamo tako, da čas tk, ki ga algoritem porabi za izračun 5 4 11.7 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 209 10 9 8 7 6 5 4 3 2 1 x 10 10 20 30 40 No 50 5.8 5.6 5.4 5.2 4.8 4.6 4.4 10 20 30 40 50 No Slika 11.6: Čas tk, ki ga genetski algoritem porabi za izračun rešitve v enem koraku, in vrednost kriterijske funkcije J za Hz = HZt3 = 6. rešitve v vsakem koraku, delimo s časom vzorčenja ts = 10 s. Na slikah 11.7, 11.8 in 11.9 je s pikami označen normirani čas, ki ga porabi algoritem za prediktivno vodenje na osnovi genetskega algoritma (oznaka GA), s križci pa normirani čas, ki ga porabi algoritem za prediktivno vodenje na osnovi analize dosegljivosti (oznaka AD). Normiranega časa, ki ga porabi algoritem za prediktivno vodenje na osnovi ocenjevanja vseh mogočih rešitev, zaradi preglednosti nismo vključili na slike. Ugotovimo lahko, da ostaja normirani čas, ki ga algoritem porabi za izračun rešitve v vsakem koraku, v primeru uporabe algoritma za prediktivno vodenje na osnovi genetskega algoritma približno konstanten skozi celoten potek poskusa. Po drugi strani pa se normirani čas, ki ga algoritem porabi za izračun rešitve v vsakem koraku, v primeru uporabe algoritma za prediktivno vodenje na osnovi analize dosegljivosti pri spremembah referenčnega signala bistveno poveča. 5 0 210 Prediktivno vodenje na osnovi genetskega algoritma GA AD 20 40 60 80 100 120 140 160 180 200 k / Z Slika 11.7: Normirani čas tk, ki ga algoritem porabi za izračun rešitve v vsakem koraku za Hz = Hz,i = 4. Na slikah 11.7, 11.8 in 11.9 vidimo tudi, da v primerih, ko je Hz = Hz>2 = 5 in Hz = Hz,z = 6, normirani čas tk, ki ga algoritem na osnovi analize dosegljivosti porabi za izračun rešitve v vsakem koraku, v nekaterih časovnih oknih eksperimenta naraste nad vrednost 1. To pomeni, da je možnost vodenja v realnem času vprašljiva, saj moramo za ustrezno vodenje v splošnem zagotoviti, da je čas izračunavanja rešitve krajši od časa vzorčenja.4 Glede na to, da je normirani čas 4, ki ga genetski algoritem porabi za izračun rešitve v vsakem koraku, približno konstanten, lahko vidimo, da zanesljivo ostaja pod vrednostjo 1 tudi pri spre- 4Tudi v primeru, ko je normirani čas ik, ki ga algoritem porabi za izračun rešitve v vsakem koraku, manjši od 1, lahko pride do težav pri vodenju zaradi zakasnitev regulirnega signala. Kljub temu se v analizo teh težav nismo spuščali. 11.7 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 211 4.0 3.5 3.0 2.5 2.0 1.5 1.0 0.5 0.0 GA AD 20 40 60 80 100 k / Z 120 140 160 180 200 Slika 11.8: Normirani čas tk, ki ga algoritem porabi za izračun rešitve v vsakem koraku za Hz = Hz>2 = 5. membah reference, in sicer v vseh obravnavanih primerih - ko je Hz = Hz>1 = 4, Hz = Hz>2 = 5inHz = HZß = 6. Neobčutljivost na spremembe reference ter predvidljivost in omejenost časa za izračun rešitve v vsakem koraku predstavljajo glavno prednost pristopa na osnovi genetskega algoritma. Predvidljivost časa za izračun rešitve olajša težave ali celo sploh omogoči zanesljivo delovanje algoritma za prediktivno vodenje v realnem času. Tabele 11.1, 11.2 in 11.3 podajajo rezultate vodenja šaržnega reaktorja z algoritmi za prediktivno vodenje na osnovi genetskega algoritma (oznaka GA), na osnovi analize dosegljivosti (oznaka AD) in na osnovi ocenjevanja vseh mogočih rešitev (oznaka OVR). Stolpci v tabelah imajo naslednji pomen: 212 Prediktivno vodenje na osnovi genetskega algoritma Tabela 11.1: Primerjava algoritmov za HZ = HZ,1 = 4. ALGORITEM ¯k [s] 2 = 5, se poveča za 54 %, za primer, ko je Hz = Hz>31 = 6, pa za 20 %. Pri uporabi algoritma na osnovi ocenjevanja vseh mogočih rešitev pa se celoten čas za izračun rešitve za primer, ko je Hz = Hz>1 = 4, poveča 16-krat, za primer, ko je Hz = HZt2 = 5, pa kar 82-krat. Primera, ko je Hz = HZß = 6 nismo vključili, saj bi celoten eksperiment trajal približno 3 dni, zato rezultati seveda ne bi bili smiselni. Standardni odklon časa, ki ga algoritem porabi za izračun rešitve v vsakem koraku, vsebuje informacijo o njegovi porazdelitvi. Ugotovimo lahko, da je standardni odklon pri genetskem algoritmu v primerjavi z algoritmom na osnovi analize dosegljivosti precej manjši, kar se vidi tudi iz slik 11.7, 11.8 in 11.9. Tudi pri uporabi algoritma na osnovi ocenjevanja vseh mogočih rešitev je standardni odklon časa relativno majhen, saj je računska zahtevnost ocenjevanja vseh mogočih rešitev v vsakem koraku približno enaka. Algoritem na osnovi analize dosegljivosti in algoritem na osnovi ocenjevanja vseh mogočih rešitev v vsakem koraku vrneta optimalno rešitev optimizacijskega problema, zato je srednja vrednost kriterijske funkcije, ki določa kakovost vodenja, v vseh primerih enaka, njen standardni odklon pa je 0. Po drugi strani pa je rezultat genetskega algoritma suboptimalna rešitev -glej razdelek 11.4 - zato je tudi srednja vrednost kriterijske funkcije, ki določa kakovost vodenja, višja od vrednosti kriterijske funkcije pri optimalni rešitvi. Poleg tega algoritem strogo gledano ni ponovljiv, saj vsebuje korake, ki so povezani s (psevdo)naključnimi izbirami oz. dogodki, zato lahko izračunamo tudi standardni odklon kriterijske funkcije, ki določa kakovost vodenja. Kljub subop-timalnosti genetskega algoritma pa je rezultat vodenja, tj. zaprtozančni odziv, praktično identičen odzivu pri vodenju z eno izmed optimalnih metod - glej sliki 11.2 in 11.3. 11.7 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 215 11.7.7 Komentar Uporabnost algoritma za prediktivno vodenje hibridnih sistemov z diskretnimi vhodi na osnovi genetskega algoritma smo preverili na primeru vodenja šaržnega reaktorja. Delovanje genetskega algoritma smo primerjali tudi z algoritmoma na osnovi analize dosegljivosti in na osnovi ocenjevanja vseh mogočih rešitev. Ugotovili smo, da temperatura v jedru reaktorja T dobro sledi referenčni temperaturi Tref, poleg tega pa genetski algoritem tudi ustrezno kompenzira stopničasto motnjo na izhodu. Raziskali smo vpliv izbire števila osebkov N0 in izbire števila generacij NG na čas tk, ki ga genetski algoritem porabi za izračun rešitve v enem koraku, in na vrednost kriterijske funkcije J, ki določa kakovost vodenja. S povečevanjem števila osebkov N0 in števila generacij NG lahko izboljšamo kakovost vodenja, tj. zmanjšamo vrednost kriterijske funkcije J, kar pa gre na račun povečanja računske zahtevnosti, tj. časa tk, ki ga genetski algoritem porabi za izračun rešitve v enem koraku. V vseh obravnavanih primerih - ko je največji predikcijski horizont Hz = Hz,i = 4, Hz = Hz,2 = 5 in Hz = HZß = 6 - je čas tk, ki ga genetski algoritem porabi za izračun rešitve v enem koraku, krajši od časa vzorčenja ts, kar pomeni, da lahko genetski algoritem uporabimo za vodenje v realnem času. Glavna slabost genetskega algoritma je suboptimalnost rešitve optimizacij-skega problema in s tem negotovi rezultati pri neustrezni nastavitvi parametrov algoritma (števila osebkov, števila generacij, verjetnosti križanja in verjetnosti mutacije). Primerjava genetskega algoritma z algoritmoma na osnovi analize dosegljivosti in na osnovi ocenjevanja vseh mogočih rešitev pa je pokazala, da je rezultat vodenja, tj. zaprtozančni odziv - kljub suboptimalnosti genetskega algoritma - lahko praktično identičen odzivu pri vodenju z eno izmed optimalnih metod. Srednja vrednost časa, ki ga algoritem porabi za izračun rešitve v vsakem 216 Prediktivno vodenje na osnovi genetskega algoritma koraku, je v vseh obravnavanih primerih - ko je največji predikcijski horizont Hz = HZtl = 4, Hz = Hz>2 = 5 in Hz = HZß = 6 - najmanjša pri genetskem algoritmu. Poleg tega ostaja čas, ki ga genetski algoritem porabi za izračun rešitve v vsakem koraku, približno konstanten skozi celoten potek poskusa. Neobčutljivost na spremembe reference ter predvidljivost in omejenost časa za izračun rešitve v vsakem koraku predstavljajo glavno prednost pristopa na osnovi genetskega algoritma. Predvidljivost časa za izračun rešitve pa olajša težave pri uporabi ali celo sploh omogoči zanesljivo delovanje algoritma za prediktivno vodenje v realnem času. 12. Adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela V tem poglavju bomo opisali metodo za adaptivno prediktivno vodenje sistemov s časovno spremenljivimi dinamičnimi lastnostmi, ki deluje na osnovi sprotne identifikacije modela vodenega sistema [81, 1, 118, 132]. 12.1 Časovno spremenljive dinamične lastnosti Pri procesih, ki se pojavljajo v kemičnih, farmacevtskih, biotehnoloških in podobnih industrijskih obratih, pogosto vnaprej ne poznamo dinamičnih lastnosti. Te se lahko izkažejo za izrazito kompleksne (hibridna dinamika, nelinearnost), velikokrat pa so dinamične lastnosti tudi časovno spremenljive. Vzrok za časovno spreminjanje dinamike so lahko pojavi, kot so endo- ali eksotermne reakcije ipd. Tovrstni pojavi lahko, če jih pri načrtovanju vodenja ne upoštevamo, pripeljejo do velikih izgub - toplotni pobeg zaradi eksotermne reakcije lahko npr. povzroči popolno uničenje šarže v šaržnem reaktorju - ali celo nevarnost za ljudi in opremo. Za večino kemičnih reakcij v industriji ne poznamo natančnih kinetičnih modelov[53]. Razvoj natančnega kinetičnega modela reakcije, ki bi ga lahko uporabili pri prediktivnem vodenju, bi namreč zahteval preveč časa in denarja. Poleg tega se reakcije in tehnološki postopki v praksi pogosto spreminjajo, prilagajajo ali izboljšujejo, zato njihovo natančno modeliranje v večini primerov ni smiselno. Poleg tega se v nekaterih procesih z isto strojno opremo in algoritmom za 217 218 Adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela vodenje obdelujejo različni reagenti, količine itd., tako da so dinamične lastnosti procesov lahko povsem različne. Klasični pristopi k vodenju, pri katerih predpostavimo časovno nespremenljiv model procesa, so v tovrstnih primerih neustrezni. V praksi so se zato uveljavili različni pristopi z adaptivnimi [49], optimalnimi [48, 92, 54] in prediktivnimi [88, 91] pristopi k vodenju. 12.2 Delovanje algoritma za adaptivno prediktivno vodenje 12.2.1 Zapis lineariziranega modela Algoritem za adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela je primeren za vodenje sistemov, ki jih lahko zapišemo v obliki časovno spremenljive linearne samoregresijske strukture z zunanjimi vhodi, kot jo podaja enačba (12.1). y(k) = eT(k)ij(k) (12.1) Model, zapisan v enačbi (12.1), je sicer v osnovi linearen, je pa tudi časovno spremenljiv, zato lahko načeloma opisuje tudi nelinearno dinamiko sistema, ki ga vodimo, saj model v vsakem časovnem koraku k lineariziramo glede na delovno točko, v kateri se nahaja. Takšen pristop lahko uporabimo pri procesih, kjer se referenčni signal oz. delovna točka ne spreminja, ali pa se spreminja dovolj počasi ali redko, da ne vpliva preveč na oceno dinamičnih lastnosti in s tem na predikcijo izhoda sistema. Omenimo, da je takšen pristop bolj problematičen pri večjih predikcijskih horizontih H oz. časih predikcije tpred, saj v tem primeru nenatančnost predikcije zaradi nelinearnosti pride bolj do izraza. Denimo, da sistem, ki ga želimo voditi, podaja zapis v obliki časovno spremenljive nelinearne samoregresijske strukture z zunanjimi vhodi, kot ga podaja enačba (12.2). 12.2 Delovanje algoritma za adaptivno prediktivno vodenje 219 y(k) = F(k,^nelm(k)) (12.2) V enačbi (12.2) označuje VWm(&) regresor, ki nastopa v zapisu modela. Argument funkcije F je tudi časovni korak k, kar vpeljuje časovno spremenljivost sistema. Če je mogoče, je smiselno model v enačbi (12.2) linearizirati z vpeljavo pomožnega vhoda upam, ki je odvisen od elementov regresorja v originalnem sistemu, in sicer tako, da lahko model zapišemo v obliki, kot jo podaja enačba (12.1). Preslikavo, ki določa pomožni vhod upom, podaja enačba (12.3). Upcm = fpom{lpnelin{k)) (12-3) Pri določanju pomožnega vhoda upom izberemo tako preslikavo fpom, da parametri 6(h), ki določajo linearizirani model, niso odvisni od delovne točke, ampak samo od dejanskih časovnih sprememb dinamičnih lastnosti sistema. Na ta način lahko obravnavamo pomožni vhod upom v algoritmu za adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela kot regulirno spremenljivko sistema. 12.2.2 Ocenjevanje parametrov Sprotna identifikacija parametrov procesa je pri adaptivnem vodenju bistvenega pomena. Glede na predhodno poznavanje procesa lahko pri modeliranju določimo strukturo modela in časovno nespremenljive parametre, ki jih poznamo. Parametre procesa, ki so časovno spremenljivi in jih ne poznamo, pa algoritem za adaptivno prediktivno vodenje ocenjuje med delovanjem, tj. v vsakem časovnem koraku k sproti. 220 Adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela Lokalni linearni model Obravnavani algoritem za ocenjevanje parametrov je osnovan na lokalni lineari-zaciji modela procesa, ki se izvaja med samim delovanjem. Model procesa lahko zapišemo kot časovno spremenljivo linearno samoregresijsko strukturo z zunanjimi vhodi, kot jo podaja enačba (12.4). yf(k) = eT(ky kDZ(l - 7) (12.13) Uvedba mrtve cone torej izklopi algoritem za ocenjevanje parametrov, če vhodni signal ni primeren. Ocene parametrov modela se torej posodabljajo le, če je napaka dovolj velika. 12.2.3 Algoritem za prediktivno funkcionalno vodenje Eden od v praksi najbolj razširjenih pristopov k vodenju je prediktivno funkcionalno vodenje [118, 132]. Pristop je tudi del algoritma za adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela. Glavna prednost prediktivnega funkcionalnega vodenja je ekspliciten zapis regulirnega zakona. Uporaba prediktivnega funkcionalnega vodenja torej ne zahteva velike računske moči, zato lahko to metodo uporabimo za vodenje širokega spektra sistemov v realnem času, pri čemer lahko algoritem implementiramo na strojni opremi, ki je relativno poceni. Obnašanje zaprtozančnega sistema Obnašanje zaprtozančnega sistema določa referenčna trajektorija, ki je podana v obliki referenčnega modela. Cilj vodenja je določiti vhodne signale tako, da bo predvideni izhod procesa sledil referenčni trajektoriji. Točko, kjer se križata referenčna in predvidena trajektorija, imenujemo predikcijski horizont H. Izhod procesa računamo pri predpostavki, da so vhodni signali do horizonta konstantni, kot podaja enačba (12.14). 224 Adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela u(k|k) = u(k + l|k) = ... = u(k + H-l|k) (12.14) Predvideni izhod sistema v predikcijskem koraku (k + H | k) določa enačba (12.15). V našem primeru obravnavamo model sistema, ki je zapisan v prostoru stanj. Omenimo, da lahko model, ki je zapisan kot linearna samoregresijska struktura z zunanjimi vhodi in ga obravnavamo v razdelku 12.2.1, vedno pretvorimo v zapis v prostoru stanj. ym(k + H|k) = Cm(A^xm(k | k) + {A% - I)(Am - I)-lBmu(k | k)) (12.15) V enačbi (12.15) indeks m pomeni, da se količine nanašajo na model sistema, ki ga uporablja algoritem za prediktivno vodenje. ym(k + H | k) označuje izhod sistema v predikcijskem koraku k + H. Am, Bm in Cm so sistemske matrike, ki določajo model, / ∈ Rnxn pa je enotina matrika, ki je enakih dimenzij kot matrika Am. u(k | k) označuje vhodni vektor, ki vpliva na predikcijo izhoda sistema ym(k + H | k) in zanj velja izraz (12.14). Referenčni model Referenčni model podaja diferenčna enačba (12.16). xr(k + 1) = arxr(k) + brw(k) (12.16) yr(k) = crxr(k) V enačbi (12.16) je referenčni signal označen zw. V našem primeru referenčni model deluje kot filter prvega reda, ki zgladi referenčni signal w. Parametre referenčnega modela moramo izbrati tako, da zadostijo enačbi (12.17). 12.2 Delovanje algoritma za adaptivno prediktivno vodenje 225 cr (1 - aryl br = 1 (12.17) Na ta način zagotovimo, da je ojačenje referenčnega modela 1, kar omogoča sledenje referenčnemu signalu brez pogreška v ustaljenem stanju, tj. asimptotično sledenje referenci. Parametre torej lahko določimo, kot podajata enačbi (12.18) in (12.19). cr = 1 (12.18) br = l-ar (12.19) Parameter ar določa časovno konstanto referenčnega modela. Parameter vpliva na hitrost odziva zaprtozančnega sistema in ga je treba določiti glede na časovne konstante procesa. Če upoštevamo enačbe (12.16), (12.18) in (12.19), lahko izpeljemo predvideni izhod referenčnega modela v predikcijskem koraku (k + H | k), kot ga določa enačba (12.20). yr(k + H\k) = afyr(k \ k) + (l - af) w(k | k) (12.20) Enačba (12.20) velja, če predpostavimo konstanten in omejen referenčni signal, kot podaja izraz (12.21). w(k) = w(k + l) = ... = w(k + H-l) (12.21) Regulirni zakon Cilj obravnavanega algoritma za prediktivno funkcionalno vodenje je določitev takega regulirnega zakona, ki bi zagotovil čim boljše sledenje izhoda sistema y(k) 226 Adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela referenčnemu signalu w(k). Osnovna ideja obravnavane metode je, da v vsakem časovnem koraku k določimo tak vhodni signal u(k), ki bo zagotovil sledenje predvidenega izhoda modela y(k) izhodu referenčnega modela yr(k) v okviru predikcijskega horizonta H, kot podaja enačba (12.22). y(k + i I k) = yr(k + i\ k), (12.22) kjer je i = 0,1, ...,#. Najprej zapišemo enačbo (12.20) v obliki, ki jo podaja enačba (12.23). w(k + H\k)- yr(k + H\k) = af (w(k | k) - yr(k | k)) (12.23) Iz enačb (12.22) in (12.23) lahko zapišemo enačbo za sledenje referenci (12.24). y(k + H | k) = w(k + H | k) - af (w(k | k) - y(k | k)) (12.24) Prediktivno funkcionalno vodenje deluje na predpostavki, da sta želeni in-krement izhoda procesa Av in inkrement izhoda modela Av , ki ga uporablja y htm algoritem, enaka, kot podaja enačba (12.25). Ay = Aym (12.25) Želeni inkrement izhodnega vektorja Ay je določen v enačbi (12.26), inkrement vektorja modela Ayrn, ki ga uporablja algoritem, pa v enačbi (12.27). Ay = y(k + H | k) - y(k | k) (12.26) \m = Vm{k + H\k)- ym(k | k) (12.27) 12.2 Delovanje algoritma za adaptivno prediktivno vodenje 227 Če v enačbo (12.26) vstavimo enačbo (12.24), dobimo želeni inkrement izhodnega vektorja Ay, kot je določen v enačbi (12.28). Ay = w(k + H I k) - af (w(k | k) - yik \ k)) - y(k | k) (12.28) Če v enačbo (12.25) vstavimo enačbi (12.28) in (12.27), lahko - ob upoštevanju enačb (12.24) in (12.15) - zapišemo regulirni zakon, ki ga podajata enačbi (12.29) in (12.30). u{k) = r]~l((l ~ af)(w(k) - y(k)) + ym{k) - CmA^xm(k)), (12.29) r] = Cm (Ag - I) (Am - I)'1 Bm (12.30) Pogoj, da v enačbi (12.30) velja r] ^ 0, je izpolnjen, če je proces stabilen, vodljiv in spoznaven. Regulirni zakon, ki ga podajata enačbi (12.29) in (12.30), ima integrirni značaj. Pogoji za stabilnost so obravnavani v [132], kjer je tudi dokazano, da lahko za stabilne sisteme vedno določimo stabilen regulirni zakon, če je horizont H večji ali enak redu sistema. Preslikava regulirnega signala v prostor originalnih vhodov sistema Pri določanju regulirnega zakona v razdelku 12.2.3 smo se hibridni in nelinearni dinamiki izognili z vpeljavo pomožnega vhoda upom - glej enačbo 12.3. Na ta način smo model sistema, ki ga želimo voditi, lahko zapisali v obliki časovno spremenljive linearne samoregresijske strukture z zunanjimi vhodi, kot jo podaja enačba (12.1). Regulirni zakon v tem primeru vrne izračunano vrednost pomožnega vhoda upom, ki pa jo moramo še preslikati v prostor originalnih vhodov sistema, kar naredimo v zadnjem koraku algoritma. 228 Adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela Pri določanju preslikave pomožnega vhoda upom v prostor originalnih vhodov sistema imamo več možnosti, ki so odvisne od lastnosti preslikave fpom v enačbi (12.3). Lastnosti preslikave in ustrezne postopke obravnavamo v nadaljevanju. • Preslikava fpom v enačbi (12.3) je bijektivna. V tem primeru obstaja inverzna preslikava /"0^. Ustrezni regresor Vwim(fc) oz. ustrezne originalne vhode določimo torej z inverzno preslikavo, kot jo podaja enačba (12.31). ^neUn(k) = f^Upom) (12-31) Na ta način so originalni vhodi sistema enolično določeni. • Preslikava fpom v enačbi (12.3) ni bijektivna. V tem primeru imamo pri nadaljnji obravnavi dve možnosti. - Preslikava fpom v enačbi (12.3) ni surjektivna. To pomeni, da za nekatere vrednosti pomožnega vhoda upom ne obstaja inverzna preslikava f^. Do tega lahko pride zaradi lastnosti originalnih vhodov, ki so navzgor in navzdol omejeni ali ne morejo zavzeti nekaterih vrednosti, po drugi strani pa so lahko razlog neustrezne zahteve za vodenje, kot so prehitra dinamika referenčnega modela, prehitre spremembe referenčnega signala ipd. V tem primeru z uporabo ustrezne nadzorne logike določimo vrednosti originalnih vhodov tako, da je preslikava ustreznega regresorja fPom(4>neim(k)) čim bolj podobna1 izračunanemu pomožnemu vhodu Upom- sodobnost algoritem določa glede na preddoločen kriterij, npr. evklidsko razdaljo. 12.2 Delovanje algoritma za adaptivno prediktivno vodenje 229 - Preslikava fpom v enačbi (12.3) ni injektivna. To pomeni, da za nekatere vrednosti pomožnega vhoda upom obstaja več različnih regresorjev 4>neiin(k), ki se preslikajo v te vrednosti upom. Predpostavimo, da s neiin(k), ki vsebuje samo originalne vhode v sistem (ne pa tudi stanj oz. izhodov sistema). Če omejimo definicijsko območje preslikave fpom samo na tiste regresorje 4>neiin(k), ki v preostalem delu (ki ni zajet v fnelin(k)) vsebujejo samo tista stanja oz. izhode, ki dejansko določajo sistem v časovnem koraku k, lahko definiramo novo - preslikavi fpom pripadajočo - preslikavo fpom, kot jo podaja enačba (12.32). Up(m = fp(m(4>'neUn(k)) (12-32) Preslikava f'prm v enačbi (12.32) preslika v upom samo tisti del regresorja ipneiinik), ki ga označimo s x\)'nelin{k). Glede na preslikavo fpom je preostali del regresorja ^nelin(k) torej fiksen in ga določajo dejanska stanja oz. izhodi sistema v časovnem koraku k. Pri nadaljnji obravnavi imamo več možnosti, ki so odvisne od lastnosti preslikave fpom v enačbi (12.32). * Preslikava fpam, ki jo podaja enačba (12.32), je bijektivna. V tem primeru obstaja inverzna preslikava /££. Ustrezni regresor fueling), tj. ustrezne originalne vhode, določimo torej z inverzno preslikavo, kot podaja enačba (12.33). ^Lun(k) = rpl{upom) (12.33) Na ta način so originalni vhodi sistema enolično določeni. * Preslikavi fpom pripadajoča preslikava fpom v enačbi (12.32) ni bijektivna. 230 Adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela V tem primeru imamo pri nadaljnji obravnavi dve možnosti. • Preslikavi fpom pripadajoča preslikava fpom v enačbi (12.32) ni surjektivna. To pomeni, da za nekatere vrednosti pomožnega vhoda upom ne obstaja inverzna preslikava fp~^. Takrat postopamo podobno kot v zgoraj navedenem primeru, ko preslikava fpom v enačbi (12.3) ni surjektivna. ■ Preslikavi fpom pripadajoča preslikava fpom v enačbi (12.32) m injektivna. V tem primeru moramo uporabiti nadzorno logiko, s katero določimo najprimernejše vrednosti originalnih vhodov glede na preddoločen (hevristični) kriterij, po katerem se nadzorna logika ravna. 12.3 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju Algoritem za adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela smo preizkusili na primeru vodenja šaržnega reaktorja, ki je opisan v 3. poglavju. V eksperiment smo vključili tudi dve eksotermni kemični reakciji, ki potekata v jedru šaržnega reaktorja in povzročata časovno spremenljivost dinamike celotnega sistema. 12.3.1 Modificirani matematični model šaržnega reaktorja Matematični model šaržnega reaktorja je podan v enačbah v razdelku 3.2. Dinamiko v jedru šaržnega reaktorja opisuje enačba (3.1), dinamiko v plašču pa enačba (3.2). Ker v jedru reaktorja potekata eksotermni kemični reakciji, moramo enačbo 12.3 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 231 za dinamiko jedra šaržnega reaktorja razširiti, kot jo podaja izraz (12.34). = \S(TW -T) + Qr (12.34) V enačbi (12.34) označuje Qr toplotno moč, ki jo proizvajata eksotermni kemični reakciji v jedru šaržnega reaktorja. Model, ki ga uporablja algoritem za adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela, mora biti zapisan v obliki časovno spremenljive linearne samoregresijske strukture z zunanjimi vhodi, kot jo podaja enačba (12.1) v razdelku 12.2.1. V enačbo za dinamiko plašča šaržnega reaktorja (3.2) torej vpeljemo pomožni vhod upam, kot ga podaja preslikava nelinearnega regresorja iz enačbe (3.2). Preslikava je zapisana v izrazu (12.35). upam = kMTm + (1 - kM)Tw (12.35) Omenimo naj, da pomožnega vhoda upom ne moremo direktno meriti. Kljub temu pa ga lahko ocenimo iz podatkov o temperaturi sveže vhodne vode Tin, temperature v plašču Tw in položaja mešalnega ventila kM, kot kaže enačba (12.35). Pomožni vhod upom je tudi omejen, kot kaže izraz (12.36). Tc = 12 °C < upom cwupom - 4>cwTw- dt (12.37) -\S(TW - T) - \0So(Tw - T0) Maso komponent v jedru šaržnega reaktorja m določa enačba (12.48), masa vode v plašču pa je mw = 200 kg. Specifično toploto komponent v jedru c določa 232 Adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela enačba (12.50), specifična toplota vode v plašču pa je cw = 4200 J kg"1 K"1. Pretok vode v plašču znaša (p = 1,6 kg s"1, prevodnost toplotnega stika med jedrom in plaščem znaša A = 420 W m"2 K"1, prevodnost toplotnega stika med plaščem in okolico znaša A0 = 84 W m"2 K"1, površina toplotnega stika med jedrom in plaščem znaša S = 2 m2, površina toplotnega stika med plaščem in okolico pa znaša S0 = 4 m2. 12.3.2 Kinetični model eksotermnih kemičnih reakcij Kinetična modela eksotermnih reakcij, ki ju obravnavamo v tem eksperimentu, sta bila razvita za Warren Spring Laboratory [115, 53, 50]. Obravnavamo torej dve kemični reakciji, ki ju podajata izraza (12.38) in (12.39). A + B^C (12.38) A + C^D (12.39) Koncentracija (število kilomolov) komponent A, B, C in D se spreminja v skladu s hitrostjo reakcije, v kateri se proizvaja komponenta C, in hitrostjo reakcije, v kateri se proizvaja komponenta D. Če hitrost prve reakcije označimo z R1} druge pazil2, lahko zapišemo dinamiko spreminjanja koncentracij posameznega reagenta, kot jih podajajo enačbe (12.40), (12.41), (12.42) in (12.43). ^ = -Rx - R2 (12.40) ^^ = -Ri (12.41) ^ = +RX - R2 (12.42) 12.3 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 233 ^^ = +R2 (12.43) Če predpostavimo, da so reagenti v tekočem agregatnem stanju in dobro premešani, potem sta hitrosti reakcij Rx in R2 odvisni od koncentracij reagentov in hitrostnih konstant kx in k2, kot je zapisano v enačbah (12.44) in (12.45). Rx = hMAMB kmorV1 (12.44) R2 = k2MAMc kmorV1 (12.45) Hitrostni spremenljivki kx in k2 reakcij (12.38) in (12.39) sta odvisni od temperature reagentov, kar opisuje Arrhemusova enačba. Spremenljivki sta določeni v enačbah (12.46) in (12.47). h = e(fci-™k-c) (12.46) k2 = e(k21-T+27k3,215 oC) (12.47) Ostale fizikalne koliˇcine, ki nastopajo v reakciji, so podane v enaˇcbah (12.48), (12.49), (12.50) in (12.51). m = wAMA + wBMB + wcMc + wDMD (12.48) M = MA +MB +MC + MD (12.49) cAMA + cBMB + ccMc + cDMD c=------------------------------------------------------- (12.50) 234 Adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela Tabela 12.1: Parametri kemičnih reakcij. OZNAKA VREDNOST POMEN wA 30 kg kmol-1 specifična masa komponente A WB 100 kg kmol-1 specifična masa komponente B wC 130 kg kmol-1 specifična masa komponente C wD 160 kg kmol-1 specifična masa komponente D cA 75,31 kJ kmol-1 oC-1 specifična toplota komponente A Cb 167,36 kJ kmol-1 oC-1 specifična toplota komponente B cC 217,57 kJ kmol-1 oC-1 specifična toplota komponente C cD 334,73 kJ kmol-1 oC-1 specifična toplota komponente D k\ 20,9057 hitrostna konstanta reakcije ki 10000 oC hitrostna konstanta reakcije k2 38,9057 hitrostna konstanta reakcije k2 17000 oC hitrostna konstanta reakcije AHi -41840 kJ kmol"1 entalpija reakcije AH2 -25105 kJ kmol"1 entalpija reakcije Qr = -AHiRi - AH2R2 (12.51) V enačbah (12.48), (12.49), (12.50) in (12.51) označuje m skupno maso komponent; M označuje skupno koncentracijo, MA, MB, MC in MD pa koncentracijo posamezne komponente v jedru; c pa je specifična toplota zmesi v jedru šaržnega reaktorja. Parametri reakcije so podani v tabeli 12.1. 12.3.3 Ocenjevanje parametrov V primeru šaržnega reaktorja lahko iz predhodnega znanja o procesu oz. poznavanja enačb (12.34), (12.35) in (12.37) predpostavimo strukturo inkrementalnega 12.3 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 235 modela v časovnodiskretni obliki. Parametre procesa, vključno s časovno spremenljivimi lastnostmi kemične reakcije, ki se odvija v reaktorju, moramo identificirati sproti, tj. med delovanjem reaktorja. Kot kažeta enačbi (12.52) in (12.53), uporabljamo dva neodvisna modela v obliki časovno spremenljive linearne samoregresijske strukture z zunanjimi vhodi, ki jima tudi neodvisno ocenjujemo parametre. Indeks / označuje filtrirani signal. yfl(k) = ijjl(k)el(k) (12.52) yf2(k) = ijj2(k)e2(k) (12.53) yn(k) = TwJ(k) označuje filtrirani izhod prvega modela, ki predstavlja temperaturo v plašču, yf2(k) = Tf{k) pa filtrirani izhod drugega modela, ki predstavlja temperaturo v jedru šaržnega reaktorja. Regresorji vsebujejo temperaturo plašča in jedra reaktorja ter pomožni vhod, kot kažeta enačbi (12.54) in (12.55). ij}Tn{k) = [TwJ(k - 1) Tf{k - 1) upcmJ(k - 1)] (12.54) ipj2{k) = [TwJ(k - 1) Tf{k - 1)] (12.55) Vektorja parametrov, ki ju podajata enačbi (12.56) in (12.57), sta sestavljena iz treh oz. dveh parametrov, ki jih moramo sproti identificirati. ®l= [ 0n(k) e12(k) e13(k) ] (12.56) Q% = [ 02i(*0 M*0 ] (12-57) 236 Adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela Inkrementalni model dobimo tako, da s filtriranjem in diferenciacijo merjenih signalov odštejemo enosmerne komponente signalov, kot kaže enačba (12.5) v razdelku 12.2.2. V našem primeru sta parametra filtra, kot ju določa enačba (12.7), kf = 0,95 in p = 3. Oba modela v enačbah (12.52) in (12.53) sta linearna v parametrih, kar nam omogoča analitično izračunavanje parametrov z metodo najmanjše vsote kvadratov odstopanj. Parametre procesa algoritem ocenjuje na podlagi enačb (12.9), (12.10) in (12.11) v razdelku 12.2.2. Če enačbi (12.52) in (12.53) pretvorimo v ^-prostor, lahko opišemo dinamiko spremenljivk TwJ(k) in Tf(k), ki je odvisna od pomožnega vhoda upamJ, s prenosnima funkcijama Gmw(z) in Gm{z), ki ju podajata enačbi (12.58) in (12.59). Gmw{z) = ^Až) = i^I^ ( 58) Gm(z) = Tf^Z' =----------------- (12.59) Parametri v enačbah (12.58) in (12.59) so podani v izrazih (12.60). boj = #22#13 bij = Öi3 bo = e21e13 (12.60) «i = e22 + en a0 = 912921 - 0H022 Če predpostavimo, da je proces spoznaven, lahko prenosni funkciji združimo v prostoru stanj in zapišemo v spoznavnostni kanonični obliki. Parametri algoritma za ocenjevanje parametrov modela, ki smo jih nastavili pred izvedbo eksperimenta, so podani spodaj. 12.3 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 237 • Čas vzorčenja signalov je ts = 20 s. Čas vzorčenja je bil izbran glede na časovne konstante procesa. • Začetne vrednosti kovariančnih matrik so bile nastavljene na P^O) = 100/3 in P2(0) = 100/2. Tu označuje Ij enotino matriko dimenzije j x j. • Začetne vrednosti parametrov procesa so bile nastavljene na Šn(0) = #22(0) = 1 in (9i2(0) = §13(0) = (92i(0) = 0. • Faktorja pozabljanja za oba modela sta bila nastavljena na 71 = 72 = 0, 995. • Faktorja mrtve cone za oba modela sta bila nastavljena na kDZl = kDZ2 = 0,01. 12.3.4 Algoritem za prediktivno funkcionalno vodenje V primeru šaržnega reaktorja želimo, da vodenje zagotovi hitro sledenje referenčni trajektoriji in da čim bolj zmanjšamo število preklopov zapornih ventilov. V eksperimentu smo predikcijski horizont algoritma za prediktivno funkcionalno vodenje nastavili na H = 10. Parameter referenčnega modela smo nastavili naar = 0,925. Regulirni zakon za šaržni reaktor izpeljemo, kot je opisano v razdelku 12.2.3. Podajata ga enačbi (12.29) in (12.30). Regulirni zakon v vsakem časovnem koraku k vrne izračunano vrednost pomožnega vhoda2 upom(k), ki pa jo moramo še preslikati v prostor originalnih vhodov sistema - kM(k), kH(k) in kc(k) - kar naredimo v zadnjem koraku algoritma. Položaj zapornih ventilov določimo z nadzorno logiko, ki jo podaja enačba (12.61). 2Preslikava je določena v enačbi (12.35). 238 Adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela če je w(k) - Tik) < δe potem kH(k) = 0 A kC(k) = 1 (12.61) sicer kH(k) = lAkC(k) = 0 V enačbi (12.61) δe določa prag za preklop (δe = -1°C). Položaj mešalnega ventila kM(k), ki ima vlogo direktne regulirne veličine, je določen z enačbo (12.62). kM{k) = Tin(k)-Tw(k) (12-62) Temperaturo sveže vhodne vode Tin(k) v enačbi (12.62) določa položaj zapornih ventilov kH(k) in kC(k). 12.3.5 Rezultati V [115] so za optimalne rezultate predlagali ekvimolarno začetno polnjenje reaktorja z reagentoma A in B, optimalna reakcijska temperatura pa naj bi se vzdrževala pri 95 °C. Na ta način smo določili potek referenčne temperature kot odsekoma konstantno funkcijo z začetkom pri 95 °C, kar zagotavlja optimalen potek reakcije, ko pa se reakcija umiri, se temperatura zniža na 25 °C, da se vsebina reaktorja pred menjavo šarže ohladi. Začetna količina reagentov A in B je bila MA(0) = MB(0) = 2 kmol, začetna temperatura pa T(0) = Tw(0) = T0 = 17 °C. Slika 12.1 prikazuje potek referenčne temperature w, temperature v jedru T in v plašču reaktorja Tw, slika 12.2 pa potek vhodnih signalov kM, kH in kC. Vidimo lahko, da temperatura v jedru zadovoljivo sledi referenčni temperaturi. Na sliki 12.3 je prikazan potek reakcije, tj. koncentracij posameznih reagentov MA, MB, MC, MD. Opazimo lahko zmanjševanje koncentracij komponent A in B in povečevanje koncentracij komponent C in D med potekom reakcij. Hitrost poteka posamezne reakcije lahko določimo iz naklona poteka koncentracije 12.3 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 239 110 100 90 80 70 60 50 40 30 20 10 Slika 12.1: Temperatura v jedru T, v plašču Tw in referenčni signal w. ustreznega reagenta. Slika 12.3 prikazuje tudi toplotno moč, ki se sprošča med potekom eksotermnih kemičnih reakcij. Sliki 12.4 in 12.5 prikazujeta ocenjene vrednosti parametrov procesa 0n, 612 in 0i3 oz. 021 in 022. Slike so zaradi jasnosti ustrezno približane, vendar zato ne prikazujejo začetnih vrednosti parametrov. 12.3.6 Komentar Uporabnost algoritma za adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela smo preverili na primeru vodenja šaržnega reaktorja, ki je vključevalo tudi eksotermni reakciji. Rezultati so pokazali, da uporaba algoritma omogoča izpolnitev zahtev vodenja - kljub izrazito eksotermnim reakcijam, ki v model procesa vpeljujta časovno \ T - ; / \ ----T w w _/ \ /^-7 JŽ^^ / / x / i i i / \ i i L 1 1 1 r 1 -J 1 1 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ l \ t 2000 4000 6000 t [s] 8000 10000 12000 0 240 Adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela 1 T I----------1 0.5 h 0r____________________ '—lv - 0 2000 4000 6000 8000 10000 12000 1 ---------------------------------------------------------------------------------------------------------1 i-------------------------------------------------------------------------------- 0.5 - 0\2___________________________| [__________________- 0 2000 4000 6000 8000 10000 12000 1 - j i - 0.5 - 0| —|_______l - 0 2000 4000 6000 8000 10000 12000 t [s] Slika 12.2: Vhodni signali kM, kH in kc. spreminjajoče parametre - in to kljub temu, da kinetičnega modela reakcij (v okviru algoritma) ne poznamo. Temperatura v jedru zadovoljivo sledi referenčnemu signalu, kar zagotavlja kratek čas obdelave posamezne šarže, poleg tega pa vodenje brez prevzpona zagotavlja kakovost produkta. Tudi število preklopov zapornih ventilov je minimalno. Adaptivna narava algoritma ima za posledico dobro kompenziranje izrazito ek-sotermnih kemičnih reakcij. S prilagajanjem časovno spremenljivim dinamičnim lastnostim procesa algoritem prepreči toplotni pobeg in omogoča odziv brez prevzpona, kar ne bi bilo mogoče, če bi uporabljali časovno nespremenljivi model. Šaržni reaktorji imajo velikokrat izrazito nelinearno in hibridno dinamiko. Prav tako jih ne moremo vedno obravnavati kot časovno nespremenljive sisteme, posebno če se v njih odvijajo endo- ali eksotermne reakcije s pogosto neznanimi 12.3 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 241 1.5 1 0.5 0 2000 4000 6000 8000 10000 MA MB M M 12000 10 8 6 4 2 0 x 10 0 2000 4000 6000 t [s] 8000 10000 12000 Slika 12.3: Koncentracije reagentov in toplotna moč. kinetičnimi lastnostmi. V tem poglavju smo predstavili pristop, s katerim se lahko nekaterim omenjenim kompleksnim lastnostim procesa pri načrtovanju vodenja izognemo in na ta način omogočimo zadovoljivo vodenje tovrstnih sistemov. Z vpeljavo pomožnega vhoda lahko sistem, ki ga želimo voditi, lineariziramo. Pomožni vhod v algoritmu obravnavamo kot sistemski vhod. Linearizacija sistema olajša implementacijo metode za adaptivno prediktivno vodenje. Na ta način je mogoče ustrezno upoštevati časovno spremenljivost dinamike procesa, kar je nujno, saj imajo eksotermne reakcije, ki potekajo v jedru šaržnega reaktorja in katerih kinetičnega modela v osnovi ne poznamo, lahko velik vpliv na dinamične lastnosti celotnega sistema. Hibridno dinamiko smo v primeru šaržnega reaktorja obravnavali v okviru nadzorne logike v zadnjem koraku algoritma za vodenje, tj. pri preslikavi 0 242 Adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela 0.814 0.813 0.812 0.811 0.026 0.024 0.022 0.02 0 0.1615 0.161 0.1605 0.16 0.1595 0 2000 4000 6000 8000 10000 12000 2000 4000 6000 8000 10000 12000 2000 4000 6000 t [s] 8000 10000 12000 Slika 12.4: Ocenjene vrednosti parametrov θ11, θ12 in θ13. pomožnega vhoda, ki ga regulirni zakon vrne v vsakem časovnem koraku, v prostor originalnih vhodov sistema. Na ta način smo lahko število preklopov zapornih ventilov omejili na minimum in s tem razbremenili aktuatorje, kar ima za posledico manjšo obrabo in manjšo porabo energije, ki je potrebna za vodenje šaržnega reaktorja. Algoritem določa regulirni zakon v eksplicitni obliki, zato je računska zahtevnost izvedbe majhna, posebno v primerjavi z optimizacijskimi pristopi. Algoritem za implementacijo torej ne zahteva drage strojne opreme. 0 12.3 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 243 0.036 0.034 0.032 0.03 2000 4000 6000 8000 10000 12000 0.976 0.974 0.972 0.97 0.968 0.966 0 2000 4000 6000 t [s] 8000 10000 12000 0 Slika 12.5: Ocenjene vrednosti parametrov θ21 in θ22. 244 Adaptivno prediktivno vodenje z identifikacijo lokalnega linearnega modela 13. Vodenje z inverznim modelom V tem poglavju bomo opisali metodo za vodenje z inverznim modelom [80], primerno za sisteme z enim izhodom, ki jih lahko zapiˇsemo v obliki hibridnega mehkega modela – glej 5. poglavje. 13.1 Dvodelnost algoritma za vodenje z inverznim modelom Osnovna ideja obravnavanega pristopa je dvodelnost algoritma za vodenje. Algoritem je sestavljen iz: • krmilnega dela (angl. feedforward) in • regulacijskega dela (angl. feedback). Sploˇsna shema vodenja je prikazana na sliki 13.1. Krmilni del algoritma za vodenje uporablja hibridni mehki model (glej 5. poglavje) sistema, ki ga ˇzelimo voditi, oz. njegov inverzni model, s katerim doloˇci primerne krmilne signale uK za sledenje referenˇcni trajektoriji yref. Krmilni del algoritma torej iz referenˇcnega signala yref v vsakem ˇcasovnem koraku k doloˇca krmilne signale uK. Regulacijski del algoritma izraˇcuna ustrezne popravke krmilnih signalov uK, tj. regulirne signale uR, ki jih doloˇci glede na izmerjeni izhodni signal sistema y. 245 246 Vodenje z inverznim modelom Slika 13.1: Splošna shema vodenja. Osnovnim krmilnim signalom uK algoritem prišteje izračunani popravek, tj. regulirne signale uR. Vsota obeh signalov je končni vhodni signal u, ki se dejansko uporabi za vodenje procesa v vsakem časovnem koraku k, kot kaže enačba (13.1). u(k) = uK(k) + uR(k) (13.1) Glavna prednost predlaganega pristopa je, da lahko s krmilnim delom algoritem za vodenje izhod sistema y pripelje v bliˇzino referenˇcne trajektorije yref . Omenimo, da je dejanska oddaljenost izhoda sistema y od referenˇcne trajek-torije yref , ki jo lahko doseˇzemo samo s krmilnim delom algoritma za vodenje, odvisna od natanˇcnosti hibridnega mehkega modela in dosegljivosti referenˇcne trajektorije glede na morebitne omejitve vhodov, izhodov in stanj sistema. Omejitve lahko izhajajo iz fiziˇcnih lastnosti sistema ali iz tehnoloˇskih zahtev, ki so nujne za kakovostno vodenje. Z uporabo hibridnega mehkega modela krmilni del pri doloˇcanju krmilnih signalov uK upoˇsteva nelinearno in hibridno dinamiko sistema, pa tudi morebitne omejitve vhodov, izhodov in stanj sistema. 13.2 Inverzni hibridni mehki model 247 Ko je izhod sistema y v bližini referenčne trajektorije yref, lahko uporabimo relativno preprost regulacijski del, s katerim zagotovimo kakovostno vodenje. Glede na to, da regulacijski del algoritma za izračun regulirnega signala uR upošteva izmerjeni izhodni signal sistema y, predstavlja dopolnitev krmilnega dela algoritma za vodenje in na ta način kompenzira odstopanja izhoda sistema y od referenčne trajektorije yref. Do odstopanj lahko pride zaradi različnih vzrokov, kot so nenatančnost hibridnega mehkega modela, šum, morebitne motnje v realnem sistemu ipd. 13.2 Inverzni hibridni mehki model Kot smo omenili v razdelku 13.1, uporablja krmilni del algoritma za vodenje za izračun primernih krmilnih signalov uK za sledenje referenčni trajektoriji yref inverzni hibridni mehki model sistema, ki ga želimo voditi. V tem razdelku bomo torej izpeljali inverzni hibridni mehki model. Hibridni mehki model je natančneje opisan v 5. poglavju. Predpostavimo, da hibridni mehki model sistema, ki ga želimo voditi, predhodno poznamo. Izhod hibridnega mehkega modela v kompaktni obliki, ki ga podaja enačba (5.10) v razdelku 5.2.3, lahko ponovno zapišemo, kot kaže enačba (13.2). yp(k + 1) = ß(y(k)) &T(q(k)) ifi(k) (13.2) Kot je zapisano v enačbi (13.2), predpostavimo, da ima sistem en izhod in da so mehke množice oz. pripadnostne funkcije v modelu določene glede na ta izhod (ß(k) = ß(y(k))). Poleg tega predpostavimo tudi, da ima sistem en zvezni vhod uzv, ki je v zapisu (13.2) vključen v regresorju ip(k). Predpostavimo, da je način delovanja, tj. diskretno stanje q(k), določen z diskretnimi vhodi. V primeru, da je način delovanja odvisen tudi od izhoda modela (in ne samo od diskretnih vhodov), lahko to upoštevamo že v zapisu 248 Vodenje z inverznim modelom modela: poleg mehkih množic A] uvedemo v pravila hibridnega mehkega modela Rjd tudi ostre množice, ki določajo odsekoma konstantne pripadnostne funkcije v zvezi z načinom delovanja - glej izraz (5.8) v razdelku 5.2.2. Če upoštevamo enačbe (5.12), (5.13), (5.14) in (5.15) v razdelku 5.2.3 in pomen parametrov v teh enačbah, lahko zapišemo izraze (13.3), (13.4), (13.5) in (13.6). n K SA,vav = ^2^2ßj(y(k)) atjd(q(k)) y(k-i + 1) (13.3) %=i j=\ m K SB,vav = Y,Y1 ß^k)) bijd(q(k)) uzv(k -i + l) (13.4) i=2 j=l K SR,mv = ^ßj(y(k)) rjd(q(k)) (13.5) i=i K Su,inv = J2ßi(y(k)) bijd(q(k)) (13.6) i=i Z nekaj matematičnimi operacijami lahko z uporabo enačb (5.12), (5.13), (5.14) in (5.15) v razdelku 5.2.3 ter prej zapisanih izrazov (13.3), (13.4), (13.5) in (13.6) zapišemo izhod inverznega modela, ki ga podaja enačba (13.7). uzv{k) = Mk + D-s^-Ss^-s^ (137) Inverzni model v obliki, ki je zapisan v izrazu (13.7), predstavlja osnovo za načrtovanje krmilnega dela algoritma za vodenje. 13.3 Krmilni del algoritma za vodenje Inverzni hibridni mehki model, ki smo ga v razdelku 13.2 izpeljali iz zapisa hibridnega mehkega modela, uporabimo v krmilnem delu algoritma za vodenje. 13.3 Krmilni del algoritma za vodenje 249 Osnovni mehanizem krmiljenja z inverznim modelom je, da na vhod krmilnega dela pripeljemo referenčni signal yref, izhod pa v vsakem časovnem koraku k vrača izračunane krmilne signale uK, ki naj bi dejanski izhod sistema y čim bolj približali referenčnemu signalu yref. Z uporabo hibridnega mehkega modela krmilni del pri določanju krmilnih signalov uK upošteva nelinearno in hibridno dinamiko sistema. Seveda je pri izračunavanju krmilnih signalov uK treba upoštevati tudi morebitne omejitve vhodov, izhodov in stanj sistema, ki lahko izhajajo iz fizičnih lastnosti sistema ali iz tehnoloških zahtev, ki so nujne za kakovostno vodenje. Krmilni del algoritma za vodenje mora v vsakem časovnem koraku k izvesti naslednje korake. • Izvorni referenčni signal yref mora prilagoditi tako, da ga premakne v območje zaloge vrednosti predikcije izhoda sistema, ki ga želimo voditi, v naslednjem časovnem koraku yp(k + 1). • Izbrati mora najustreznejši način delovanja, tj. diskretni del krmilnega signala uK. • Izbrati mora najustreznejši zvezni vhod v sistem, tj. zvezni del krmilnega signala uK. Na ta način bo lahko krmilni del algoritma za vodenje izhod sistema y približal prilagojenemu referenčnemu signalu yref. 13.3.1 Matrika dosegljivosti hibridnega mehkega modela V prvem koraku krmilni del algoritma za vodenje uporabi hibridni mehki model sistema, ki ga podaja enačba (13.2), za izračun zaloge vrednosti predikcije izhoda sistema, ki ga želimo voditi, v naslednjem časovnem koraku yp(k + 1). Pri tem upošteva morebitne omejitve vhodov oz. izhoda sistema. 250 Vodenje z inverznim modelom Poudariti je treba, da je hibridni mehki model monoton v smislu, da ima skrajna1 vrednost zveznega dela vhodnega signala uzv za posledico skrajno vrednost izhoda hibridnega mehkega modela yˆp(k + 1) v okviru vsakega naˇcina delovanja (q = 1,. ..,s). Zaradi tega lahko samo s po dvema izraˇcunoma za vsak naˇcin delovanja (q = 1, . . . , s) doloˇcimo matriko dosegljivosti hibridnega mehkega modela Rˆp(k + 1), ki jo podaja izraz (13.8). Rp(k + 1) ijP,mm(k + l)\q{k)=l yp,max(k + l)Uk)=i yP,mm(k + l)\q{k)=s yP,max(k + l)Uk)=s (13.8) Matrika dosegljivosti hibridnega mehkega modela Rp(k + l), ki jo podaja izraz (13.8), je sestavljena iz s vrstic in 2 stolpcev in vsebuje intervale zaloge vrednosti predikcije izhoda sistema, ki ga želimo voditi, v naslednjem časovnem koraku yp(k + 1), in sicer glede na način delovanja q(k). Vsaka vrstica označuje enega od mogočih načinov delovanja (q(k) = 1,... , s). 13.3.2 Prilagoditev referenčnega signala Pri večini sistemov, ki jih želimo voditi, imamo opravka z omejitvami vhodov, izhodov in stanj sistema, ki lahko izhajajo iz fizičnih lastnosti sistema ali iz tehnoloških zahtev, ki so nujne za kakovostno vodenje. Te omejitve moramo seveda upoštevati, kar pa pri osnovnem vodenju z inverznim modelom ni mogoče. Inverzni model namreč iz referenčnega signala yref, ki ga pripeljemo na njegov vhod, na svojem izhodu vrne izračunani vhodni signal sistema, pri tem pa se lahko zgodi, daje vhodni signal sistema nedosegljiv (zaradi omejitev v realnem sistemu) ali celo nerealen (neskončen signal, npr. diracov impulz). Do izračuna neustreznega vhodnega signala pride zaradi nedosegljivosti referenčne trajektorije, ki ne 1Skrajna v smislu, da je vrednost zveznega dela vhodnega signala uzv na skrajnem robu omejenega definicijskega obmoˇcja uzv. _ 13.3 Krmilni del algoritma za vodenje 251 upošteva omejitev v sistemu. Če torej želimo z inverznim modelom določiti ustrezen vhodni signal, mora algoritem predhodno referenčni signal prilagoditi, tako da postane dosegljiv v okviru sistema in njegovih omejitev. Prilagojeni referenčni signal označimo z yref in ga določimo, kot je opisano v nadaljevanju. Pri določanju prilagojenega referenčnega signala yref obravnavamo dve možnosti. 1. Referenčni signal pripada (vsaj) enemu izmed intervalov zaloge vrednosti predikcije izhoda sistema v naslednjem časovnem koraku, ki sestavljajo matriko dosegljivosti hibridnega mehkega modela Rp(k + 1) v enačbi (13.8). To pomeni, da velja izraz (13.9). 3d e{l,2,...,s}, tako da velja (13.9) Vref(k) E [yp,mln(k + l)\q{k)=d,yp,max(k + l)|,(fc)=d]. Če velja izraz (13.9), lahko ugotovimo, da je referenčna trajektorija v tem časovnem koraku dosegljiva. V tem primeru prilagojenemu referenčnemu signalu priredimo vrednost izvornega referenčnega signala, kot podaja izraz (13.10). Vref(k) = yref(k) (13.10) 2. Referenčni signal ne pripada nobenemu izmed intervalov zaloge vrednosti predikcije izhoda sistema v naslednjem časovnem koraku, ki sestavljajo matriko dosegljivosti hibridnega mehkega modela Rp(k + 1) v enačbi (13.8). To pomeni, da velja izraz (13.11). $de{l,2,...,s\, tako da bi veljalo (13.11) VreAk) e [yp,mm(k + l)\q{k)=d)yp,max(k + l)\g{k)=d\. 252 Vodenje z inverznim modelom Če velja izraz (13.11), lahko ugotovimo, da referenčna trajektorija v tem časovnem koraku ni dosegljiva. Izvorni referenčni signal moramo v tem primeru prilagoditi tako, da ga premaknemo v območje zaloge vrednosti predikcije izhoda sistema v naslednjem časovnem koraku. Algoritem torej izbere tisti element matrike dosegljivosti hibridnega mehkega modela Rp(k + 1), ki je najbližji izvorni referenčni vrednosti yref(k). V tem primeru prilagojenemu referenčnemu signalu priredimo vrednost izbranega elementa matrike dosegljivosti hibridnega mehkega modela Rp(k + 1), kot podaja izraz (13.10). yref(k) = &rgxmm\x - yref(k)\, kjer velja x G {[Rp(k + 1)]„} (13.12) za i = 1,2,..., s in j = 1,2 V izrazu (13.10) označuje [Rp(k + l)]itj element v «-ti vrstici in j-tem stolpcu matrike dosegljivosti hibridnega mehkega modela Rp(k + 1). 13.3.3 Določitev diskretnega dela krmilnega signala Diskretni del krmilnega signala, tj. način delovanja oz. diskretno stanje hibridnega mehkega modela, algoritem določi glede na prilagojeni referenčni signal i)ref(k) in matriko dosegljivosti hibridnega mehkega modela Rp(k + 1). Pri izbiri načina delovanja sistema q(k) moramo upoštevati obstoj oz. število (r) načinov delovanja q(k), ki zadoščajo enačbi (13.13). Vref{k) e [yp,mm{k + l)\q(k)=dl,yP,maX(k + l)\q(k)=di] (13.13) pri čemer dk G {1, 2,..., s} za vsak i=l,...,r. Glede na število r obravnavamo tri različice, ki so opisane v nadaljevanju. 13.3 Krmilni del algoritma za vodenje 253 • Ne obstaja noben način delovanja sistema q(k) = (U, ki bi zadoščal enačbi (13.13), tj. r = 0, kot je podano v množici rešitev Qr v izrazu (13.14). q(k) E Qr = {} (13.14) Glede na to, da smo referenčni signal premaknili v območje zaloge vrednosti predikcije izhoda sistema v naslednjem časovnem koraku, kot je opisano v razdelku 13.3.2, se opisana situacija sploh ne more zgoditi, zato lahko njeno obravnavo v algoritmu za vodenje izpustimo. • Število načinov delovanja sistema q(k) = di} ki zadoščajo enačbi (13.13), je enako r = 1, kot je podano v množici rešitev Qr v izrazu (13.15). q(k) EQr = {di} (13.15) V tem primeru je diskretni del krmilnega signala enolično določen v množici rešitev Qr v izrazu (13.15), saj množica vsebuje samo en element. • Število načinov delovanja sistema q(k) = di} ki zadoščajo enačbi (13.13), je enako r > 1, kot je podano v množici rešitev Qr v izrazu (13.15). q(k)EQr = {d1,d2,...,dr} (13.16) V tem primeru so v množici rešitev Qr v izrazu (13.16) podane vse tiste rešitve za določitev diskretnega dela krmilnega signala, z uporabo katerih lahko - glede na hibridni mehki model - predikcija izhoda sistema v naslednjem časovnem koraku yp(k + 1) zavzame vrednost prilagojenega referenčnega signala yref(k). Ugotovimo torej, da imamo več rešitev q(k), za katere je prilagojeni referenčni signal yref(k) dosegljiv. 254 Vodenje z inverznim modelom Ustrezno rešitev mora algoritem izbrati z uporabo nadzorne logike. To v splošnem pomeni, da, za vsako izmed mogočih rešitev iz množice Qr za določitev diskretnega dela krmilnega signala, najprej določi še ustrezni zvezni del krmilnega signala, kot je opisano v razdelku 13.3.4. Na ta način dobimo r rešitev krmilnega signala uK, ki jih algoritem za vodenje v okviru nadzorne logike ovrednoti (glede na preddoločeni kriterij) in izbere najustreznejšo izmed njih. 13.3.4 Določitev zveznega dela krmilnega signala Osnovni zakon, ki ga uporablja krmilni del algoritma za vodenje, lahko izpeljemo z modifikacijo enačb (13.7), (13.3), (13.4), (13.5) in (13.6) v razdelku 13.2, in sicer z naslednjimi zamenjavami. • Zvezni del vhodnega signala sistema zamenjamo z zveznim delom krmilnega signala, ki ga računamo v trenutnem časovnem koraku oz. smo ga določili v prejšnjih časovnih korakih, kot kaže izraz (13.17). uzv(i)-> uKzv(i) (13.17) zai = k-m+l,k-m + 2,...,k • Predikcijo izhoda sistema v naslednjem časovnem koraku zamenjamo z želenim izhodom sistema, tj. s prilagojeno referenčno vrednostjo, kot kaže izraz (13.18). yp(k + 1) -> yref(k) (13.18) • Izhode sistema v prejšnjih časovnih korakih zamenjamo z za en korak zamaknjenimi želenimi izhodi sistema, tj. s prilagojenim referenčnim signalom, kot kaže izraz (13.19). 13.3 Krmilni del algoritma za vodenje 255 y{i) -► Vrefii - i) (13.19) zai = k-n+l,k-n + 2,...,k • Pri določanju normiranih stopenj pripadnosti izhode sistema zamenjamo s prilagojeno referenčno vrednostjo v prejšnjem časovnem koraku, kot kaže izraz (13.20). ßj{y{k)) -> ßAVrefik - 1)) (13.20) Z upoštevanjem omenjenih zamenjav lahko torej izpeljemo osnovni zakon, ki ga uporablja krmilni del algoritma za vodenje, in ga zapišemo v enačbah (13.21), (13.22), (13.23) in (13.24). uK>zv{k) = itllM—Sa—Sb—Sr ^13 21^ n K Sa = ^2^2ßj(yref(k - 1)) aijd(q(k)) Vrefik - l) (13.22) m K Sb = ^2^2ßj(yref(k - 1)) bijd(q(k)) uK,zv(k -i + l) (13.23) i=2 j=l K SR = Y,ßj(Vref(k - 1)) rjd(q(k)) (13.24) i=i K Su = ^ßj(yref(k - 1)) bijd(q(k)) (13.25) i=i Enačbe (13.21), (13.22), (13.23) in (13.24) predstavljajo jedro krmilnega dela algoritma za vodenje. S temi enačbami algoritem v vsakem časovnem koraku k uporabi inverzni hibridni mehki model in na ta način določi ustrezen zvezni del 256 Vodenje z inverznim modelom uK,zv krmilnega signala uK, ki naj bi dejanski izhod sistema y čim bolj približal referenčnemu signalu yref. Omenimo, da bi bil v idealnem primeru - tj. ko hibridni mehki model popolnoma natančno opisuje dinamiko sistema, ki ga želimo voditi -zaradi kavzalnosti dejanski izhod sistema enak za en časovni korak zakasnjenemu referenčnemu signalu (yid(k) = yref(k - 1)). 13.4 Regulacijski del algoritma za vodenje Krmilni del algoritma za vodenje, ki smo ga obravnavali v razdelku 13.3, uporablja hibridni mehki model (glej 5. poglavje) sistema, ki ga želimo voditi, oz. njegov inverzni model, ki je opisan v razdelku 13.2. V vsakem časovnem koraku k določa primerne krmilne signale uK, ki naj bi dejanski izhod sistema y čim bolj približali referenčnemu signalu yref oz. prilagojenemu referenčnemu signalu yref (glej razdelek 13.3.2). Pri tem upošteva nelinearno in hibridno dinamiko sistema ter morebitne omejitve vhodov, izhodov in stanj sistema, ki lahko izhajajo iz fizičnih lastnosti sistema ali iz tehnoloških zahtev, ki so nujne za kakovostno vodenje. Krmilni del algoritma pri delovanju upošteva samo model sistema, ki ga želimo voditi, ne pa tudi dejanskih izhodov (oz. stanj), ki jih lahko merimo. Zaradi tega lahko pri vodenju pride do odstopanj izhoda sistema y od prilagojene referenčne trajektorije yref. Do odstopanj lahko pride zaradi različnih vzrokov, kot so nenatančnost hibridnega mehkega modela, šum, morebitne motnje v realnem sistemu, zakasnitve ipd. Regulacijski del algoritma za vodenje izračuna ustrezne popravke krmilnih signalov uK, tj. regulirne signale uR, ki jih določi glede na odstopanje izmerjenega izhodnega signala sistema y od prilagojene referenčne trajektorije yref. Na ta način regulacijski del algoritma dopolnjuje krmilni del v smislu upoštevanja povratnozančnih signalov, kar je v splošnem nujno za kakovostno vodenje. 13.4 Regulacijski del algoritma za vodenje 257 13.4.1 Linearizacija hibridnega mehkega modela Hibridni mehki model sistema, ki ga želimo voditi, podaja enačba (13.2). V vsakem časovnem koraku k ga lahko lineariziramo v delovni točki (y(k)) in zapišemo v prostoru stanj, kot podaja izraz (13.26). xiiJk + 1) = AiiJk) xiiJk) + BiiJk) uUn(k) (13.26) yiin(k) = CUn(k) xUn(k) + Dlin(k) uHn(k) V izrazu (13.26) označuje x(k) G Rn stanje sistema, u{k) G Rm vhod v sistem, y(k) G R pa izhod sistema. S k je označen trenutni časovni korak sistema. Matrike AHn(k) G Rnxn, BHn(k) G Rnxm, Clm(k) G Rlxn in DUn(k) G Elxm določajo dinamiko lineariziranega sistema. Omenimo, da lahko v obliki izraza (13.26) zapišemo tudi lineariziran model dinamike sistema, ki ga želimo voditi, ki je v osnovni obliki sestavljen iz vzporedno ali zaporedno povezanih hibridnih mehkih modelov. Glede na predpostavke v razdelku 13.2, lahko vhod lineariziranega modela zapišemo v enačbi (13.27). ulin(k) uzv,lin(k) 1 (13.27) Zadnji element vektorja vhoda lineariziranega modela uHn(k) omogoča upoštevanje delovne točke, okrog katere je določen model. Iz zapisa hibridnega mehkega modela v enačbi (13.2) lahko brez izgube splošnosti ugotovimo, da je izhod lineariziranega sistema ylin v določenem časovnem koraku odvisen samo od stanja xHn, ne pa tudi od vhoda lineariziranega sistema uHn, kar predpišemo v izrazu (13.28). _ DUn(k) = 0 (13.28) 258 Vodenje z inverznim modelom 13.4.2 Večkoračna predikcija lineariziranega modela Glede na izpeljavo v razdelku 13.4.1 lahko izraz za enokoračno predikcijo lineariziranega sistema zapišemo, kot podaja enačba (13.29). xunik + 1 | k) = Alm(k) xlm(k I k) + Blm(k) yHn(k | k) = Clm(k) xHn(k | k) Uzv,Un(k I k) 1 (13.29) Izhod procesa raˇcunamo pri predpostavki, da so vhodni signali do horizonta konstantni, kot podaja enaˇcba (13.30). uzv,un(k\k) = uzv,lm(k + l\k) uzv,lin(k + H - 1 | k) (13.30) V tem primeru lahko iz izraza za enokoračno predikcijo (13.29) izpeljemo izraz za H-koračno predikcijo lineariziranega sistema, kot ga podaja enačba (13.31). xlin(k + H | k) = AHlin(k) xlin(k | k)+ + (AHlin(k) - I) (Alin(k) - I)-1 Blin(k) Uzv,Un(k I k) 1 ylm(k + H\k) = Clm{k) xlm{k + H \ k) (13.31) V enaˇcbi (13.31) predstavlja I ∈ Rn×n enotino matriko ustrezne dimenzije. 13.4.3 Inkrementalni model Stanje, vhod in izhod sistema lahko zapiˇsemo v obliki vsote, kot podajajo izrazi (13.32), (13.33) in (13.34). 13.4 Regulacijski del algoritma za vodenje 259 x = x0 + Ax (13.32) uzv = uzvfl + Auzv (13.33) y = y0 + Ay (13.34) V tem primeru lahko enokoračno predikcijo lineariziranega modela zapišemo v enačbi (13.35). x0(k + 1 | k) + Ax(k + 1 | k) = AUn(k) (x0(k | k) + Ax(fc | k))+ uzv,0(k\ k) + Auzv(k\ k) +Blin(k) (13.35) yo(k + l | fc) + Ay(fc + l | fc) = Qm(fc) (x0{k + 1 | fc)+Ax(fc + 1 | k)) Predpišemo, da signali x0, uzv>0 in y0 ustrezajo referenčnim oz. krmilnim signalom, ki jih algoritem za vodenje določa v krmilnem delu. Krmilni del algoritma torej zagotavlja, da velja enačba (13.36). x0(k + 1 | k) = Alm{k) x0(k | k) + Blm{k) uzv,0(k | k) 1 (13.36) y0(k + 1 | k) = Clm{k) x0(k + 1 | k) Če od izraza (13.35) odštejemo izraz (13.36), dobimo inkrementalni model, ki ga podaja izraz (13.37). 1 260 Vodenje z inverznim modelom Ax(k + 1 I k) = Alm(k) Ax(k | k) + Blm(k) Ay(k + 1 | k) = Clm{k) Ax(k + 1 | k) Auzv(k | k) 0 (13.37) H-koračno predikcijo inkrementalnega modela podaja enačba (13.38). Ax{k + H\k) = A%n(k) Ax{k | k)+ (Afn(fc) - t) (Alin(k) ~ I)'1 Blm(k) Auzv(k | k) 0 (13.38) Ay(k + H\k) = Clm{k) Ax{k + H\k) V izrazu (13.38) označuje Ax(k | k) odstopanje stanja sistema od prilagojenega referenčnega stanja v časovnem koraku k, kot podaja enačba (13.39). Ax(k\ k) = x(k) - xref(k - 1) (13.39) Izhod inkrementalnega modela Ay(k + H | k), ki ga določimo iz predikcije stanj inkrementalnega modela Ax(k + H | k), lahko zapišemo kot vsoto, ki jo podaja enačba (13.40). Ay(k + H\k) = Ayu(k + H \ k) + Ayx(k + H \ k) + Aym(k + H \ k) (13.40) Na podoben način lahko vhod inkrementalnega modela v izrazu (13.38) zapišemo kot vsoto, ki jo podaja enačba (13.41). 13.4 Regulacijski del algoritmazavodenje 261 Auzv(k I k) = uR>zv(k | k) + Auzv>m(k | k) (13.41) V izrazih (13.40) in (13.41) označuje: • Ayu(k + H | fc) predikcijo spremembe izhoda zaradi prispevka regulirnega vhoda uRzv(k\ k); • Ayx(k + H | fc) predikcijo spremembe izhoda zaradi odstopanja stanj v inkrementalnem modelu Ax(k | k); • Aym(fc + H\k) predikcijo spremembe izhoda, ki je posledica nemodelirane dinamike, tj. nenatančnosti modela, motenj v sistemu, šuma ipd.; • uR>zv{k | k) regulirni signal v časovnem koraku k in • Auzv,m(k | k) motnjo na vhodu v proces, za katero predpostavimo, da je vzrok za spremembo izhoda zaradi prispevka nemodelirane dinamike Aym(k + H | k) (tj. nenatančnosti modela, motenj v sistemu, šuma ipd.), kot je označeno v izrazu (13.40). 13.4.4 Določitev regulirnega signala Osnovna ideja regulacijskega dela algoritma za vodenje je, da se predikcija izhoda inkrementalnega modela s povečevanjem predikcijskih korakov od h = 1 do h = H približuje želeni spremembi izhoda procesa čez H korakov, ki je enaka odstopanju izhoda procesa od (zakasnjene) prilagojene reference v trenutnem časovnem koraku. Povezavo podaja enačba (13.42). Ay(k + H\k) = (l-af) (yref(k - 1) - y(k)) (13.42) 262 Vodenje z inverznim modelom V enačbi (13.42) označuje ar parameter, ki določa hitrost približevanja (ar G fO, 1)). Dinamiko približevanja opišemo s prenosno funkcijo 1. reda: ±=^. v z—ar Regulirni signal lahko v nadaljevanju zapišemo kot vsoto, ki jo podaja enačba (13.43). AuR>zv{k | k) = uR>zv>u{k | k) + uR>zv>x{k | k) + uR>zv>m{k | k) (13.43) Členi v izrazu (13.43) imajo naslednji pomen. • uRtZVtU(k | k) označuje prispevek regulirnega signala, ki bi v idealnem primeru - tj. ko je Ayx(k + H | k) = 0 in Aym(k + H \ k) = 0 - povzročil želeno spremembo izhoda Ay(k + H\k). Formulo za izračun uR>ZVtU izpeljemo iz enačb (13.38), (13.40), (13.41) in (13.42). Zapisana je v enačbi (13.44). uR,zv,u(k | k) =—ür ^ ^ref^——^^ (13.44) Vi, ki nastopa v imenovalcu izraza (13.44), je določen v enačbi (13.45). Vx = [CUn(k) (Afm(k) - I) (Alin(k) - I)'1 BuM]! (13.45) Zapis [x]i označuje «-ti element vektorja x. • uR>zv>x(k | k) označuje prispevek regulirnega signala za kompenzacijo spremembe izhoda Ayx(k + H \ k) zaradi odstopanja stanj v inkrementalnem modelu Ax(k | k). Formulo za izračun uR>zv>x izpeljemo iz enačb (13.38), (13.39), (13.40) in (13.41). Zapisana je v enačbi (13.46). UR,zv,x(k | k) = °lm^ Al^Ax^k I fc) (13.46) 13.5 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 263 • uR>zv>m(k | k) označuje prispevek regulirnega signala za kompenzacijo spremembe izhoda Aym(k + H | k), ki je posledica nemodelirane dinamike, tj. nenatančnosti modela, motenj v sistemu, šuma ipd. Ocenimo, da je AuZVtTn{k | k) « uRzv;u{k - 1 | fc - 1) in zapišemo enačbo (13.47). uR,zv,m(k I k) = uR,zv,u(k -l\k-l) (13.47) Na opisani način v vsakem časovnem koraku k določamo regulirni signal uR. Vhodni signal procesa u izračunamo z enačbo (13.1), seveda pa moramo pri tem upoštevati morebitne omejitve v sistemu. 13.5 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju Algoritem za prediktivno vodenje z inverznim modelom smo preizkusili na primeru vodenja šaržnega reaktorja, ki je opisan v 3. poglavju. 13.5.1 Matematični model šaržnega reaktorja Matematični model šaržnega reaktorja je podan v enačbah v razdelku 3.2. Dinamiko v jedru šaržnega reaktorja opisuje enačba (3.1), dinamiko v plašču pa enačba (3.2). Masa komponent v jedru šaržnega reaktorja je m = 600 kg, masa vode v plašču je mw = 40 kg. Specifična toplota komponent v jedru je cw = 4200 J kg"1 K"1, specifična toplota vode v plašču je cw = 4200 J kg"1 K"1. Pretok vode v plašču znaša (p = 1, 6 kg s"1, prevodnost toplotnega stika med jedrom in plaščem znaša A = 420 W m"2 K"1, prevodnost toplotnega stika med plaščem in okolico znaša A0 = 84 W m"2 K"1, površina toplotnega stika med jedrom in plaščem znaša 264 Vodenje z inverznim modelom S = 2 m2, površina toplotnega stika med plaščem in okolico znaša SQ = 2 m2. Temperatura sveže vhodne vode je lahko TC = 12 oC ali TH = 75 oC. Pri vodenju tovrstnih šaržnih reaktorjev lahko predpostavimo dve osnovni vrsti motenj na izhodu: • motnja, ki se prišteje k temperaturi v jedru šaržnega reaktorja T; • motnja, ki se prišteje k temperaturi v plašču šaržnega reaktorja Tw. Zaradi hitrejše dinamike je pri vodenju precej lažje odpraviti motnjo, ki se prišteje k temperaturi v plašču Tw. V eksperimentu zato predpostavimo samo motnjo, ki se prišteje k temperaturi v jedru T: v trenutku t = 23000 s torej temperaturi v jedru dodamo stopničasto motnjo, pri čemer velikost stopnice znaša AT=-3oC. Algoritem za prediktivno vodenje, ki ga preizkušamo v tem eksperimentu, za delovanje potrebuje primeren matematični model šaržnega reaktorja. V našem primeru smo izbrali hibridni mehki model, katerega razvoj je natančno opisan v razdelku 7.4.1. 13.5.2 Vodenje Kot smo opisali v razdelku 13.3.2, krmilni del algoritma prilagaja referenčne signale glede na omejitve vhodov, izhodov in stanj sistema, ki lahko izhajajo iz fizičnih lastnosti sistema ali iz tehnoloških zahtev, ki so nujne za kakovostno vodenje. V našem primeru je omejen položaj mešalnega ventila (0 ≤ kM ≤ 1) in temperaturno območje vode v plašču šaržnega reaktorja (20 oC ≤ Tw ≤ 70 oC). Krmilni del algoritma določa v vsakem časovnem koraku k krmilni signal uK na način, ki je opisan v razdelku 13.3, regulacijski del pa regulacijski signal uR na način, ki je opisan v razdelku 13.4. Glede na predikcijo kršenja temperaturnega območja vode v plašču šaržnega 13.5 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 265 reaktorja regulacijski del algoritma preklaplja med sledenjem prilagojeni referenčni temperaturi v jedru (fre/) oz. v plašču šaržnega reaktorja (fw>ref). V primeru sledenja prilagojeni referenčni temperaturi v jedru (fre/) so parametri regulacijskega dela algoritma H = 50 in ar = 0, v primeru sledenja prilagojeni referenčni temperaturi v plašču (fw>ref) pa H = 5 in ar = 0. 13.5.3 Rezultati 65 60 55 50 45 40 35 30 25 / / / 1 / / \ \ \ / / \ r \ / 0.5 1.5 t [s] 2.5 x 10 Slika 13.2: Temperatura v jedru reaktorja T (polna črta) in referenčna temperatura Tref (prekinjena črta). Rezultati eksperimenta so prikazani na slikah 13.2, 13.3 in 13.4. Slika 13.2 prikazuje potek temperature v jedru šaržnega reaktorja T in referenčne temperature Tref. Slika 13.3 prikazuje potek temperature v plašču šaržnega reaktorja Tw. Slika 13.4 prikazuje krmilni in regulacijski del signala za položaj mešalnega ventila kM,K in kM,R ter signala za položaj zapornih ventilov kH in kc. 0 1 2 3 266 Vodenje z inverznim modelom 70 60 50 40 30 20 0.5 1.5 t [s] 2.5 x 10 Slika 13.3: Temperatura v plašču reaktorja T (polna črta) in omejitev temperaturnega območja (prekinjena črta). 13.5.4 Komentar Uporabnost algoritma za vodenje z inverznim modelom smo preverili na primeru vodenja ˇsarˇznega reaktorja. Ugotovili smo, da temperatura v jedru reaktorja T dobro sledi referenˇcni temperaturi Tref , poleg tega pa algoritem tudi ustrezno kompenzira stopniˇcasto motnjo na izhodu, ki se zgodi v trenutku t = 23000 s. Tudi temperatura v plaˇsˇcu Tw ostaja znotraj predpisanega temperaturnega obmoˇcja. Osnovna ideja obravnavanega pristopa je dvodelnost algoritma za vodenje. Algoritem je sestavljen iz krmilnega in regulacijskega dela. Z uporabo hibridnega mehkega modela krmilni del pri doloˇcanju krmilnih signalov uK upoˇsteva nelinearno in hibridno dinamiko sistema, pa tudi morebitne 0 1 2 3 13.5 Primer uporabe algoritma za vodenje temperature v šaržnem reaktorju 267 1 0.5 0 0 0.5 1 1.5 2 2.5 1 F r 0 "w^^fvm^---------------------------■—y^^H...................m«»».«--------------------y------------lv----------- -1 =----------------------------------------------------------------------------------------------- 0 0.5 1 1.5 2 2.5 1 I I ' i 'i 0.5 0 t_____________i______________I i [___________i______________ 0 0.5 1 1.5 2 2.5 1 F ' I ' i ' 0.5 0 [ i I________________i___l i l 0 0.5 1 1.5 2 2.5 t [s] Slika 13.4: Krmilni in regulacijski del signala za položaj mešalnega ventila kM,K in kM,R ter signala za položaj zapornih ventilov kH in kc. omejitve vhodov, izhodov in stanj sistema. Glavna prednost predlaganega pristopa je, da lahko krmilni del algoritma za vodenje izhod sistema y pripelje v bližino referenčne trajektorije yref, kar omogoča uporabo relativno preprostega regulacijskega dela, s katerim zagotovimo kakovostno vodenje. Glede na to, da regulacijski del algoritma za izračun regulirnega signala uR upošteva izmerjeni izhodni signal sistema y, predstavlja dopolnitev krmilnega dela algoritma za vodenje, saj na ta način kompenzira odstopanja izhoda sistema y od referenčne trajektorije yref. Do odstopanj lahko pride zaradi različnih vzrokov, kot so nenatančnost hibridnega mehkega modela, šum, morebitne motnje v realnem sistemu ipd. Rezultati so torej pokazali, da uporaba algoritma omogoča izpolnitev zahtev vodenja. Temperatura v jedru zadovoljivo sledi referenčnemu signalu, kar zagota- 3 4 x 10 3 4 x 10 3 4 x 10 3 4 x 10 268 Vodenje z inverznim modelom vlja kratek ˇcas obdelave posamezne ˇsarˇze. Poleg tega algoritem doloˇca krmilni in regulirni zakon v eksplicitni obliki, zato je raˇcunska zahtevnost izvedbe majhna, posebno v primerjavi z optimizacijskimi pristopi. Obravnavani algoritem za implementacijo torej ne zahteva drage strojne opreme. Del IV Zaključek 269 270 14. Zakljuˇcek V doktorski disertaciji smo obravnavali problematiko prediktivnega vodenja hibridnih sistemov. Opisali smo nekatere težave in pomanjkljivosti, ki se pojavljajo na tem področju, in poskušali poiskati ustrezne rešitve, jih ovrednotiti in njihovo uporabnost preveriti na simulacijskem primeru šaržnega reaktorja. V nadaljevanju povzemamo prispevke disertacije. • Razvili smo formulacijo hibridnega mehkega modela, ki je primerna za opisovanje sistemov, ki izkazujejo hibridno in nelinearno dinamiko, in jo lahko uporabimo pri prediktivnem vodenju. Obravnavali smo strukturo modela in njegov zapis ter opisali možnost posplošitve na multivariabilne sisteme in sisteme višjega reda. • Predlagali smo metodo za identifikacijo hibridnih mehkih modelov. Razvili smo pristop z mehkim rojenjem podatkov za identifikacijo v vhodno-izhodnem prostoru hibridnega mehkega modela in predlagali metodo za projiciranje mehkih rojev v vhodni prostor hibridnega mehkega modela. Pristop smo preizkusili na primeru šaržnega reaktorja. Ovrednotili smo natančnost predikcijskega modela in preverili njeno odvisnost od števila rojev, ki jih določamo pri identifikaciji. • Metodo za identifikacijo hibridnih mehkih modelov smo priredili za odsekoma afine modele in jo preizkusili na primeru šaržnega reaktorja. Ovrednotili smo natančnost predikcijskega modela in preverili njeno odvisnost od števila rojev, ki jih določamo pri identifikaciji. 271 272 Zaključek S prirejeno metodo za identifikacijo smo dobili stabilen odsekoma afini model, ki zadovoljivo opisuje dinamiko ˇsarˇznega reaktorja, pri uporabi klasiˇcne identifikacijske metode za odsekoma afine sisteme pa stabilnega modela nismo mogli dobiti. Vzrok za to je nezadostno ˇstevilo podatkov za identifikacijo, ˇse bolj pomembna pa je enakomernost porazdelitve podatkov v vhodno-izhodnem prostoru modela, ki je v realnih primerih veˇcinoma ne moremo zagotoviti, zato se je metoda izkazala za uporabno tudi za identifikacijo odsekoma afinih modelov. • Primerjali smo natanˇcnost odsekoma afinega modela in hibridnega mehkega modela in ugotovili, da – ob primerljivi zahtevnosti pristopa za modeliranje in identifikacijo ter kompleksnosti na primerljiv naˇcin dobljenega konˇcnega modela – doseˇzemo veˇcjo natanˇcnost s hibridnim mehkim modelom. Za primerljivo natanˇcnost moramo torej uporabiti odsekoma afini model, ki je kompleksnejˇsi od hibridnega mehkega modela, kar pa lahko bistveno poveˇca raˇcunsko zahtevnost algoritma za prediktivno vodenje. • Predstavili smo metodo za prediktivno vodenje hibridnih sistemov z diskretnimi vhodi, ki deluje na osnovi analize dosegljivosti. Vpeljali smo sploˇsno uporabno obliko kriterijske funkcije. Raziskali smo raˇcunsko zahtevnost algoritma in predlagali moˇznosti za njeno zmanjˇsanje z uporabo analize dosegljivosti, omejitvijo nabora mogoˇcih kombinacij vrednosti vektorja vhoda in zadrˇzevanjem vrednosti vektorja vhodov skozi veˇc ˇcasovnih korakov. Pristop smo preizkusili na primeru vodenja ˇsarˇznega reaktorja. Pokazali smo, da je bistvenega pomena doloˇcitev ustrezne kriterijske funkcije. Primerjali smo vodenje s hibridnim mehkim modelom in hibridnim linearnim modelom. Hibridni mehki model nam omogoˇca bolj kakovostno vodenje, kar se moˇcneje odraˇza predvsem pri sistemih z izrazito nelinearno dinamiko. • Opisali smo metodo za prediktivno vodenje hibridnih sistemov na osnovi 273 reševanja mešanih celoštevilskih optimizacijskih problemov, primerno za sisteme, ki jih lahko zapišemo v obliki odsekoma afinega ali ekvivalentnega modela. Pristop smo preizkusili na primeru vodenja temperature v šaržnem reaktorju in ugotovili, da uporaba zaradi kompleksnosti ni smiselna. • Predstavili smo metodo za prediktivno vodenje hibridnih sistemov z diskretnimi vhodi, ki deluje na osnovi genetskega algoritma. Obravnavali smo računsko zahtevnost algoritma in predlagali možnosti za njeno zmanjšanje z omejitvijo nabora mogočih kombinacij vrednosti vektorja vhoda in zadrževanjem vrednosti vektorja vhodov skozi več časovnih korakov. Pristop smo preizkusili na primeru vodenja šaržnega reaktorja, in sicer za različne največje predikcijske horizonte, število osebkov in število generacij in primerjali kakovost vodenja in računsko zahtevnost. Glavna slabost genetskega algoritma je suboptimalnost rešitve optimizacij-skega problema in s tem negotovi rezultati pri neustrezni nastavitvi parametrov algoritma. Primerjava genetskega algoritma z algoritmoma na osnovi analize dosegljivosti in na osnovi ocenjevanja vseh mogočih rešitev je pokazala, da je rezultat vodenja, tj. zaprtozančni odziv - kljub suboptimalno-sti genetskega algoritma - lahko praktično identičen odzivu pri vodenju z eno izmed optimalnih metod, pri tem pa je računska zahtevnost bistveno manjša. Neobčutljivost na spremembe reference ter predvidljivost in omejenost časa za izračun rešitve v vsakem koraku predstavljajo glavno prednost pristopa na osnovi genetskega algoritma. Predvidljivost časa za izračun rešitve pa olajša težave pri uporabi ali celo sploh omogoči zanesljivo delovanje algoritma za prediktivno vodenje v realnem času. • Predstavili smo metodo za adaptivno prediktivno vodenje sistemov s časovno spremenljivimi dinamičnimi lastnostmi, ki deluje na osnovi identifi- 274 Zaključek kacije lokalnega linearnega modela vodenega sistema. Opisali smo vpeljavo pomoˇznega vhoda za linearizacijo. Metodo smo preizkusili na primeru vodenja ˇsarˇznega reaktorja. V eksperiment smo vkljuˇcili tudi dve eksotermni kemiˇcni reakciji, ki potekata v jedru ˇsarˇznega reaktorja in povzroˇcata ˇcasovno spremenljivost dinamike ce-ˇ lotnega sistema. Ceprav sta reakciji, ki v model procesa vpeljujta ˇcasovno spreminjajoˇce parametre, izrazito eksotermni, so rezultati pokazali, da uporaba algoritma omogoˇca izpolnitev zahtev vodenja, in to kljub temu, da kinetiˇcnega modela reakcij ne poznamo. Algoritem doloˇca regulirni zakon v eksplicitni obliki, zato je raˇcunska zahtevnost izvedbe majhna, posebno v primerjavi z optimizacijskimi pristopi. Algoritem za implementacijo torej ne zahteva drage strojne opreme. • Razvili smo metodo za vodenje z inverznim modelom, ki je primerna za sisteme z enim izhodom, ki jih lahko zapiˇsemo v obliki hibridnega mehkega modela in izpeljali inverzni hibridni mehki model. Algoritem za vodenje je sestavljen iz dveh delov, in sicer iz krmilnega in regulacijskega dela. Z uporabo hibridnega mehkega modela oz. inverznega hibridnega mehkega modela krmilni del pri doloˇcanju krmilnih signalov upoˇsteva nelinearno in hibridno dinamiko sistema, pa tudi morebitne omejitve vhodov, izhodov in stanj sistema. Omejitve lahko izhajajo iz fiziˇcnih lastnosti sistema ali iz tehnoloˇskih zahtev, ki so nujne za kakovostno vodenje. Glavna prednost predlaganega pristopa je, da lahko krmilni del algoritma za vodenje izhod sistema pripelje v bliˇzino prilagojene referenˇcne trajekto-rije, kar omogoˇca uporabo relativno preprostega regulacijskega dela, s katerim zagotovimo kakovostno vodenje. Regulacijski del algoritma za izraˇcun regulirnega signala upoˇsteva povratnozanˇcni izmerjeni izhodni signal sistema, zato predstavlja dopolnitev krmilnega dela algoritma za vodenje. Na ta naˇcin kompenzira odstopanja izhoda sistema od prilagojene referenˇcne 275 trajektorije, do katerih lahko pride zaradi različnih vzrokov, kot so nenatančnost hibridnega mehkega modela, šum, morebitne motnje v realnem sistemu ipd. Pristop smo preizkusili na primeru vodenja šaržnega reaktorja. Ugotovili smo, da temperatura v jedru reaktorja dobro sledi referenčni temperaturi, poleg tega pa algoritem tudi ustrezno kompenzira stopničasto motnjo na izhodu. Tudi temperatura v plašču ostaja znotraj predpisanega temperaturnega območja. Algoritem določa krmilni in regulirni zakon v eksplicitni obliki, zato je računska zahtevnost izvedbe majhna, posebno v primerjavi z optimizacij-skimi pristopi. Obravnavani algoritem za implementacijo torej ne zahteva drage strojne opreme. • V slovenščino smo vpeljali nekaj novih terminov s področja prediktivnega vodenja hibridnih sistemov, ki jih do sedaj še ni bilo ali pa so obstajali samo v angleškem jeziku. Zaključimo lahko, da na področju prediktivnega vodenja hibridnih sistemov še nimamo teorije, ki bi bila uporabna za vodenje splošnega hibridnega sistema. Hibridni sistemi namreč predstavljajo zelo široko področje najrazličnejših sistemov, ki so dinamično bistveno zahtevnejši od npr. linearnih sistemov, za katere obstaja splošna teorija vodenja, ki je uporabna tudi v praksi. Zato se zdi, da je do splošne teorije za vodenje hibridnih sistemov še daleč, morda pa zaradi kompleksnosti sploh nima smisla obravnavati vodenja vseh tipov in podtipov hibridnih sistemov v okviru enotne teorije. Najboljši približek enotne teorije za prediktivno vodenje hibridnih sistemov je pristop z reševanjem mešanih celoštevilskih optimizacijskih problemov. Omejen je na vodenje sistemov, ki so formulirani kot odsekoma afini in njim ekvivalentni modeli. Problem vodenja je mogoče pretvoriti v (multipammetrični) mešam 276 Zaključek celoštevilski optimizaäjski problem, ki ga lahko rešujemo s (komercialnimi) programi za reševanje optimizacijskih problemov. Pristop z reševanjem mešanih celoštevilskih optimizacijskih problemov je bil večkrat uporabljen tudi v praksi. Kljub temu pa v mnogih primerih s kompleksnejšo dinamiko in večjimi predikcij-skimi horizonti žal ostaja samo na ravni teorije, saj njegovo uporabo preprečuje prevelika računska zahtevnost. Pri optimizacijskih pristopih za prediktivno vodenje hibridnih sistemov se v realnih primerih pogosto ne moremo izogniti prekletstvu razsežnosti - problem je teoretično sicer rešljiv, v praksi pa ga zaradi omejene računske moči ni mogoče rešiti. Pri vodenju hibridnih sistemov je torej smiselno uporabiti tudi teorijo vodenja z drugih področij in jo s primernimi modifikacijami in ustreznimi poenostavitvami prilagoditi vodenju konkretnega sistema ter se na ta način izogniti algoritmom, ki so za praktično uporabo računsko prezahtevni. 14.1 Glavni izvirni prispevki doktorske disertacije • Formulacija hibridnega mehkega modela, ki je primerna za opisovanje sistemov s hibridno in nelinearno dinamiko in jo lahko uporabimo pri predik-tivnem vodenju. • Metoda identifikacije hibridnih mehkih modelov z mehkim rojenjem podatkov za identifikacijo v vhodno-izhodnem prostoru modela. • Razvoj metode za prediktivno vodenje hibridnih sistemov z diskretnimi vhodi, ki deluje na osnovi genetskega algoritma. • Razvoj metode za adaptivno prediktivno vodenje sistemov s časovno spremenljivimi dinamičnimi lastnostmi, ki deluje na osnovi linearizacije hibridnega modela vodenega sistema. • Formulacija inverznega hibridnega mehkega modela in razvoj metode za vodenje z inverznim modelom. Literatura [1] K. J. ˚Astr¨om, B. Wittenmark. Adaptive control. Electrical Engineering: Control Engineering. Addison-Wesley Publishing Company, second edition, 1995. [2] R. Alur, T. A. Henzinger, E. D. Sontag, uredniki. Hybrid Systems III: Verification and Control, Volume 1066 of Lecture Notes in Computer Science. Springer-Verlag, Berlin, Heidelberg, 1996. [3] P. J. Antsaklis. A brief introduction to the theory and applications of hybrid systems. Proceedings of the IEEE, Volume 88, 2000. [4] P. J. Antsaklis, W. Kohn, A. Nerode, S. Sastry, uredniki. Hybrid Systems II, Volume 999 of Lecture Notes in Computer Science. Springer-Verlag, Berlin, Heidelberg, 1995. [5] P. J. Antsaklis, W. Kohn, A. Nerode, S. Sastry, uredniki. Hybrid Systems IV, Volume 1273 of Lecture Notes in Computer Science. Springer-Verlag, Berlin, Heidelberg, 1997. [6] P. J. Antsaklis, W. Kohn, A. Nerode, S. Sastry, uredniki. Hybrid Systems V, Volume 1567 of Lecture Notes in Computer Science. Springer-Verlag, Berlin, Heidelberg, 1999. [7] P. J. Antsaklis, X. D. Koutsoukos. Software-Enabled Control, poglavje Hybrid Systems: Review and Recent Progress, str. 273–298. IEEE Press, 2005. DOI: 10.1002/047172288X. 277 278 Literatura [8] P. J. Antsaklis, J. A. Stiver, M. D. Lemmon. Hybrid systems, Volume 736 of Lecture Notes in Computer Science, poglavje Hybrid sistem modeling and event identification, str. 366–392. Springer Verlag, Berlin, Heidelberg, 1993. [9] R. Babuˇska. Fuzzy modeling and identification. Technische Universiteit Delft, 1996. [10] R. Babuˇska. Fuzzy Modelling for Control. KAP, 1998. [11] R. Babuˇska, J. Sousa, H. Verbruggen. Predictive control of nonlinear systems based on fuzzy and neural models. str. 667. European Control Conference, 1999. [12] R. Babuˇska, H. B. Verbruggen. An overview of fuzzy modelling for control. Control Engineering Practice, Vol. 4, No. 11, str. 1593–1606, 1996. [13] A. Back, J.hn Guckenheimer, M. Myers. Hybrid systems, Volume 736 of Lecture Notes in Computer Science, poglavje A dynamical simulation facility for hybrid systems, str. 255–267. Springer Verlag, Berlin, Heidelberg, 1993. [14] T. Back, D. Fogel, Z. Michalewics, uredniki. Advanced Algorithms and Operators. Institute of Physics Publishing, Bristol, UK, 2000. [15] M. Baoti´c, F. Christophersen, M. Morari. Infinite time optimal control of hybrid systems with a linear performance index. Proc. of the Conf. on Decision and Control, Maui, 2003. [16] M. Baoti´c, F. Christophersen, M. Morari. A new algorithm for constrained finite time optimal control of hybrid systems with a linear performance index. University of Cambridge, UK, 2003. European Control Conference. Literatura 279 [17] A. G. Beccuti, T. Geyer, M. Morari. Temporal lagrangian decomposition of model predictive control for hybrid systems. str. 2509–2514. European Control Conference, IEEE, 2003. [18] A. Bemporad. Efficient conversion of mixed logical dynamical systems into an equivalent piecewise affine form. IEEE Trans. Automatic Control, Vol. 49, No. 5, str. 832–838, 2004. [19] A. Bemporad. Hybrid Toolbox - User’s Guide, 2004. [20] A. Bemporad. Model-based predictive control design: New trends and tools. Poc. of 45th IEEE Conference on Decision and Control, San Diego, 2006. IEEE. [21] A. Bemporad. Modeling and control of hybrid dynymical systems: The hybrid toolbox for matlab. Inge Troch, Felix Breitenecker, uredniki, MA-THMOD Vienna 09: Proceedings; Full Papers CD Volume, Number 35 in ARGESIM Report, str. 82–100, 2009. [22] A. Bemporad, P. Borodani, M. Mannelli. Hybrid Systems: Computation and Control, poglavje Hybrid control of an automotive robotized gearbox for reduction of consumptions and emissions, str. 81–96. Number 2623 in Lecture Notes in Computer Science. Springer-Verlag, 2003. [23] A. Bemporad, F. Borrelli, M. Morari. Explicit solution of lp-based model predictive control. Proc. 39th IEEE Conference on Decision and Control, Sydney, 2000. [24] A. Bemporad, F. Borrelli, M. Morari. Optimal controllers for hybrid systems. Proc. 39th IEEE Conference on Decision and Control, Sydney, 2000. [25] A. Bemporad, F. Borrelli, M. Morari. Piecewise linear optimal controllers for hybrid systems. Proceedings of American Control Conference, str. 1190– 1194, 2000. 280 Literatura [26] A. Bemporad, F. Borrelli, M. Morari. On the optimal control law for linear discrete time hybrid systems. Hybrid Systems: Computation and Control: Lecture Notes in Computer Science, Vol. 2289, str. 105–119, 2002. [27] A. Bemporad, S. Di Cairano, I. V. Kolmanovsky. Hybrid modeling and control of a multibody magnetic actuator for automotive applications. Proc. 46th IEEE Conf. on Decision and Control, str. 5270—-5275, New Orleans, 2007. [28] A. Bemporad, G. Ferrari-Trecate, M. Morari. Observability and controla-bility of piecewise affine and hybrid systems. IEEE Transactions on Automatic Control, Vol. 45, No. 10, str. 1846–1876, 2000. [29] A. Bemporad, N. Giorgetti. Logic-based methods for optimal control of hybrid systems. IEEE Trans. Autom. Control, Vol. 51, No. 6, str. 963–976, 2006. [30] A. Bemporad, L. Giovanardi, F. D. Torrisi. Performance driven reachability analysis for optimal scheduling and control of hybrid systems. Proc. 39th IEEE Conf. Decision and Control, str. 969–974, Sydney, 2000. [31] A. Bemporad, W. Heemels, B. De Schutter. On hybrid systems and closed-loop MPC system. IEEE Transactions on Automatic Control, Vol. 47, No. 5, str. 863–869, 2002. [32] A. Bemporad, M. Morari. Control of systems integrating logic, dynamics and constraints. Automatica, Vol. 35, No. 3, str. 407–427, 1999. [33] A. Bemporad, M. Morari. Optimization-based hybrid control tools. Proc. ACC 2001 American Control Conf., str. 1689–1703, Arlington, 2001. [34] A. Bemporad, M. Morari, V. Dua, P. Pistikopoulos. The explicit linear quadratic regulator for constrained systems. Automatica, Vol. 38, No. 1, str. 3–20, 2002. Literatura 281 [35] A. Bemporad, F. Torrisi, M. Morari. Hybrid systems: Computation and control, Volume 1790 of Lecture Notes in Computer Science, poglavje Optimization-based verification and stability characterization of piecewise affine and hybrid systems, str. 45–58. Springer-Verlag, Berlin, Heidelberg, 2000. [36] F. Borrelli. Constrained optimal control of linear and hybrid systems. Lectures Notes in Control and Information Sciences, , , 2003. [37] F. Borrelli, M. Baoti´c, A. Bemporad, M. Morari. An efficient algorithm for computing the state feedback solution to optimal control of discrete time hybrid systems. str. 4717–4722, Denver, Colorado, USA, 2003. American Control Conference. [38] F. Borrelli, M. Baoti´c, A. Bemporad, M. Morari. Dynamic programming for constrained optimal control of discrete-time linear hybrid systems. Au-tomatica, Vol. 41, No. 10, , 2005. [39] F. Borrelli, A. Bemporad, M. Fodor, D. Hrovat. An mpc/hybrid system approach to traction control. IEEE Trans. Contr. Systems Technology, Vol. 14, No. 3, str. 541—-552, 2006. [40] M. S. Branicky. Studies in hybrid systems: modeling, analysis, and control. Doktorska disertacija, Massechusetts institute of technology, 1995. [41] R. W. Brockett. Hybrid models for motion control systems, str. 29– 53. Essays in Control: Perspectives in the Theory and its Applications. Birkh¨auser, Boston, 1993. [42] A. E. Bryson, Y.-C. Ho. Applied Optimal Control: Optimization, Estimation, and Control. Taylor and Francis, 1975. [43] S. Di Cairano, A. Bemporad, I. V. Kolmanovsky, D. Hrovat. Model predictive control of magnetically actuated mass spring dampers for automotive 282 Literatura applications. Int. J. Control, Vol. 80, No. 11, str. 1701––1716, 2007. [44] S. Di Cairano, D. Yanakiev, A. Bemporad, I. V. Kolmanovsky, D. Hrovat. An mpc design flow for automotive control and applications to idle speed regulation. Proc. 47th IEEE Conf. on Decision and Control, str. 5686—-5691, Cancun, 2008. [45] E. F. Camacho, C. Bordons. Model predictive control. Advanced Textbooks in Control and Signal Processing. Springer-Verlag, London, 1998. [46] J. Castro. Fuzzy logic controllers are universal approximators. IEEE Trans. System Man Cybernet, Vol. 25, str. 629–635, 1995. ˇ [47] J. Causa, G. Karer, A. Nu´n˜ez, D. S´aez, I. Skrjanc. Hybrid fuzzy predictive control based on genetic algorithms for the temperature control of a batch reactor. Computers and chemical engineering, Vol. 32, No. 12, str. 3254– 3263, 2008. [48] J. S. Chang, W. Y. Hseih. Optimization and control of semibatch reactors. Industrial and Engineering Chemistry Research, Vol. 34, str. 545–556, 1995. [49] L. Chen, G. Bastin, V. Van Breusegam. A case study of adaptive nonlinear regulation of fed-batch reactors. Automatica, Vol. 31, str. 55–65, 1995. [50] W. Cho, T. F. Edgar, J. Lee. Iterative learning dual-mode control of exothermic batch reactors. 2005 5th Asian Control Conference, str. 1270–1275, 2005. [51] J. P. Coelho, P. B. de Moura Oliveira, J. Boaventura Cunha. Greenhouse air temperature predictive control using the particle swarm optimisation algorithm. Computers and Electronics in Agriculture, Vol. 49, str. 330–344, 2005. [52] C. Coello. Theoretical and numerical constraint handling techniques used with evolutionary algorithms: A survey of the state of the art. Computer Literatura 283 Methods in Applied Mechanics and Engineering, Vol. 191(11-12), str. 1245– 1287, 2002. [53] B. J. Cott, S. Macchietto. Temperature control of exothermic batch reactors using generic model control. Industrial and Engineering Chemistry Research, Vol. 28, str. 1177–1184, 1989. [54] J. E. Cuthrell, L. T. Biegler. Simultaneous optimization and solution methods for batch reactor control. Computers and Chemical Engineering, Vol. 13, str. 49–69, 1998. [55] B. De Schutter. Optimal control of a class of linear hybrid systems with saturation. SIAM Journal of applied Control and Optimization, Vol. 39, No. 3, str. 835–851, 2000. [56] B. De Schutter, B. De Moor. Hybrid systems V, Volume 1567 of Lecture Notes in Computer Science, poglavje The extended linear complementary problem and the modeling and analysis of hybrid systems, str. 70–85. Springer-Verlag, Berlin, Heidelberg, 1999. [57] B. De Schutter, T. Vand den Boom. On model predictive control for max-min-plus-scaling discrete event systems. Tehniˇcno poroˇcilo bds:00-04, Control Lab, Fac. ITS, Delft Univ. Techn., Delft, 2000. [58] S. Engell, G. Frehse, E. Scnieder, uredniki. Modelling, Analysis and Design of Hybrid Systems, Volume 279 of Lecture Notes in Control and Information Sciences. Springer-Verlag, Berlin, Heidelberg, 2002. [59] J. Espinosa, J. Vandewalle. Predictive control using fuzzy models applied to a steam generating unit. str. 151–160. 3rd International FLINS Workshop on Fuzzy Logic and Intelligent Technologies for Nuclear Science Industry, 1998. 284 Literatura [60] J. Espinosa, J. Vandewalle. Predictive control using fuzzy models - comparative study. str. 273. European Control Conference, EUCA, 1999. [61] J. Espinosa, J. Vandewalle, V. Wertz. Fuzzy Logic, Identification and Predictive Control. Spriger-Verlag, 2005. [62] G. Ferrari-Trecate. Hybrid Identification Toolbox (HIT), 2005. [63] G. Ferrari-Trecate, M. Muselli, D. Liberati, M. Morari. A clustering technique for the identification of piecewise affine systems. Automatica, Vol. 39, No. 2, str. 205–217, 2003. [64] B. A. Foss, T. A. Johansen, A. V. Sorensen. Nonlinear predictive control using local models-applied to a batch fermentation process. Control Engineering Practice, Vol. 3, str. 389–396, 1995. [65] N. Giorgetti, A. Bemporad, H. E. Tseng, D. Hrovat. Hybrid model predictive control application towards optimal semi-active suspension. Int. J. Control, Vol. 79, No. 5, str. 521—-533, 2006. [66] N. Giorgetti, G. Ripaccioli, A. Bemporad, I. V. Kolmanovsky, D. Hrovat. Hybrid model predictive control of direct injection stratified charge engines. IEEE/ASME Transactions on Mechatronics, Vol. 11, No. 5, str. 499–506, 2006. [67] D. Girimonte, R. Babuˇska. Structure for nonlinear models with mixed discrete and continuous inputs: a comparative study. Proc. of IEEE International Conf. on system, Man and Cybernetics, str. 2392–2397, 2004. [68] F. Girosi, T. Poggio. Networks and the best approximation property. Biological Cybernetics, Vol. 63, str. 169–176, 1990. [69] P. Grieder, M. Kvasnica, M. Baoti´c, M. Morari. Low complexity control of piecewise affine systems with stability guarantee. American Control Conference, Boston, 2004. Literatura 285 [70] R. L. Grossman, A. Nerode, A. P. Ravn, H. Rischel, uredniki. Hybrid Systems, Volume 736 of Lecture Notes in Computer Science. SpringerVerlag, Berlin, Heidelberg, 1993. [71] M. Hadjili, V. Wertz. Generalized predictive control using Takagi-Sugeno fuzzy models. str. 405–410. IEEE International Symposium on Intelligent Control, Intelligent Systems & Semiotics, IEEE, 1999. [72] W. P. M. H. Heemels, B. De Schutter, A. Bemporad. Equivalence of hybrid dynamical models. Automatica, Vol. 37, No. 7, str. 1085–1091, 2001. [73] W. P. M. H. Heemels, J. M. Schumacher, S. Weiland. Linear complementarity systems. SIAM Journal of applied Mathematics, Vol. 60, No. 4, str. 1234–1269, 2000. [74] T. A. Henzinger, S. Sastry, uredniki. Hybrid Systems: Computation and Control, Volume 1386 of Lecture Notes in Computer Science. SpringerVerlag, Berlin, Heidelberg, 1998. [75] K. H. Johansson, M. Egerstedt, J. Lygeros, S. Sastry. On the regularization of zeno hybrid automata. System and Control Letters, Vol. 38, str. 141–150, 1999. [76] M. Johansson, A. Rantzer. Computation of piecewise quadratic lypunov functions for hybrid systems. IEEE Transactions on Automatic Control, Vol. 43, No. 4, str. 555–559, 1998. [77] R. Johansson, urednik. Nonlinear and Hybrid Systems in Automotive Control. Springer-Verlag, London, 2003. [78] G. Karer. Prediktivno vodenje sistemov z diskretnimi vhodi na osnovi analize dosegljivosti: diplomsko delo, 2004. 286 Literatura ˇ [79] G. Karer, G. Muˇsiˇc, I. Skrjanc, B. Zupanˇciˇc. Hybrid fuzzy model-based predictive control of temperature in a batch reactor. Computers and Chemical Engineering, Vol. 31, str. 1552–1564, 2007. ˇ [80] G. Karer, G. Muˇsiˇc, I. Skrjanc, B. Zupanˇciˇc. Feedforward control of a class of hybrid systems using an inverse model. I. Troch, F. Breitenecker, uredniki, MATHMOD Vienna 09: Proceedings; Full Papers CD Volume, Number 35 in ARGESIM Report, str. 1687–1697, 2009. ˇ [81] G. Karer, I. Skrjanc, B. Zupanˇciˇc. Self-adaptive predictive functional control of the temperature in an exothermic batch reactor. Chemical Engineering and Processing, Vol. 47, str. 2379–2385, 2008. [82] J. Kennedy, R. Eberhart. Swarm Intelligence. Morgan Kaufmann Publishers, 2001. [83] E. C. Kerrigan, D. Q. Mayne. Optimal control of constrained, piecewise affine systems with bounded disturbances. Proc. 41st IEEE Conference on Decision and Control, Las Vegas, 2002. [84] J. Kim, U. Huh. Fuzzy model based predictive control. str. 405–409. IEEE International Conference on Fuzzy Systems, IEEE, 1998. [85] S. Kimbrough, G. Koehler, M. Lu, D. Wood. On a feasible-infeasible two-population (fi-2pop) genetic algorithm for constrained optimization: Distance tracing and no free lunch. European Journal of Operational Research, Vol. 190(2-16), str. 310–327, 2008. [86] M. Klopˇciˇc. Uporaba genetskih algoritmov na podroˇcju vodenja. Magistrsko delo, Fakulteta za elektrotehniko, Univerza v Ljubljani, 1997. [87] M. Kvasnica, P. Grieder, M. Baoti´c. Multi-Parametric Toolbox (MPT), 2004. Literatura 287 [88] N. Lakshmanan, Y. Arkun. Estimation and control of batch processes using multiple models. International Journal of Control, Vol. 72, No. 7/8, str. 659–675, 1999. [89] M. Lazar, M. Heemels, S. Weiland, A. Bemporad. Stability of hybrid model predictive control. IEEE Trans. Autom. Control, Vol. 51, No. 11, str. 1813– 1818, 2006. [90] M. Lazar, M. Heemels, S. Weiland, A. Bemporad. Stabilizing model predictive control of hybrid systems. IEEE Transactions on Automatic Control, Vol. 51, No. 11, str. 1813–1818, 2006. [91] C. Loeblin, J. D. Perkins, B. Srinivasan, D. Bonvin. Economic performance analysis in the design of on line batch optimization system. Journal of Process Control, Vol. 9, str. 61–78, 1999. [92] R. Luus, O. N. Okongwu. Towards practical optimal control of batch reactors. Chemical Engineering Journal, Vol. 75, str. 1–9, 1997. [93] J. M. Maciejowski. Predictive control: with constraints. Prentice Hall, Harlow, 2002. [94] M. Mahfouf, S. Kandiah, D. A. Linkens. Fuzzy model-based predictive control using an arx structure with feedforward. Fuzzy Sets and Systems, Vol. 125, str. 39–59, 2002. [95] E. H. Mamdani, S. Assilian. An experiment in linguistic synthesis with a fuzzy logic controller. International Journal of Man-Machine Studies, Vol. 7, No. 1, str. 1–13, 1975. [96] K. Man, K. Tang, S. Kwong. Genetic Algorithms, Concepts and Designs. Springer-Verlag, 1998. [97] MathWorks. Fuzzy Logic Toolbox User’s Guide. MathWorks. 288 Literatura [98] D. Q. Mayne, S. Rakovi´c. Model predictive control of constrained piecewise affine discrete-time systems. International Journal of Robust and Nonlinear Control, Vol. 13, No. 3, str. 261–279, 2003. [99] D. Q. Mayne, J. B. Rawlings, C. V. Rao, P. O. M. Scokaert. Constrained model predictive control: Stability and optimality. Automatica, Vol. 36, No. 6, str. 789–814, 2000. [100] Z. Michalewicz. Do not kill unfeasible individuals. Dabrowski, Michale-wicz, Ras, (Eds.), Proceedings of the Fourth Intelligent Information Systems Workshop, (IIS’95), str. 110–123, 1995. [101] Z. Michalewicz, G. Nazhiyath. Genocop iii: a co-evolutionary algorithm for numerical optimization problems with nonlinear constraints. IEEE International Conference on Evolutionary Computation, Volume 2, str. 647–651, 1995. [102] R. M¨obus, M. Baoti´c, M. Morari. Multi-objective adaptive cruise control, poglavje Hybrid control of an automotive robotized gearbox for reduction of consumptions and emissions, str. 359–374. Number 2623 in Lecture Notes in Computer Science. Springer-Verlag, 2003. [103] D. S. Naidu. Optimal Control Systems. Electrical Engineering Textbook. CRC Press, Boca Raton, 2003. [104] H. Nakada, K. Takaba, T. Katayama. Identification of piecewise affine systems based on statistical clustering technique. Automatica, Vol. 41, No. 5, str. 905–913, 2005. [105] A. Nerode, W. Kohn. Hybrid systems, Volume 736 of Lecture Notes in Computer Science, poglavje Models for hybrid systems: Automata, topologies and stability, str. 317–356. Springer Verlag, Berlin, Heidelberg, 1993. Literatura 289 [106] H. Nounou, K. Passino. Fuzzy model predictive control: techniques, stability issues, and examples. str. 423–428. IEEE International Symposium on Intelligent Control, Intelligent Systems & Semiotics, IEEE, 1999. [107] R. Palm, D. Driankov. Fuzzy switched hybrid systems – modelling and identification. Proc. of the 1998 IEEE/ISCI/CIRA/SAS Joint Conf., Gai-thersburg MD, str. 130–135, 1998. [108] S. Paoletti, A. L. Juloski, G. Ferrari-Trecate, R. Vidal. Identification of hybrid systems: a tutorial. European Journal of Control, Vol. 13, No. 2–3, str. 242—-260, 2007. [109] B. Potoˇcnik. Modeliranje, simulacija in vodenje meˇsanih logiˇcno di-namiˇcnih sistemov. Magistrsko delo, Fakulteta za elektrotehniko, Univerza v Ljubljani, 2001. [110] B. Potoˇcnik. Modeliranje, simulacija in vodenje hibridnih dinamiˇcnih sistemov. Doktorska disertacija, Faculty of Electrical Engineering, University of Ljubljana, Ljubljana, 2004. [111] B. Potoˇcnik, A. Bemporad, F. D. Torrisi, G. Muˇsiˇc, B. Zupanˇciˇc. Hybrid modelling and optimal control of a multiproduct batch plant. Control eng. pract., Vol. 12, No. 9, str. 1127–1137, 2004. ˇ [112] B. Potoˇcnik, G. Muˇsiˇc, I. Skrjanc, B. Zupanˇciˇc. Model-based predictive control of hybrid systems: a probabilistic neural-network approach to realtime control. J. intell. robot. syst., Vol. 51, No. 1, str. 45–63, 2008. [113] B. Potoˇcnik, G. Muˇsiˇc, B. Zupanˇciˇc. A new technique for translating discrete hybrid automata into piecewise affine systems. Math. comput. model. dyn. syst., Vol. 10, No. 1, str. 41–57, 2004. [114] B. Potoˇcnik, G. Muˇsiˇc, B. Zupanˇciˇc. Model predictive control of discrete time hybrid systems with discrete inputs. ISA Transactions, Vol. 44, No. 290 Literatura 2, str. 199–211, 2005. [115] R. A. Pulley. Batch process modelling. Club Report CR 2828(CON), Warren Springs Laboratory, Herts, UK, 1986. [116] Y. Qin, L.-M. Jia. Fuzzy hybrid control and its application in complex combustion processes. 2002 IEEE International Conference on Artificial Intelligence Systems (ICAIS’02), str. 78. IEEE, 2002. [117] J. B. Rawlings. Tutorial overview of model predictive control. IEEE Control Systems Magazine, , str. 38–52, 2000. [118] J. Richalet. Industrial application of model based predictive control. Au-tomatica, Vol. 29, No. 5, str. 1251–1274, 1993. [119] G. Ripaccioli, A. Bemporad, F. Assadian, C. Dextreit, S. Di Cairano, I. V. Kolmanovsky. Hybrid Systems: Computation and Control, poglavje Hybrid modeling, identification, and predictive control: an application to hybrid electric vehicle energy management. Lecture Notes in Computer Science. Springer-Verlag, Berlin, Heidelberg, 2009. V tisku. [120] J. Roll, A. Bemporad, L. Ljung. Identification of piecewise affine systems via mixed-integer programming. Automatica, Vol. 40, No. 1, str. 37–50, 2004. [121] J. Roubos, R. Babuˇska, P. Bruijn, H. Verbruggen. Predictive control by local linearization of a Takagi-Sugeno fuzzy model. Proceedings of the IEEE International Conference on Fuzzy Systems, str. 37–42, 1998. [122] H. Sarimveis, G. Bafas. Fuzzy model predictive control of non-linear processes using genetic algorithms. Fuzzy Sets and Systems, Vol. 139, str. 59–80, 2003. [123] S. C. Shin, S. B. Park. Ga - based predictive control for nonlinear processes. IEEE Electronics Letters, Vol. 34, No. 20, str. 1980–1981, 1998. Literatura 291 [124] K. S. Sibirsky. Introduction to topological dynamics. Noordhoff international publishing, Leyden, 1975. [125] J. Sjoberg, A. Zhang, L. Ljung, A. Benveniste, B. Delyon, P.-Y. Glorennec, H. Hjalmarson, A. Juditsky. Nonlinear black-box modelling in system identification: A unified overview. Automatica, Vol. 31, No. 12, str. 1691–1724, 1995. [126] O. Slupphaug, B. Foss. Model predictive control for a class of hybrid systems. European Control Conference, EUCA, 1997. [127] O. Slupphaug, J. Vada, B. Foss. MPC in systems with continuous and discrete control inputs. American Control Conference, 1997. [128] J. Solis, D. S´aez, P. Est´evez. Particle swarm optimization-based fuzzy predictive control strategy. str. 8525– 8530. IEEE World Congress on Computational Intelligence, IEEE, 2006. [129] E. Sontag. Nonlinear regulation: The piecewise linear approach. IEEE Transactions on Automatic control, Vol. 26, No. 2, str. 346–358, 1981. [130] M. Sugeno, K. Tanaka. Successive identification of a fuzzy model and its application to prediction of a complex system. Fuzzy Sets and Systems, Vol. 42, str. 315–334, 1991. ˇ [131] I. Skrjanc, S. Blaˇziˇc, O. Agamenonni. Identification of dynamical systems with a robust interval fuzzy model. Automatica, Vol. 41, str. 327–332, 2005. ˇ [132] I. Skrjanc, D. Matko. Fuzzy predictive functional control in the state space domain. Journal of Intelligent and Robotic Systems, Vol. 31, str. 283–297, 2001. [133] T. Takagi, M. Sugeno. Fuzzy identification of systems and its application to modelling and control. IEEE Trans. System Man Cybernet., Vol. 15, str. 116–132, 1985. 292 Literatura [134] L. Tavernini. Differential automata and their discrete simulators. Nonlinear Analisys: Theory, Methods and Applications, Vol. 11, No. 6, str. 665–683, 1987. [135] J. Thomas, D. Dumur, J. Buisson. Predictive control of hybrid systems under a multi-mld formalism with state space polyhedral partition. Boston, Massachusetss, USA, 2004. American Control Conference. [136] F. D. Torrisi, A. Bemporad. Hysdel - a tool for generating computational hybrid models. IEEE Transactions on Control Systems Technology, Vol. 12, No. 2, str. 235–249, 2004. [137] A. Van der Schaft, H. Schumacher. An introduction to hybrid dynamical systems. Lecture Notes in Control and Information Sciences, Vol. 251, str. v–vii, 1999. [138] A. J. Van der Schaft, J. M. Schumacher. Complementarity modelling of hybrid systems. IEEE Transactions on Automatic Control, Vol. 26, No. 2, str. 346–357, 1998. [139] R. Vidal. Recursive identification of switched arx systems. Automatica, Vol. 44, No. 9, str. 2274–2287, 2008. [140] X. Wang, J. Xiao. Pso-based model preditive control for nonlinear processes. Lecture Notes in Computer Science, Vol. 3611, str. 196–203, 2005. [141] C. Wen, S. Wang, X. Jin, X. Ma. Identification of dynamic systems using piecewise-affine basis function models. Automatica, Vol. 43, No. 10, str. 1824–1831, 2007. [142] H. S. Witsenhausen. A class of hybrid-state continuous time dynamic systems. IEEE Trans. on Automatic Control, Vol. 11, No. 2, str. 161–167, 1966. Literatura 293 [143] I. Woolley, C. Kambhampati, D. Sandoz, K. Warwick. Intelligent control toolkit for an advanced control system. str. 445–450. UKACC International Conference on Control, IEE, 1998. [144] X. Xu, P. J. Antsaklis. Optimal control of switched systems based on parameterization of the switching instants. IEEE Transactions on Automatic Control, Vol. 49, No. 1, str. 105–119, 2004. [145] L. Zadeh. Fuzzy sets. Information and control, Vol. 8, No. 3, str. 338–353, 1965. 294 Literatura Dodatek A Parametri modela in vodenja Spodaj je podana standardna struktura, ki se uporablja v programskem orodju Multi-Parametric Toolbox. V njej so zbrani parametri modela in vodenja, ki so potrebni za zagon algoritma za prediktivno vodenje hibridnih sistemov na osnovi reˇsevanja meˇsanih celoˇstevilskih optimizacijskih problemov – glej razdelek 9.5. Using a PWA model... +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ I IDI Constraint! Type I Tag I ++++++++++++++++++++++^^ 1 #11 Numeric value 1 Element-wise 6x11 umin < u(k-l) < Umax 1 1 #21 Numeric value 1 Element-wise 2x11 ymin < reference < ymax| 1 #31 Numeric value 1 Element-wise 6x11 umin < u_3 < Umax 1 1 #41 Numeric value 1 Equality constraint (derived) lxll u_3(D in [0 0.01 0.02 0.05 0.1 1]1 1 #51 Numeric value 1 Binary constraint| u_3(2) in [0 1] 1 1 #61 Numeric value 1 Binary constraint| u_3(3) in [0 1]1 1 #71 Numeric value 1 Element-wise 4x11 xmin < x_3 < xmax1 1 #81 Numeric value 1 Element-wise 4x11 xmin < x_4 < xmax1 1 #91 Numeric value 1 Element-wise 2x11 ymin < y_3 < ymax1 1 #101 Numeric value 1 Equality constraint (derived) lxll d_3(l) => x_4 == A-[l}*x_3 + B-[l}*u_3 + f{l>l 1 #111 Numeric value 1 Equality constraint (derived) lxll d_3(D => guardX-[l}*x_3 + guardIHl}*u_3 <= guardC-Cl} 1 1 #121 Numeric value 1 Equality constraint (derived) lxll d_3(2) => x_4 == A-[2>*x_3 + B-C2}*u_3 + f{2>l 1 #131 Numeric value 1 Equality constraint (derived) lxll d_3(2) => guardX-C2}*x_3 + guardIH2}*u_3 <= guardC{2>l 1 #141 Numeric value 1 Equality constraint (derived) lxll d_3(3) => x_4 == A-[3>*x_3 + B-[3>*u_3 + f{3>l 1 #151 Numeric value 1 Equality constraint (derived) lxll d_3(3) => guardX-C3}*x_3 + guardIH3}*u_3 <= guardCÜ} 1 1 #161 Numeric value 1 Equality constraint (derived) lxll d_3(4) => x_4 == A-C4}*x_3 + B-[4>*u_3 + f {4} 1 1 #171 Numeric value 1 Equality constraint (derived) lxll d_3(4) => guardX-C4}*x_3 + guardIH4}*u_3 <= guardC{4> 1 1 #181 Numeric value 1 Equality constraint (derived) lxll d_3(5) => x_4 == A-C5}*x_3 + B-[5>*u_3 + f{5>l 1 #191 Numeric value 1 Equality constraint (derived) lxll d_3(5) => guardX-C5}*x_3 + guardIH5}*u_3 <= guardC{5>l 1 #201 Numeric value 1 Equality constraint (derived) lxll d_3(6) => x_4 == A-[6>*x_3 + B-C6}*u_3 + f{6>l 1 #211 Numeric value 1 Equality constraint (derived) lxll d_3(6) => guardX-C6}*x_3 + guardU-[6>*u_3 <= guardC{6>l 1 #221 Numeric value 1 Equality constraint (derived) lxll d_3(7) => x_4 == A-[7>*x_3 + B-[7>*u_3 + f{7>l 1 #231 Numeric value 1 Equality constraint (derived) lxll d_3(7) => guardX-C7}*x_3 + guardU-[7>*u_3 <= guardC{7>l 1 #241 Numeric value 1 Equality constraint (derived) lxll d_3(8) => x_4 == A-[8>*x_3 + B-C8}*u_3 + f{8>l 1 #251 Numeric value 1 Equality constraint (derived) lxll d_3(8) => guardX-C8}*x_3 + guardU-[8>*u_3 <= guardC{8>l 1 #261 Numeric value 1 Equality constraint (derived) lxll d_3(9) => x_4 == A-[9>*x_3 + B-[9>*u_3 + f{9>l 1 #271 Numeric value 1 Equality constraint (derived) lxll d_3(9) => guardX-C9}*x_3 + guardU-[9>*u_3 <= guardC{9>l 1 #281 Numeric value 1 Equality constraint (derived) lxll d_3(10) => x_4 == A-C10}*x_3 + B{10>*u_3 + f{10>l 1 #291 Numeric value 1 Equality constraint (derived) lxll d_3(10) => guardX-C10}*x_3 + guardIH10}*u_3 <= guardC-CIO}! 295 296 Dodatek A - Parametri modela in vodenja #301 Numeric value 1 Equality constraint lxll #311 Numeric value 1 Equality constraint lxll #321 Numeric value 1 Element-wise 6x11 #331 Numeric value 1 Element-wise 6x11 #341 Numeric value 1 Equality constraint (derived) lxll #351 Numeric value 1 Binary constraint| #361 Numeric value 1 Binary constraint| #371 Numeric value 1 Element-wise 4x11 #381 Numeric value 1 Element-wise 2x11 #391 Numeric value 1 Equality constraint (derived) lxll #401 Numeric value 1 Equality constraint (derived) lxll #411 Numeric value 1 Equality constraint (derived) lxll #421 Numeric value 1 Equality constraint (derived) lxll #431 Numeric value 1 Equality constraint (derived) lxll #441 Numeric value 1 Equality constraint (derived) lxll #451 Numeric value 1 Equality constraint (derived) lxll #461 Numeric value 1 Equality constraint (derived) lxll #471 Numeric value 1 Equality constraint (derived) lxll #481 Numeric value 1 Equality constraint (derived) lxll #491 Numeric value 1 Equality constraint (derived) lxll #501 Numeric value 1 Equality constraint (derived) lxll #511 Numeric value 1 Equality constraint (derived) lxll #521 Numeric value 1 Equality constraint (derived) lxll #531 Numeric value 1 Equality constraint (derived) lxll #541 Numeric value 1 Equality constraint (derived) lxll #551 Numeric value 1 Equality constraint (derived) lxll #561 Numeric value 1 Equality constraint (derived) lxll #571 Numeric value 1 Equality constraint (derived) lxll #581 Numeric value 1 Equality constraint (derived) lxll #591 Numeric value 1 Equality constraint lxll #601 Numeric value 1 Equality constraint lxll #611 Numeric value 1 Element-wise 6x11 #621 Numeric value 1 Element-wise 6x11 #631 Numeric value 1 Equality constraint (derived) lxll #641 Numeric value 1 Binary constraint| #651 Numeric value 1 Binary constraint| #661 Numeric value 1 Element-wise 4x11 #671 Numeric value 1 Element-wise 2x11 #681 Numeric value 1 Equality constraint (derived) lxll #691 Numeric value 1 Equality constraint (derived) lxll #701 Numeric value 1 Equality constraint (derived) lxll #711 Numeric value 1 Equality constraint (derived) lxll #721 Numeric value 1 Equality constraint (derived) lxll #731 Numeric value 1 Equality constraint (derived) lxll #741 Numeric value 1 Equality constraint (derived) lxll #751 Numeric value 1 Equality constraint (derived) lxll #761 Numeric value 1 Equality constraint (derived) lxll #771 Numeric value 1 Equality constraint (derived) lxll #781 Numeric value 1 Equality constraint (derived) lxll #791 Numeric value 1 Equality constraint (derived) lxll #801 Numeric value 1 Equality constraint (derived) lxll #811 Numeric value 1 Equality constraint (derived) lxll #821 Numeric value 1 Equality constraint (derived) lxll #831 Numeric value 1 Equality constraint (derived) lxll #841 Numeric value 1 Equality constraint (derived) lxll #851 Numeric value 1 Equality constraint (derived) lxll #861 Numeric value 1 Equality constraint (derived) lxll #871 Numeric value 1 Equality constraint (derived) lxll #881 Numeric value 1 Equality constraint lxll #891 Numeric value 1 Equality constraint lxll sum d_3 = 1 I y_3 == Ox_3 + D*u_3 + gl umin < u_2 < Umax I dumin < u_3 - u_2 < dumaxI u_2(l) in [0 0.01 0.02 0.05 0.1 1]I u_2(2) in [0 1] I u_2(3) in [0 1] I xmin < x_2 < xmaxI ymin < y_2 < ymaxI d_2U) => x_3 == A-[l}*x_2 + B-[l}*u_2 + f {1} I d_2U) => guardX-[l}*x_2 + guardIHl}*u_2 <= guardC-Cl} I d_2(2) => x_3 == A-C2}*x_2 + B{2>*u_2 + f {2} I d_2(2) => guardX-C2}*x_2 + guardIH2}*u_2 <= guardC{2> I d_2(3) => x_3 == A-C3}*x_2 + B{3>*u_2 + f {3} I d_2(3) => guardX-C3}*x_2 + guardIH3}*u_2 <= guardC{3> I d_2(4) => x_3 == A-C4}*x_2 + B{4>*u_2 + f {4} I d_2(4) => guardX-C4}*x_2 + guardIH4}*u_2 <= guardC{4> I d_2(5) => x_3 == A-C5}*x_2 + B{5>*u_2 + f {5} I d_2(5) => guardX-C5}*x_2 + guardIH5}*u_2 <= guardC{5> I d_2(6) => x_3 == A-C6}*x_2 + B{6>*u_2 + f {6} I d_2(6) => guardX-C6}*x_2 + guardIH6}*u_2 <= guardC{6> I d_2(7) => x_3 == A-C7}*x_2 + B{7>*u_2 + f {7} I d_2(7) => guardX-C7}*x_2 + guardIH7}*u_2 <= guardOT} I d_2(8) => x_3 == A-C8}*x_2 + B{8>*u_2 + f {8} I d_2(8) => guardX-C8}*x_2 + guardIH8}*u_2 <= guardC{8> I d_2(9) => x_3 == A-C9}*x_2 + B{9>*u_2 + f {9} I d_2(9) => guardX-C9}*x_2 + guardIH9}*u_2 <= guardC{9> I d_2(10) => x_3 == A-C10}*x_2 + B{10>*u_2 + f{10> I d_2U0) => guardX-C10}*x_2 + guardIH10}*u_2 <= guardC-CIO}! sum d_2 = 1 I y_2 == Ox_2 + D*u_2 + gl umin < u_l < Umax I dumin < u_2 - u_l < dumaxI u_l(l) in [0 0.01 0.02 0.05 0.1 1]I u_l(2) in [0 1] I u_l(3) in [0 1] I xmin < x_l < xmaxI ymin < y_l < ymaxI d_l(l) => x_2 == A-[l>*x_l + B-[l}*u_l + f{l>l d_l(l) => guardX-[l}*x_l + guardIHl}*u_l <= guardC-Cl} I d_l(2) => x_2 == A-C2}*x_l + B-[2>*u_l + f {2} I d_l(2) => guardX-C2}*x_l + guardIH2}*u_l <= guardC{2>I d_l(3) => x_2 == A-[3>*x_l + B-C3}*u_l + f {3> I d_l(3) => guardX-C3}*x_l + guardIH3}*u_l <= guardC{3>I d_l(4) => x_2 == A-C4}*x_l + B-[4>*u_l + f {4} I d_l(4) => guardX-[4>*x_l + guardIH4}*u_l <= guardC{4> I d_l(5) => x_2 == A-[5>*x_l + B-C5}*u_l + f {5> I d_l(5) => guardX-C5}*x_l + guardU{5>*u_l <= guardC{5>I d_l(6) => x_2 == A-[6>*x_l + B-C6}*u_l + f-C6> I d_l(6) => guardX-[6>*x_l + guardU{6>*u_l <= guardC{6>I d_l(7) => x_2 == A-C7}*x_l + B-[7>*u_l + f {7} I d_l(7) => guardX-C7}*x_l + guardU{7>*u_l <= guardC{7>I d_l(8) => x_2 == A-[8>*x_l + B-C8}*u_l + f {8> I d_l(8) => guardX-C8}*x_l + guardU{8>*u_l <= guardC{8>I d_l(9) => x_2 == A-C9}*x_l + B-[9>*u_l + f {9} I d_l(9) => guardX-[9>*x_l + guardIH9}*u_l <= guardC{9> I d_l(10) => x_2 == A-[10>*x_l + B-C10}*u_l + f{10> I d_l(10) => guardX-C10}*x_l + guardU-[10>*u_l <= guardC-CIO}! sum d_l = II y_l == Ox_l + D*u_l + gl Dodatek A - Parametri modela in vodenja 297 #901 Numeric value 1 #911 Numeric value 1 #921 Numeric value 1 #931 Numeric value 1 #941 Numeric value 1 #951 Numeric value 1 #961 Numeric value 1 #971 Numeric value 1 #981 Numeric value 1 #991 Numeric value 1 #1001 Numeric value 1 #1011 Numeric value 1 #1021 Numeric value 1 #1031 Numeric value 1 #1041 Numeric value 1 #1051 Numeric value 1 #1061 Numeric value 1 #1071 Numeric value 1 #1081 Numeric value 1 #1091 Numeric value 1 #1101 Numeric value 1 #1111 Numeric value 1 #1121 Numeric value 1 #1131 Numeric value 1 #1141 Numeric value 1 #1151 Numeric value 1 #1161 Numeric value 1 #1171 Numeric value 1 #1181 Numeric value 1 Element-wise 6x1| Element-wise 6x1| Equality constraint (derived) 1x1| Binary constraint| Binary constraint| Element-wise 4x1| Element-wise 2x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint (derived) 1x1| Equality constraint 1x1| umin < u_0 < Umax I dumin < u_0 - u.prev < dumax I u_0(l) in [0 0.01 0.02 0.05 0.1 1]I u_0(2) in [0 1] I u_0(3) in [0 1]I xmin < x_0 < xmaxI ymin < y_0 < ymaxI d_0(l) => x_l == A-Cl}*x_0 + B-ClHu.O + f-ü}! d_0(l) => guardX-Cl}*x_0 + guardIHl}*u_0 <= guardC{l>l d_0(2) => x_l == A-C2}*x_0 + B-C2}*u_0 + f{2>l d_0(2) => guardX-C2}*x_0 + guardIH2}*u_0 <= guardC{2>l d_0(3) => x_l == A-C3}*x_0 + B-C3}*u_0 + f{3>l d_0(3) => guardX-C3}*x_0 + guardIH3}*u_0 <= guardC{3>l d_0(4) => x_l == A-C4}*x_0 + B-[4>*u_0 + f {4} I d_0(4) => guardX-[4}*x_0 + guardIH4}*u_0 <= guardC{4> I d_0(5) => x_l == A{5}*x_0 + B-C5}*u_0 + f{5>l d_0(5) => guardX-C5}*x_0 + guardIH5}*u_0 <= guardC{5>l d_0(6) => x_l == A{6}*x_0 + B-C6}*u_0 + f{6>l d_0(6) => guardX-C6}*x_0 + guardIH6}*u_0 <= guardC{6>l d_0(7) => x_l == A-C7}*x_0 + B-[7>*u_0 + f{7>l d_0(7) => guardX-[7>*x_0 + guardU{7>*u_0 <= guardOT}! d_0(8) => x_l == A-C8}*x_0 + B-[8>*u_0 + f{8>l d_0(8) => guardX-[8>*x_0 + guardIH8}*u_0 <= guardC{8>l d_0(9) => x_l == A-[9>*x_0 + B-[9>*u_0 + f{9>l d_0(9) => guardX-[9>*x_0 + guardIH9}*u_0 <= guardC{9>l d_0(10) => x_l == A-[10>*x_0 + B-ClOHu.O + f{10>l d_0(10) => guardX-C10}*x_0 + guardU{10>*u_0 <= guardC{10>l sum d_0 = II y_0 == Ox_0 + D*u_0 + gl | #118| Numeric value| Equality constraint 1x1| +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Quadratic scalar (real, homogeneous, 5 variables) x: {[2x1 sdpvar] u: {[3x1 sdpvar] y: {[1x1 sdpvar] d: {[10x1 sdpvar] ref: [1x1 sdpvar] uprev: [3x1 sdpvar] type: ’online’ [2x1 sdpvar] [2x1 sdpvar] [3x1 sdpvar] [3x1 sdpvar] [lxl sdpvar] [lxl sdpvar] [2x1 sdpvar] [2x1 sdpvar]> [3x1 sdpvar]> [lxl sdpvar]> [10x1 sdpvar] [10x1 sdpvar] [10x1 sdpvar]> VARS 298 Dodatek A - Parametri modela in vodenja Izjava Izjavljam, da sem doktorsko disertacijo izdelal samostojno pod vodstvom mentorja prof. dr. Boruta Zupančiča, univ. dipl. inž. el., in prof. dr. Igorja Škrjanca, univ. dipl. inž. el. Izkazano pomoč drugih sodelavcev sem v celoti navedel v zahvali.