320 likes | 526 Views
Aplikácie NN - control. Modelovanie SISO lineárných a nelineárnych systémov . Modelovanie procesov viacvrstvovou perceptronovou sieťou Základné podmienky úspešného modelovania UNS sú: - vhodne určenie štruktúry UNSNS - správne nastaviť parametre siete (metódu trénovania Určenie štruktúry:
E N D
Modelovanie SISO lineárných a nelineárnych systémov • . • Modelovanie procesov viacvrstvovou perceptronovou sieťou • Základné podmienky úspešného modelovania UNS sú: • - vhodne určenie štruktúry UNSNS • - správne nastaviť parametre siete (metódu trénovania • Určenie štruktúry: • definovanie počtu vrstiev siete, • definovanie počet neurónov v jednotlivých vrstvách • výber ich aktivačných funkcií. • Ako už bolo uvedené, podľa Kolmogorovho teorému na aproximáciu ľubovoľnej nelineárnej funkcie stačí iba jedna skrytá vrstva.
Počet neurónov vo vstupnej vrstve je volený podľa rádu modelovaného systému, • Počet neurónov v skrytej vrstve sa určuje experimentálne • Počet neurónovvo výstupnej vrstve závisí od počtu výstupov zo systému. • Aktivačné funkcie treba voliť (v skrytých vrstvách tansig, logsig), tak aby boli ľahko vypočitateľné (na urýchlenie výpočtového procesu). • Parametre siete : (váhy, biasy) • Parametre siete sa určujú počas trénovania siete. • - Najlepšie metódou Levenberga-Marquardta. • Algoritmus LM je založený na aproximácii Newtonovej optimalizačnej metódy. • Je náročnejší na výpočty ako napríklad algoritmus spätného šírenia chyby (výpočet inverznej matice), ale potrebuje menej opakovaní prezentovania tréningovej sady vzoriek. • Rýchla konvergencia oproti BP.
Pred začatím učenia sa NS je potrebná úprava vstupno-výstupných dát zo systému do tvaru vhodného pre proces učenia sa neurónovej siete. • Vstupné dáta sa upravujú do tvaru matice , • kde vstup do procesu v i-tom kroku je ui a zodpovedajúci výstup je yi. • Konštanty nu a ny sú tzv. rády vstupu a výstupu. • Tieto konštanty určujú koľko predchádzajúcich vstupov a výstupov bude vstupovať do NS. • Ich súčet nu + nyurčuje reálny počet vstupných neurónov v sieti. • Takýmto tvarom vstupných dát je zabezpečená možnosť siete natrénovať sa na požadované vlastnosti. • Výstupné dáta tvorí vektor výstupu z procesu, vhodne posunutý, aby korešpondoval so vstupnými dátami.
Medzi ďalšie potrebné parametre k učeniu NS patrí aj: • počet trénovacich epoch, • počet zobrazovaných epoch pri trénovaní, • test ukončenia trénovania (hodnota chyby) • ukončenie trénovacieho procesu nastane po splnení buď ukončovacej podmienky (max. chyba výstupu z natrénovanej siete od trénovacích dát), alebo po vykonaní daného počtu epoch. • „Epochou je myslený jeden krok prepočítania váh v sieti, na základe vstupno-výstupných údajov poskytnutých sieti „.
Na trénovanie siete prvých 500 vzoriek, na test. druhých 500. parametre siete: Rád vstupu aj výstupu nu=ny = 3 Počet neurónov v jednej skrytej vrstve = 7 Aktivačné funkcie: - tansig v skrytej vrstve (Hyperbolic tangent sigmoid transfer function) - purelin vo výstupnej vrstve (lineárna aktivačná funkcia) Typ trénovacieho algoritmu: trainlm (Levenberg-Marquardt) Žiadaná odchýlka = 10-7
TRAINLM Levenberg-Marquardt BP Syntax [net,tr] = trainlm(net,Pd,Tl,Ai,Q,TS,VV,TV) info = trainlm(code) TRAINLM is a network training function that updates weight and bias values according to Levenberg-Marquardt optimization. TRAINLM(NET,Pd,Tl,Ai,Q,TS,VV,TV) takes these inputs, NET - Neural network. Pd - Delayed input vectors. Tl - Layer target vectors. Ai - Initial input delay conditions. Q - Batch size. TS - Time steps. VV - Either empty matrix [] or structure of validation vectors. TV - Either empty matrix [] or structure of validation vectors. and returns, NET - Trained network. TR - Training record of various values over each epoch: TR.epoch - Epoch number. TR.perf - Training performance. TR.vperf - Validation performance. TR.tperf - Test performance. TR.mu - Adaptive mu value.
Zle natrénovaný NN model: rád vstupu = 1; rád výstupu = 3 počet neurónov v skrytej vrstve = 2 aktivačné funkcie: - tansig v skrytej vrstve (Hyperbolic tangent sigmoid transfer function) - purelin vo výstupnej vrstve (lineárna aktivačná funkcia) typ trénovacieho algoritmu: - trainlm (Levenberg-Marquardt) Žiadaná cbýba > 10-7
Schéma bioreaktora Vzorové MIMO systémy na modelovanie pomocou NS Bioreaktor a) Bioreaktor Matematický model ťažko určiť (meranie parametrov je zložité, proces silne nelineárny, Biologické procesy využívajú živé baktérie, pomocou ktorých sa transformuje jedna chemická látka na druhú. Takýto proces prebieha v bioreaktore do ktorého priteká látka (substrát) slúžiaca ako potrava živým bunkám spolu s inými látkami nutnými pre správny priebeh reakcie. Po príslušných reakciách v reaktore vznikne výsledný produkt.
Schéma bioreaktora • Podmienky chodu bioreaktora: • biochemický reaktor je dokonale premiešavaný, • - vstupujúci substrát obsahuje len jeden rovnorodý zdroj energie, • substrát (aj produkt) nie sú prchavé látky, • špecifické rýchlosti rastu mikroorganizmov, spotreby substrátu závisia od koncentrácií s a x, • teplota, tlak, pH a pre prietokový režim aj objem sú konštantné, udržiavané v optimálnych experimentálnych hodnotách, • mikroorganizmy počas kultivácie nemenia svoje vlastnosti, • - model opisuje stav v bioreaktore v prípade úplne rozvinutých schopností buniek.
NN Model : (dva vstupy; dva výstupy) • Rády vstupov nu12= 5; • rády výstupov ny12= 6. • počet skrytých vrstiev = 2, • ( s 15 a 11 neurónmi). • - ukončovacia podmienka = 10-7 • typy aktivačných funkcií • skryté vrstvy a výstupná vrstva): • tansig, purelin, purelin
Príklad 3 Modelovanie procesu tvarovania sklenených trúbok • Parametre NS: • rád 1.vstupu = rád 1.výstupu = rád 2.vstupu = rád 2.výstupu = 4 • počet neurónov: • v 1. skrytej vrstve = 13; • v 2. skrytej vrstve = 9 • ukončovacia podmienka = 1e-8 • typy aktivačných funkcií • (skryté vrstvy a výstupná vrstva): tansig, purelin, purelin
Praktické algoritmy riadenie pomocou UNS • Tri úlohy pre predikciu a riadenie SISO systémov • Prediktívne riadenie • NARMA-L2 riadenie (spätnoväzobná linearizácia) • Riadenie pomocou referenčného neurónového modelu • Pri návrhu riadenia pomocou UNS, je nutné realizovať dva základné kroky: • Identifikácia systému • Návrh riadenia
Prediktívne riadenie Pri prediktívnom riadení využijeme model procesu na predikovanie nasledovného správania sa procesu a optimalizačným algoritmom určujeme riadiaci zásah regulátora, ktorý zabezpečuje požadovanú kvalitu. Neurónový model procesu je trénovaný off-line, použitím niektorého z možných trénovacích algoritmov. Optimalizačný proces - značné nároky na výpočet, (určovanie regulačného zásahu v každej perióde vzorkovania regulačného procesu.
kde N1, N2, Nu sú horizonty predíkcie Optimalizačný blok vypočítava u´ a tým minimalizuje J, a potom optimálny riadiaci zásah u aplikuje do procesu.
Prediktívne NN riadenie reaktora kde h je výška hladiny v reaktore, cb je koncentrácia produktu na výstupe, q1 je prietok látky s koncentráciou cb1, q2 je prietok látky s koncentráciou cb2. Koncentrácie vstupov sú napevno nastavené na Konštanty odporu prietoku sú k1, k2sú rovné jednej. Úlohou NN regulátora je udržiavať koncentráciu výstupu na zvolenej hodnote pomocou zmeny prietoku q1. Pre zjednodušenie nastavíme prietok Riadenie hladiny nerealizujeme .
NARMA-L2 riadenie Hlavnou myšlienkou tejto metódy je transformácia nelineárnej dynamiky nelineárneho systému na lineárnu dynamiku kompenzáciou nelinearít. Tak ako pri prediktívnom modeli, je aj tu prvým krokom identifikácia riadeného procesu pomocou NS. Natrénujeme sieť reprezentujúcu doprednú dynamiku systému. Štandartne trénujeme NS tak aby aproximovala takýto výstup
kde y(t) určuje polohu magnetu, i(t) je prúd pretekajúci elektromagnetom, M je hmotnosť magentu, a g je tiažové zrýchlenie. Parameter popisuje viskózne trenie, ktoré je dané materiálom trubice, kde sa magnet pohybuje, konštanta sily poľa (záviasí od počtu závitov na elektromagnete a od sily magnetu ).
V tomto type riadenia sa používajú dve umelé neurónové siete: • NN sieť procesu, • neurónová sieť regulátora. • NN sieť procesu je identifikovaná ako prvá a • regulátor je natrénovaný tak, aby výstup z procesu sledoval referenčný výstup z modelu. • Každá z týchto sietí ma dve vrstvy, a pri konfigurovaní regulátora je možnosť voľby počtu neurónov použitých v skrytých vrstvách. • Dajú sa tu nastaviť tri možnosti vstupu do regulátora: • Oneskorený referenčný signál • Oneskorený výstup z regulátora • Oneskorený výstup z procesu
Pre každý zo vstupov možno zvoliť počet oneskorených hodnôt. • Sú tu dve možnosti výberu vstupov do modelu procesu: • Oneskorený výstup z regulátora • Oneskorený výstup z procesu • Tak ako pri regulátore, možno zvoliť počet oneskorených výstupov
kde je uhol natočenia ramena je torzný moment tvorený JM (jednosmerný motor). Pri modelovaní regulátora použijeme neurónovú sieť s architektúrou 5-13-1. - Vstupmi budú dva predchádzajúce referenčné výstupy, dva predchádzajúce výstupy z procesu, a prechádzajúci výstup z regulátora. - Perióda vzorkovania je 0.05 s.