Неуронске мреже и могућност примене у електромоторним погонима Панто Ранковић Технички факултет Чачак 2011
САДРЖАЈ ИДЕЈА ВЕШТАЧКЕ ИНТИЛИГЕНЦИЈЕ БИОЛОШКИ И ВЕШТАЧКИ НЕУРОН НЕРОНСКЕ МРЕЖЕ УЧЕЊЕ НЕУРОНСКИХ МРЕЖА ВЕКТОРСКО УПРАВЉАЊЕ АМ MRAS МОДЕЛ ВЕКТОРСКОГ УПРАВЉАЊА ПРОЦЕНА ФЛУКСА И БРЗИНЕ НЕУРОНСКОМ МРЕЖОМ
УВОД Идеја о машини која “размишља” довела је до развоја научне дисциплине под називом ВЕШТАЧКА ИНТИЛИГЕНЦИЈА Узор за развој вештачке интилигенције је ЉУДСКИ МОЗАК Мозак људи и животиња састоји се од БИОЛОШКИХ НЕУРОНА Дакле, вештачка интилигенција се релаизује помоћу ВЕШТАЧКОГ НУРОНА
БИОЛОШКИ НЕУРОН Дендрити омогућавају пријем сигнала (надражаја) из околине или из суседних неурона Синапсе додирују дендрите и омогућавају интеракцију између неурона Аксон је изданак преко кога се преноси сигнал Тело неурона врши акумулацију сигнала и прослеђује одзив
ВЕШТАЧКИ НЕУРОН Улазни сигнали су нормализоване вредности У синапсама се придружују тежински коефицијенти Сабирач и нелинеарна активациона функција су еквивалентни телу неурона
Улазни сигнали се представљају као улазни Синапсе садрже тежинске коефицијенте који се се множе са улазним сигналима и сабирају у суматору је поларизациони улаз који се додаје предходној суми Након деловања активационе функције излаз је :
АКТИВАЦИОНЕ ФУНКЦИЈЕ hard limit purelin logsig tansig
ТОПОЛОГИЈА НЕУРОНСКИХ МРЕЖА
УЧЕЊЕ НЕУРОНСКИХ МРЕЖА Основни принцип рада неуронске мреже заснива се на процени, а да би мрежа извршила добру процену мора бити добро научена (обучена) Процес у коме се неуронској мрежи додељују вредности тежинских коефицијената назива се процес учења неуронске мреже Принцип процене неуронских мрежа заснива се на теорији апроксимација нелинеарних функција
ПРОЦЕНА ФУНКЦИЈЕ ВИШЕСЛОЈНОМ НЕУРОНСКОМ МРЕЖОМ ПОМОЋУ ПРОГРАМА MATLAB ЗЕЛЕНА СЛОЖЕНА ФУНКЦИЈА ЈЕ ЗАДАТА ФУНКЦИЈА СА ДОДАТИМ ШУМОМ ЦРВЕНА ЛИНИЈА ПРЕДСТАВЉА ПРОЦЕЊЕНУ ФУНКЦИЈУ
Учење је сложен процес који има за циљ да се на излазу добије што тачнија вредност, а то значи да грешка буде што мања вектор излазних сигнала посматраног процеса вектор излазних сигнала неуронске мреже
Учење процес који зависи од параметара тако да се укупни вектор грешке дефинише као Грешка је такође функција више параметара. Када би се графички грешка приказала то би била сложена површ
Циљ учења је да се грешка минимизира тј Циљ учења је да се грешка минимизира тј. да се грешка сведе у љубичасту зону. Овај задатак се решава применом нумеричке математике
Уместо чешће се користи функција критеријума квалитета која се дефинише као Поступци којима се минимизира ова функција су уствари поступци учења. Алгоритме учења можемо поделити у две групе АЛГОРИТМЕ ЗАСНОВАНЕ НА ГРЕШЦИ и АЛГОРИТМЕ ЗАСНОВАНЕ НА ИЗЛАЗУ ИЗ НЕУРОНСКЕ МРЕЖЕ
АЛГОРИТМИ ЗАСНОВАНИ НА ГРЕШЦИ АЛГОРИТМИ ЗАСНОВАНИ НА ИЗЛАЗУ ИЗ МРЕЖЕ
Чешће коришћени алгоритми су алгоргоритми засновани на грешци, а то су АЛГОРИТМИ НАЈБРЖЕГ СПУСТА ЊУТНОВИ АЛГОРИТМИ , КВАЗИ ЊУТНОВИ АЛГОРИТМИ, КОЊУГОВАНИ АЛГОРИТМИ
АЛГОРИТМИ НАЈБРЖЕГ СПУСТА Ови алгоритми заснивају се на минимизирању критеријумске функције итеративним поступком који се описује једначином је смер тражења у к-тој итерацији је коефицијент учења у к-тој итерацији Смер тражења зависи од (-) па је Препоручује се да се за нешто сложенији израз је моментни члан који убрзава конвергенцију
КАКО ПРОЈЕКТОВАТИ НЕУРОНСКУ МРЕЖУ Дефинисати пробелм Спецификација и нормализација улазних података Избор топологије неуронске мреже Задавање почетних параметара Учење неуронске мреже
Пример пикадо , реализован Matlab-ом Задатак је да неуронска мрежа штопрецизније погоди задате тачке Нека су задате произвољне тачке p = [0 1 2 3 4 5]; t = [0 0 0 1 1 1]; plot(p,t,'o');
Није добро!!! Формирање мреже net = newff([0 5],[2 1],{'tansig','logsig'},'trainrp'); a = sim(net,p); Учење мреже net.trainParam.epochs = 50; net.trainParam.show = 10; net.trainParam.goal = 0.1; net = train(net,p,t); Излаз из мреже plot(a,'o'); Није добро!!!
Доста боље него предходни пут! Да би био бољи резултат изврши се преобучавање ! net.trainParam.epochs = 1000; net.trainParam.show = 10; net.trainParam.goal = 0.01; net = train(net,p,t); a = sim(net,p); plot(a,'o'); Доста боље него предходни пут!
ВЕКТОРСКО УПРАВЉАЊЕ АМ Векторско управљање је начин управљања асинхроног електромотора где се код управљачке величине контролише и интезитет и фазни померај. Овакав начин управљања омогућава да се контролише просторни вектор струје статора, а он је управљачка величина која омогућава независну контролу момента и флукса.
ВЕКТОРСКО УПРАВЉАЊЕ ЗАСНОВАНО НА MRAS ТЕОРИЈИ
Како ради обсервер? Разлика између излазног сигнала добијеног из референтног модела и сигнала добијеног из адаптивног модела назива се сигнал грешке ε. Адапциони блок има улогу да прилагоди одређену величину референтном моделу како би сигнал грешке био што мањи.
Адаптивни блок може бити НЕУРОНСКА МРЕЖА!
Из задатог референтног модела као излазна величина се добија распрегнути роторски флукс, добијен применом основних једначина векторског управљања. Да би се добио добро регулисан систем уводи се адаптациони блок који је неуронска мрежа и има задатак да изврши процену флукса и представи га као распрегнути модел. Поређењем ова два флукса добија се сигнал грешке по D и Q оси који се прослеђује у адаптациони блок у коме је дефинисан алгоритам по коме сигнал грешке утиче на коефицијент, а тиме и на промену брзине.
На основу ових једначина може се формирати неуронска мрежа!
вектор флуксаротора процењени вектор флукса
Мрежу ће мо учити алгоритмом најбржег спуста !
Наредни графици представљају приказ промене брзине у завиности од времена и промену роторског флукса у зависности од времена. На графицима је снимљен одзив флукса и брзине на помоћу референтног модела и помоћу неуронске мреже, па се могу уочити разлике између референтних и процењених величина
Нека је
најбоље решење се добија када је мало, а Нека је најбоље решење се добија када је мало, а велико
ЗАКЉУЧАК Неуронске мреже имају велику примену у роботским системима и системима управљања. У последње време све већу примену имају у електроенергетским системима и системима управљања и регулације електромоторних погона.