Acta Montanitica Slovaca Ročník 3 (998), 4, 489-494 Uělé neuronové ítě jako protředek pro odelování nelineárních outav Ivan Taufer a Oldřich Drábek The Artifical Neural Network a ean for odeling Nonlinear Syte The paper deal with nonlinear yte identification baed on neural network. The topic of thi publication i iulation of training and teting a neural network. A contribution i aigned to technologit which are good at the claical identification proble but their knowledge about identification baed on neural network are only on the tage of theoretical bae. Key word: Nonlinear yte, Identification, Neural Network, Siulation. Úvod Uělé neuronové ítě NS jou přílibe pro oblat identifikace a řízení nelineárních ytéů. Např. neuronová íť ůže být použita v případě linearizace regulačního ventilu použití etody inverzního odelování, při inverzní řízení dynaického nelineárního ytéu, atd. Neuronové ítě jou ytéy, pracující obecně libovolný počte vtupů a výtupů a jou tedy nadno použitelné pro identifikaci vícerozěrových ytéů. Tento přípěvek je zaěřen na použití neuronové ítě k identifikaci nelineárního ytéu. K této probleatice exituje řada odkazů, např. (Sjőberg et al., 994; Hunt et al., 992; Pach et al., 995; Warwirck, 996; Yaada & Yabuta, 993). Předtavy o výledcích, doažitelných v oblati identifikace ytéů protřednictví NS, ohou být pro začátečníky, obeznáené pouze e základy teorie NS, dot lhavé. Proto je e rozhodli podělit e o některé zkušenoti z trénování a tetování dvouvrtvé NS, která je odele jednoduché nelineární outavy. Soutava je tvořena ériový pojení dynaického člena, tatického člena nelineární průběhe tatické charakteritiky a bloku nelinearity typu naycení. Síť je trénována algorite učení e zpětný šíření (Backpropagation - BP), viz např. (Sinčák & Andrejková, 996; Kvanička et al., 997; Fauet, 994; Hertz, 99; Bíla, 995; Šnorek & Jiřina, 996). Stručný popi identifikace nelineárního ytéu Uvažuje nelineární dynaický SISO yté, popaný nelineární diferenční rovnicí (Hunt et al., 992) [ y ( k),..., y ( k n + ), u( k),..., u( k n ) ] y ( k ) = f +, (2.) + y u ve které pořadnice y na výtupu outavy v čaové okažiku (k+) závií na inulých n y pořadnicích výtupního ignálu a na n u pořadnicích vtupního ignálu; f [.] reprezentuje nelineární závilot ezi vtupe a výtupe outavy. Saozřejotí při výtavbě ateatického odelu uvažované outavy je volba takové vtupně - výtupní truktury neuronové ítě, která bude odpovídat truktuře identifikované outavy. Označíe-li tedy výtup NS ybole y, poto rovnice odelu nelineární outavy [ y ( k),..., y ( k n + ), u( k),..., u( k n ) ] y ( k ) = fˆ +, (2.2) + y u Prof.Ing. Ivan Taufer, DrSc. a Prof.Ing. Oldřich Drábek, CSc. Katedra řízení proceů a výpočetní techniky, Fakulta cheicko technologická, Univerzita Pardubice, 532 0 Pardubice, ná. Č. Legií 565, tel.: +420 40 603 723, fax: +420 40 603 7068, e- ail: ivan.taufer@upce.cz. (Recenzovali: Prof.Ing. Karol Kotúr, CSc. a Prof.Ing. Irich Koštial, CSc. Revidovaná verzia doručená 25..998) 489
Taufer a Drábek: Uělé neuronové ítě jako proředek pro odelování nelineárních outav kde fˆ [.] reprezentuje aproxiaci nelineární záviloti ezi vtupe a výtupe outavy. Poznaeneje, že čato je nu = n y = n. Uvažuje dopředné odelování, při které je odel připojen k outavě paralelně (obr.). Tab.. Obr.. Dopředné odelování nelineárního ytéu. e( k + ) = y ( k + ) y ( k + ) (2.3) je vtupe algoritu učení neuronové ítě. Vzorky vtupního ignálu u(k) (např. pořadnice kokové funkce) a odezvy outavy y (k), níané v čaových okažicích k = -n, -n+,..., N-n, tvoří polu pounutýi pořadnicei vtupní vzory neuronové ítě. Pořadnice na výtupu outavy y (k+) je vzore pro výtup odelu y (k+). Poznaeneje, že zíněné vzory neuíe vždy zíkat jako výledek on-line experientu, naznačeného na obr.. Lze použít i dobře znáé etody off-line, při které není odel fyzikálně propojený identifikovanou outavou. Jak v prvé, tak i v druhé případě jou vtupní vzory neuronové ítě z z i+ i u( k), y ( k + ), i =,2,..., n; i =,2,..., n; k = n, n +,..., N n, k = n, n +,..., N n a výtupní vzory y ( k + ), k = n, n +,..., N n. Tyto vzory tvoří tzv. trénovací nožinu. Např. pro nelineární outavu, u které lze předpokládat popi nelineární diferenční rovnicí y [ y ( k), u( )] ( k + ) = fˆ k, (2.4) je trénovací nožina tvořena N trojicei dat (tab.). Z uvedených dat dvojice v prvé loupci jou vtupe neuronové ítě, zatíco pořadnice ve druhé loupci jou výtupe outavy a louží k vyjádření chyby (2.3) a k nálednéu učení neuronové ítě algorite e zpětný šíření v čae. Opa-kovaný průchode trénovací nožiny BP - algorite v p p iteračních krocích, dochází k trénování ítě, k potupnéu zpřeňování ynaptických vah ezi neurony a ke nižování hodnoty trénovací účelové funkce [ N ( p ) = y ( k) y ( k) 2 E tr p ]. (2.5) N =0 k 490
Acta Montanitica Slovaca Ročník 3 (998), 4, 489-494 Jetliže v průběhu trénování E tr (p p ) < ε, kde ε je zvolené alé čílo, je trénování ítě ukončeno a y ( k) y ( k) =~ (2.6) hodnotou trénovací účelové funkce E tr (ε) (p p ). Účele identifikace je však obvykle určení odelu ve tvaru neuronové ítě takovýi vlatnoty, aby rovnice (2.6) platila pro jakýkoliv vtupní ignál, tzn. nejen pro ignál, který byl východike pro kontrukci trénovací nožiny. Tzn., že požadujee, aby neuronová íť byla chopna určitého tupně zobecnění, jinýi lovy, aby bylo doaženo jité rovnováhy ezi odezvou neuronové ítě na trénovací nožinu a odezvu ítě na tetovací nožinu. Kontrukce tetovací nožiny tedy vychází z jiného vtupního ignálu, než z kterého vzešla trénovací nožina, a to např. z exponenciální funkce, ipulzu, rapy a pod. Zjišťování tupně zobecnění pak počívá ve třídání proceu trénování a tetování neuronové ítě při průběžné ledování kritéria tetovací účelové funkce k= 0 [ ( ) ( )] 2 y k y k N E t ( p p ) = t te, (2.7) N kde y t (k) je výtup outavy a y t (k) je výtup neuronové ítě v k-té kroku. Kritériu E t (p p ) vykazuje v záviloti na p p extré (iniu). Po jeho doažení tetování ukončíe a hodnoty ynaptických vah, vypočtené v toto iterační kroku, považujee za optiální. Specifikace identifikovaného ytéu, neuronové ítě a algoritu učení Předěte identifikace je nelineární outava popaná odele Wienerova typu nelineární bloke naycení na výtupu - viz obr.2. Soutava je iulována na čílicové počítači protřednictví prograu analogové iulace (Pivoňka & Sládeček, 99). Obr.2. Blokové chéa nelineárního ytéu. Dynaická čát outavy je popána přenoe Z U ( p) ( p) = K, ( K = ; + pt T tatická čát parabolický průběhe = 5), (3.) 2 y ( k) = 2 z ( k), ( 2 = ), (3.2) a blok naycení y A y ( k) = ( k),, pro pro 0 < y ( k) < / A y ( k) > / A., ( A =,), (3.3) Modele outavy je dvouvrtvá neuronová íť jednou krytou vrtvou a jední výtupní neurone. Siulační výpočty jou provedeny pro různý počet vtupů neuronové ítě a pro různý počet neuronů ve kryté vrtvě. Za základ iulace je vzata neuronová íť NS 2-3- (neuronová íť dvěa vtupy, třei neurony ve kryté vrtvě a jední výtupní neurone). Výledky trénování 49
Taufer a Drábek: Uělé neuronové ítě jako proředek pro odelování nelineárních outav a tetování této ítě jou porovnány výledky doaženýi různýi dalšíi ítěi, z nichž jou dále prezentovány výledky doažené na ítích NS 4-0- a NS 6-5-. Síť je trénována algorite učení e zpětný šíření. Všechny neurony výše uvedených ítí ají přenoové binární funkce igoidálního tvaru a pracují v rozahu (0; ). Stroti igoidálních funkcí jou v průběhu učení neuronové ítě buď kontantní nebo adaptovatelné. Startovací hodnoty ynaptických vah a trotí lze zadávat jako deteritická data, nebo z generátoru náhodných číel, nacházejících e pro ynaptické váhy v rozahu (-0,5; 0,5) a pro troti (0; 5). Trénovací nožiny jou kontruovány na základě vtupního ignálu ve tvaru jednotkové kokové funkce a odpovídajících odezev. Kontrukce tetovacích nožin vychází ze vtupního ignálu ve tvaru exponenciální funkce čaovou kontantou T ex = 2, ipulu o výšce a šířce T i = 0 a rapy integrační čaovou kontantou T i = 0. Trénování a tetování neuronových ítí Dříve než začnee trénování neuronových ítí, je třeba zvolit určité paraetry, které jou noha autory příně třeženy, jako jejich know - how. Základní inforace o volbě těchto paraetrů (volba tartovacích hodnot ynaptických vah, doba trénování, vhodný počet vzorů, počet neuronů ve kryté vrtvě) lze nalézt např. v (Fauet, 994). Poznaeneje, že většina profeionálních prograových produktů, určených k trénování neuronových ítí, řeší některé z těchto probléů autoaticky. Jou odzkoušeny dvě varianty trénování neuronových ítí: trénování adaptivní natavování ynaptických vah a kontantní trotí igoidálních přenoových funkcí, trénování adaptivní natavování ynaptických vah i trotí. Trénování při kontantní troti igoidálních funkcí K touto účelu je použita neuronová íť NS 2-3-. Startovací hodnoty ynaptických vah jou zadávány z generátoru náhodných číel v reprodukovatelné režiu, z důvodů ožnoti porovnání doažených výledků. Pro jednotlivé výpočty jou troti S a koeficient učení α zadávány jako deterinované hodnoty. Neuronová íť je trénována pro různé hodnoty α a S. Maxiální počet iteračních kroků byl zvolen p p = 50.000. Trénování jou ledovány dva cíle: zjištění relativní iniální hodnoty trénovací účelové funkce E tr (in), poouzení charakteru průběhu E tr = f(p p ). Obr.3. Geoetrické íto bodů relativní, iniální hodnotou E tr (in). Obr.4. Závilot E tr =f(p p ) pro S = 2 a různé hodnoty α. Výledek vyhodnocení prvého dílčího cíle je patrný z grafu na obr. 3, kde je uvedena závilot S = f(α) pro E tr (in). Graf na obr. 3 lze považovat za geoetrické íto bodů relativních iniálních hodnot E tr (in) pro odpovídající hodnoty troti a koeficienty učení. Při nevhodné volbě paraetrů S a α ůže být rozdíl v hodnotách kritérií E tr (in) veli značný. Charakter proceu trénování v rozahu 0-50.000 iteračních kroků lze kvalitativně pooudit z průběhů na obr. 4. Jednotlivé průběhy účelových funkcí jou podle očekávání kleající. 492
Acta Montanitica Slovaca Ročník 3 (998), 4, 489-494 Obr.5. Průběhy trénovacích proceů po odtartování algoritu (S-kont.). Obr.6. Čaový průběh odezvy outavy a neuronové ítě pro vtupní ignál ve tvaru koku. Pro dané tartovací hodnoty trotí exituje určitý interval koeficientů učení (α in ; α ax ), ve které je trénování neuronové ítě neefektivní. Pokud α (α in, α ax ), nedochází k trénování neuronové ítě vůbec (viz obr.3, α = 0), nebo e ná ice podaří íť natrénovat, ale velikou hodnotou kriteriální funkce E tr (in) (viz obr.3; α = 0,0). Se zvyšování α uvnitř intervalu e zvyšuje rychlot učení neuronové ítě. Z průběhů na obr. 4 a 5 je patrno, že v případě trénování dochází k výraznéu pokleu E tr ve dvou tupních: k prudkéu nížení dochází v prvních několika tovkách průchodů trénovací nožiny algorite učení a k druhéu, írnějšíu pokleu dochází v dalších několika tiícovkách iteračních kroků. Pro ilutraci jou na obr.6 uvedené odezvy outavy na jednotkový kok a odezvy neuronové ítě trénované paraetry S = 2, α = a E tr (in), doažené při p p = 500 a p p = 50.000. Z vizuálního poouzení průběhů na obr.6 vyplývá, že nehoda ezi odezvai odelů a outavy je značná v oblati vyokých kitočtů, teprve zvýšení počtu průchodů trénovací nožiny algorite učení na veli vyokou hodnotu e k chování outavy přiblížíe výrazněji. Trénování při adaptaci troti igoidálních funkcí Za účele porovnání proceů učení kontantní a proěnnou trotí igoidálních funkcí je proveden výpočet záviloti E tr = f(p p ) pro náhodné tartovací hodnoty troti všech neuronů, dříve zíněné koeficienty učení a pro p p = 50.000. Poouzení výledků těchto výpočtů ve vztahu k výled-ků graficky zobrazený na obr.4 vyznívá ve propěch učení adaptací trotí: pro p p = 50.000 doáhnee cca o 20% nižší hodnoty E tr (in), průběh adaptace po tartu algoritu je výrazně rychlejší, i když vý charaktere odpovídá průběhu bez adaptace (viz obr. 7, porovnej obr. 5). Dále z výledků iulace vyplývá, že e zvyšující e počte vtupů odelu a počte neuronů ve kryté vrtvě e zvyšuje hodnota koeficientu učení, potřebná k doažení iniální hodnoty účelové funkce, e zvyšující e počte vtupů odelu a počte neuronů ve kryté vrtvě kleá E tr, nejlepších výledků trénování je doaženo v případě NS 4-0- a NS 6-5-. Tetování NS Obr.7. Průběhy trénovacích proceů po odtartování algoritu (S-adapt.). 493
Taufer a Drábek: Uělé neuronové ítě jako proředek pro odelování nelineárních outav Tetování je realizováno na čtyřech neuronových ítích tetovacíi nožinai kontruovanýi ze zkušebních ignálů ve tvaru exponenciály, ipulzu a rapy. Analýzou výledků iulace je dopěli k náledující kvalitativní závěrů: v průbězích E tr =f(p p ) jou patrny lokální extréy, opt pro určitou tetovací nožinu vzorů e hodnota E t e zvyšující e počte vtupů, rep. neuronů ve kryté vrtvě výrazně neění. K výraznější zěně dochází v optiální počtu iteračních kroků, (opt) (opt) pro danou neuronovou íť je E tr tí enší a počet p p tí vyšší, čí více e tetovací nožina vý charaktere přibližuje k nožině trénovací. Pro ilutraci je na obr.8 uveden průběh E t =f(p p ) a E tr =f(p p ) pro trénovací nožinu ve tvaru koku a tetovací nožinu ve tvaru rapy pro NS 4-0-. Z průběhu na obr.9 i lze učinit předtavu o íře hody odezvy outavy a odelu na vtup ve tvaru rapy pro NS 4-0-. Obr.8. Závilot E tr =f(p p ) a E t =f(p p ) při trénování koke a tetování rapou. Obr.9. Čaový průběh odezvy outavy a NS pro vtupní ignál ve tvaru rapy. Závěr Z výledků popané iulace trénování a tetování konkrétní, poěrně jednoduché nelineární outavy nelze vyvozovat obecně platné kvantitativní závěry. Lze však zíkat určitou kvalitativní předtavu o vlivu různých paraetrů na přenot proceu trénování, na potřebnou dobu trénování a rychlot konvergence. Výtavba odelu ve tvaru neuronové ítě vyžaduje tedy provedení řady iulačních výpočtů, které jou předpoklade pro vytvoření olidního odelu natrénovaného na určitou trénovací nožinu vzorů a chopného zobecnění na tetovací nožinu jiných vzorů, které ohou přijít v úvahu při provozování neuronové ítě. Při této příležitoti znovu připoeňe, že u profeionálních prograových produktů jou nohé probléy pojené natavení potřebných paraetrů řešeny autoaticky. Literatura Bíla, J.: Uělá inteligence a neuronové ítě v aplikacích. ČVUT, Praha, 995. Fauet, L.: Fundaental of Neural Network. Prentice-Hall, Inc., 994. Hertz, J. et al.: Introduction to the Theory of Neural Coputation. Santa Fe Intitute, 99. Hunt, K.J. et al.: Neural Network for Control Syte - A Survey. Autoatica, Vol. 28, No. 6, 992. Kvanička, V. et al.: Úvod do teorie neuronových ítí. IRIS, Bratilava, 997. Pach, Ch. et al.: Dynaic Syte Identification by Neural Network. JSME Int. Jour., Vol.38/4, 995. Pivoňka, P. & Sládeček, L.: Siulace dynaických ytéů. Autoatizace, 34, č.3, 99. Sinčák, P. & Andrejková, G.: Neurónové iete, (2.diel). Elfa,.r.o., Košice, 996. Sjőberg, J., et al.: Neural Network in Syte Identification. Report LiTH-ISY-R-622,994. Šnorek, M. & Jiřina, M.: Neuronové ítě a neuropočítače. ČVUT, Praha, 996. Warwick, K.: Identification in Engineering Syte. In: Proce. of the Conf.e helh at Swanea, M, 996. 494
Acta Montanitica Slovaca Ročník 3 (998), 4, 489-494 Yaada, T. & Yabuta, T.: Dynaic Syte Identification Uing Neural Network. IEEE Tran. on Syte, Man and Cybernetic, Vol. 23, No., 993. 495