УНИВЕРЗИТЕТ У БЕОГРАДУ МАШИНСКИ ФАКУЛТЕТ Најдан Л. Вуковић Развој машинског учења интелигентног мобилног робота базиран на систему вештачких неуронских мрежа докторска дисертација Београд, 2012 UNIVERZITET U BEOGRADU MAŠINSKI FAKULTET Najdan L. Vuković Razvoj mašinskog učenja inteligentnog mobilnog robota baziran na sistemu veštačkih neuronskih mreža doktorska disertacija Beograd, 2012 UNIVERSITY OF BELGRADE FACULTY OF MECHANICAL ENGINEERING Najdan L. Vuković Machine Learning of Intelligent Mobile Robot Based on Artificial Neural Networks PhD Thesis BELGRADE, 2012 IV Комисијa за оцену и одбрану: Ментор: др Зоран Миљковић, редовни професор, Универзитет у Београду – Машински факултет Чланови Комисије: др Драган Милутиновић, редовни професор, Универзитет у Београду – Машински факултет др Бојан Бабић, редовни професор, Универзитет у Београду – Машински факултет др Драган Алексендрић, доцент, Универзитет у Београду – Машински факултет др Вељко Поткоњак, редовни професор, Универзитет у Београду – Електротехнички факултет Датум одбране докторске дисертације: октобар 2012. V Изјаве захвалности Желео бих да се искрено захвалим мом ментору, професору др Зорану Миљковићу, на седмогодишњој подршци у раду и ненаметљивом приступу у избору и постављању истраживачких циљева. Слобода која ми је омогућена у постављању основне истраживачке хипотезе, као и у избору и тестирању метода, значајно је допринела проширивању базе мог знања и формирању нових погледа. Захваљујем се и професору др Бојану Бабићу на дугогодишњој сарадњи у истраживању и наставном процесу, а посебно на обавезама које је преузео као руководилац пројеката технолошког развоја, у којима активно учествујем од 2008. године. Искрену и дубоку захвалност дугујем мојим другарима, студентима докторских студија Машинског факултета у Београду, Милици Петровић и Марку Митићу, који су својим доласком унели нову енергију у мој живот, а посебно на сталној свакодневној подршци у виду инспиративних питања „Кад ћеш више да завршиш?” и „Докле мислиш да читаш?”. Њихова подршка у последње две године, омогућила ми је да се сконцентришем на завршетак експерименталне верификације постављене хипотезе. Свакодневне шале које међусобно размењујемо уз чај и кафицу, доприносе одржању позитивне енергије, чак и онда када инспирација и радни елан недостају. Дубоку захвалност дугујем породици Нешић на гостопримству и помоћи током мог боравка у Лозани у децембру 2010-те године, ради сервисирања мобилног робота Khepera II. Од почетка 2006-те године свакодневно боравим у кабинету бр. 240 у Центру за нове технологије (ЦеНТ), те бих стога желео да се захвалим професору др Љубодрагу Тановићу, шефу Катедре за производно машинство, као и свим запосленима на Катедри за производно машинство, што су ми омогућили да користим поменути кабинет. Ова изјава захвалности не би била потпуна без помена мојих дугогодишњих пријатеља, без чије подршке не бих постигао циљ. Захваљујем се мом куму Дејану, двема особама које су посебно обогатили мој живот у последње две године, кумчету Алеку и Биљани, и наравно, првој постави тима пријатељства: луцидна крила Марковић и Лазаревић, центарфор Ракић, стамени сидраш Симић, продорни бек Кусуровић и виспрени плејмејкер Попивода. Надам се да ћете ми опростити све непопијене кафе и освежавајућа пића, пропуштене концерте и изласке, као и све неодгледане утакмице нашег К.К. „Партизан”. Ова дисертација је посвећана мојој породици и родбини, људима који знају и вреде више од мене. Београд, април 2012. VI Ђолету, Хоупу и Лању, За године љубави, пажње и разумевања. You are today where your knowledge brought you; you will be tomorrow where your knowledge takes you. - Anonymous - VII Развој машинског учења интелигентног мобилног робота базиран на систему вештачких неуронских мрежа Резиме Унутрашњи транспорт сировина, материјала и готових делова подразумева брзо, ефикасно и економично обављање постављеног транспортног задатка. Унутрашњи транспорт у оквиру технолошког окружења могуће је унапредити увођењем напредних метода и технологија. Развој нових система унутрашњег транспорта треба да резултира интелигентним системима унутрашњег транспорта који су у стању да спроведу транспортни задатак без директног надзора од стране оператера. Примена мобилних робота у оквиру интелигентног технолошког система за потребе унутрашњег транспорта омогућила би ефикасније и економичније обављање постављеног транспортног задатка. Степен развоја и примене мобилних робота достигао је ниво неопходан за испуњавање захтева који су одређени технолошким и производним процесима. У истраживањима спроведеним у оквиру ове докторске дисертације развијене су нове методе неопходне за примену мобилних робота у интелигентном технолошком систему. Фокус истраживачких напора представља способност мобилног робота да уз примену одговарајуће математичко-софтверске подршке и аквизицијом информације од камере, самостално одреди свој положај и положај карактеристичних објеката у окружењу. Проблем симултаног оцењивања положаја мобилног робота и карактеристичних објеката у окружењу решен је применом линеаризованог Калмановог филтра и вештачких неуронских мрежа. Анализирана је и могућност остваривања интелигентног понашања мобилног робота у форми развоја хибридне управљачке архитектуре, која обезбеђује робустност захваљујући примени концепта машинског учења на бази вештачких неуронских мрежа. VIII Посебан сегмент истраживања посвећен је развоју хибридног управљачког алгоритма намењеног за експлоатацију мобилног робота у оквиру интелигентног технолошког система без додатне транспортне инфраструктуре. Предложене методе су верификоване кроз развој симулације у MATLAB® програмском окружењу и путем експерименталног метода. Експериментални поступак је спроведен у лабораторијском моделу технолошког окружења коришћењем LEGO Mindstorms NXT мобилног робота и Khepera II мобилног робота уз примену система препознавања на бази камере. Симулациони и експериментални резултати указују да развијене методе подржавају предложени концепт примене мобилних робота за потребе унутрашњег транспорта у оквиру интелигентног технолошког система. Кључне речи: интелигентни технолошки систем, унутрашњи транспорт, мобилни робот, аутоматски вођена робоколица, машинско учење, вештачке неуронске мреже, теорија оцењивања, Калманов филтар. Научна област: машинство Ужа научна област: производно машинство УДК: 007-526:658.286.2.4.001-56(043.3) 007.52:004.896(043.3) IX Machine Learning of Intelligent Mobile Robot Based on Artificial Neural Networks Abstract Material Handling Systems in manufacturing environment imply efficient and economical transport solutions. Automated Guided Vehicles (AGVs) are a common choice made by many companies for Material Handling in manufacturing systems. Nowadays, AGV based internal transport of raw materials, goods and parts is becoming improved with advances in technology. Demands for fast, efficient and reliable transport imply the usage of the flexible AGVs with onboard sensing and special kinds of algorithms needed for daily operation. These transport solutions can be modified and enhanced by applying advanced methods and technologies. New generation of internal transport systems should operate autonomously, without direct human control. Level of development of mobile robots insures reliability and efficiency needed for dayily operations within manufacturing environemnt. In this thesis, the implementation of mobile robots for internal transport within Material Handling System is analyzed and new solutions are proposed. Focus of research efforts is devoted to the ability to estimate position and orientation of mobile robot within manufacturing environment using newly developed algorithms and sensory information. Simultaneous localization (of the mobile robot) and mapping (of the working environment) is one of the most important problems in mobile robotics community. The soultion to this problem insures autonomous navigation and henceforth autonomous operation for transport purposes within manufacturing/industrial facility without direct human control. In this thesis, new algorithm for state estimation is proposed and analyzed; the algorithm is based on integration of Extended Kalman Filter and feedforward neural networks (Neural Extended Kalman Filter) and camera is used as exteroceptive sensor. Furhermore, to achieve intelligent behavior, the X new robotic hybrid control architecture is developed and analyzed. Finally, the new hybrid control algorithm for guidance of mobile robot is proposed. Two building blocks form the hybrid algorithm: visual servoing and position based control. Neural Extended Kalman Filter is used for state estimation of the mobile robots, and at each time instant the robot knows its position and orientation. The proposed solutions are developed in MATLAB® environment by developing a specific software code and tested using Khepera II mobile robot, WEB camera and LEGO Mindstorms NXT mobile robot. Simulation and experimental results show usability of the proposed solutions for material handling within an Intelligent Manufacturing System. Keywords: Intelligent Manufacturing Systems, material handling, mobile robot, automated guided vehicles, machine learning, artificial neural networks, estimation, Kalman filter. Scientific discipline: Mechanical Engineering Scientific sub discipline: Manufacturing Technologies UDC: 007-526:658.286.2.4.001-56(043.3) 007.52:004.896(043.3) XI С А Д Р Ж А Ј 1. УВОД .................................................................................................................... - 1 - 2. ПРЕЛИМИНАРНА АНАЛИЗА И МОТИВАЦИЈА ЗА СПРОВЕДЕНА ИСТРАЖИВАЊА............................................................................................ - 9 - 2.1. Основни нивои интеграције у интелигентним технолошким системима .................................................................................................. - 11 - 2.2. Мобилни роботи у интелигентним технолошким системима.... - 15 - 2.3. Унутрашњи транспорт у технолошким системима ....................... - 18 - 2.3.1. Унутрашњи транспорт у технолошком окружењу – основе ....... - 18 - 2.3.2. Унутрашњи транспорт на бази аутоматски вођених робоколица – критичка анализа стања у области ................................................ - 21 - 3. ТЕОРИЈСКЕ ОСНОВЕ................................................................................... - 26 - 3.1. Индустријски мобилни роботи ........................................................... - 26 - 3.1.1. Дефиниција стања мобилног робота............................................... - 27 - 3.1.2. Интеракција мобилног робота са радним окружењем................... - 29 - 3.1.3. Поставка проблема............................................................................. - 31 - 3.1.4. Модели промене стања мобилног робота – модели кретања ........ - 33 - 3.1.5. Модел кретања на основу пређеног пута......................................... - 36 - 3.1.6. Брзински модел кретања.................................................................... - 37 - 3.1.7. Модел перцепције ............................................................................... - 39 - 3.2. Калманов филтар .................................................................................... - 43 - 3.3. Линеаризовани Калманов филтар...................................................... - 48 - 4. МАШИНСКО УЧЕЊЕ ВЕШТАЧКЕ НЕУРОНСКЕ МРЕЖЕ СА РАДИЈАЛНИМ АКТИВАЦИОНИМ ФУНКЦИЈАМА ГАУСОВОГ ТИПА................................................................................................................. - 55 - 4.1. Вештачка неуронска мрежа са радијалним активационим функцијама ............................................................................................... - 57 - 4.2. Оптимизација параметара вештачке неуронске мреже са Гаусовим активационим функцијама – машинско учење............................... - 61 - 4.2.1. Машинско учење применом линеаризованог Калмановог филтра- 66 - XII 4.2.2. Машинско учење применом линеаризованог информационог филтра ................................................................................................ - 68 - 4.2.3. Машинско учење применом алгоритма специфичне апроксимације момената............................................................................................. - 70 - 4.3. Експериментални резултати примене развијених алгоритама машинског учења вештачке неуронске мреже са радијалним активационим функцијама Гаусовог типа ....................................... - 74 - 4.3.1. Скупови реалних података за проверу алгоритама машинског учења . .............................................................................................................. - 75 - 4.3.2. Ирис тест скуп .................................................................................. - 79 - 4.3.3. Моделирање „Фридманових” функција ........................................... - 82 - 4.3.4. Примена вештачких неуронских мрежа са радијалним активационим функцијама Гаусовог типа на моделирање топологије обрађене површине.......................................................... - 89 - 4.4. Дискусија ................................................................................................... - 92 - 5. СИМУЛТАНО ОЦЕЊИВАЊЕ ПОЛОЖАЈА МОБИЛНОГ РОБОТА И ПОЛОЖАЈА КАРАКТЕРИСТИЧНИХ ОБЈЕКАТА У ОКРУЖЕЊУ ............................................................................................................................. - 95 - 5.1. Оцењивање положаја карактеристичних објеката у окружењу (изградња мапе окружења) - основни проблеми............................. - 96 - 5.2. Математичка формулација проблема................................................ - 99 - 5.3. Преглед стања у области симултаног оцењивања положаја мобилног робота и карактеристичних објеката............................ - 103 - 5.4. Примена линеаризованог Калмановог филтра за симултано оцењивање положаја мобилног робота и карактеристичних објеката у окружењу ............................................................................. - 108 - 5.5. Примена линеаризованог Калмановог филтра у MATLAB® програмском окружењу – резултати симулације.......................... - 117 - 5.6. Алгоритам неуронског линеаризованог Калмановог филтра .. - 128 - 5.7. Резултати примене неуронског линеаризованог Калмановог филтра у MATLAB® програмском окружењу – резултати симулације............................................................................................... - 136 - 5.8. Дискусија ................................................................................................. - 142 - 6. СИМУЛТАНО ОЦЕЊИВАЊЕ ПОЛОЖАЈА МОБИЛНОГ РОБОТА И КАРАКТЕРИСТИЧНИХ ОБЈЕКАТА УЗ ПРИМЕНУ СИСТЕМА ПРЕПОЗНАВАЊА НА БАЗИ КАЛИБРИСАНЕ КАМЕРЕ.............. - 145 - 6.1. Преглед стања у области ..................................................................... - 146 - 6.2. Процесирање слике .............................................................................. - 149 - 6.2.1. Координатни системи .................................................................... - 149 - 6.2.2. Модел камере..................................................................................... - 151 - 6.2.3. Модел радијалне дисторзије слике.................................................. - 154 - XIII 6.2.4. Модел реципрочне удаљености карактеристичних објеката .... - 155 - 6.2.5. Дефинисање и препознавање карактеристичних објеката......... - 157 - 6.2.6. Хомографија – предикција изгледа карактеристичних објеката- 164 - 6.3. Извођење алгоритма неуронског линеаризованог Калмановог филтра...................................................................................................... - 167 - 6.3.1. Корак корекције НЛКФ алгоритма................................................ - 168 - 6.3.2. Иницијализација нових карактеристичних објеката ................. - 169 - 6.3.3. Сензорски модел и Јакобијан сензорског модела............................. - 173 - 6.4. Експериментални резулати ................................................................ - 177 - 6.4.1. Анализа утицаја почетне коваријансне матрице параметара вештачке неуронске мреже.............................................................. - 180 - 6.4.2. Утицај броја неурона у скривеном слоју ........................................ - 183 - 6.4.3. Анализа перформанси неуронског линеаризованог Калмановог филтра током кретања мобилног робота по дужој путањи ..... - 185 - 6.5. Дискусија ................................................................................................. - 191 - 7. ПРИМЕНА ИНДУСТРИЈСКИХ МОБИЛНИХ РОБОТА У ИНТЕЛИГЕНТНИМ ТЕХНОЛОШКИМ СИСТЕМИМА................. - 194 - 7.1. Приказ технолошког окружења – основне информације........... - 194 - 7.2. Нова хибридна управљачка архитектура за навигацију мобилног робота у технолошком окружењу..................................................... - 198 - 7.2.1. Хибридна управљачка архитектура.............................................. - 199 - 7.2.2. Приказ основних модула .................................................................. - 202 - 7.2.3. Експериментални резултати ........................................................ - 214 - 7.2.4. Анализа резултата и дискусија...................................................... - 221 - 7.3. Нови хибридни алгоритам за управљање мобилним роботима на основу повратне информације од камере....................................... - 225 - 7.3.1. Опис хибридног управљачког алгоритма ...................................... - 228 - 7.3.2. Управљање на бази епиполарне геометрије ................................... - 231 - 7.3.3. Критичка анализа стања у области и мотивација за истраживање ... ............................................................................................................ - 234 - 7.3.4. Експериментални резултати примене развијеног хибридног управљачког алгоритма................................................................... - 237 - 7.4. Дискусија ................................................................................................. - 252 - 8. ЗАКЉУЧАК................................................................................................... - 255 - 9. ЛИТЕРАТУРА................................................................................................ - 264 - XIV С П И С А К С Л И К А Слика 2.1 Еволуција роботике и предикција примене робота у будућности [99]. - 16 - Слика 2.2 Средства за обављање унутрашњег транспорта. - 19 - Слика 3.1 Дефиниција степени слободе мобилног робота у равни x-y. - 34 - Слика 3.2 Кинематички модел кретања мобилног робота у континуалном облику. - 38 - Слика 4.1 Типови активационих функција. - 59 - Слика 4.2 Гаусова активациона функција за различите вредности параметра. - 60 - Слика 4.3 Графички приказ основне разлике између вишеслојног перцептрона и вештачке неуронске мреже са радијалним активационим функцијама у простору улазног вектора. - 61 - Слика 4.4 Улазни скуп података за ирис тест скуп. - 79 - Слика 4.5 Промена успешности класификације вештачке неуронске мреже за тест скуп у зависности од броја неурона. - 81 - Слика 4.6 Конвергенција грешке у функцији од броја итерација у логаритамским координатама за различите почетне вредности параметара. - 85 - Слика 4.6 (Наставак) - 86 - Слика 4.7 Предикције изгледа сегмента обрађене површине - 90 - Слика 5.1 Мобилни робот и карактеристични објекти у окружењу. - 99 - Слика 5.2 Приказ последица постојања шума у управљачком систему мобилног робота. - 113 - Слика 5.3 Резултати симулације примене ЛКФ алгоритма. - 119 - Слика 5.4 Стварна путања означена црвеном и ЛКФ оцена путање мобилног робота представљена плавом бојом. - 120 - Слика 5.5 Оцена грешке положаја и 2σ границе за оцену грешке положаја (95% интервал поверења). - 122 - Слика 5.6 Оцена грешке положаја и 2σ границе за оцену грешке положаја (95% интервал поверења). - 123 - Слика 5.7 Нормализована грешка оцењивања (НГЕ) kε одређена након 50 Монте Карло понављања. - 125 - Слика 5.8 Нормализована грешка оцењивања (НГЕ) kε за усвојену малу коваријансу грешке оријентације. - 126 - Слика 5.9 Утицај конструктивних карактеристика на нормализовану грешку оцењивања kε . - 127 - XV Слика 5.10 Нормализована грешка оцењивања неуронског линеаризованог калмановог филтра са једнслојним перцептроном (НЛКФ - ВП). - 139 - Слика 5.11 Нормализована грешка оцењивања неуронског линеаризованог Калмановог филтра са двослојним перцептроном (НЛКФ-ВП). - 140 - Слика 5.12 Нормализована грешка оцењивања неуронског линеаризованог Калмановог филтра итегрисан са вештачком неуронском мрежом са радијалним активационим функцијама (НЛКФ-РАФ). - 141 - Слика 6.1 Илустративни приказ основних координатних система. - 150 - Слика 6.2 Модел инфинитезимално малог отвора бленде камере. - 152 - Слика 6.3 Примери радијалне дисторзије слике камере. - 154 - Слика 6.4 Дефинисање модела реципрочне удаљености карактеристичног објекта. - 155 - Слика 6.5 Пример примене алгоритма идентификације карактеристичних објекта. - 161 - Слика 6.6 Илустративни приказ одређивања делова слике за меморисање у интерној меморији филтра у циљу препознавања карактеристичног објекта након помераја мобилног робота. - 163 - Слика 6.7 Графички приказ хомографије. - 164 - Слика 6.8 Карактеристични објекат #7 (a) и предвиђени изглед карактеристичног објекта #7 применом хомографије (б) након помераја мобилног робота за транслацију T и ротацију R. - 166 - Слика 6.9 На слици су приказане вредности коефицијента корелације за три изабрана објекта. - 167 - Слика 6.10 Мобилни робот Khepera II са WEB камером у лабораторијском моделу технолошког окружења. - 178 - Слика 6.11 Промена тежинских односа на улазу (колона са леве стране) и излазу из вештачке неуронске мреже (колона са десне стране) за различите вредности почетне матрице коваријанси. - 181 - Слика 6.11 (Наставак) - 182 - Слика 6.12 Утицај коваријансе тежинских односа на оцену путање мобилног робота. - 183 - Слика 6.13 Резултати једног понављања експеримента. - 186 - Слика 6.14 Упоредни приказ оцена путање кретања мобилног робота. - 188 - Слика 6.15 Промена излазних вредности вештачке неуронске мреже током експеримента. - 191 - Слика 7.1 Диспозициони план (layout) производно-монтажног погона предузећа „МОНТПРОЈЕКТ” [124]. - 197 - Слика 7.2 Лабораторијски модел технолошког окружења. - 198 - Слика 7.3 Хибридна управљачка архитектура [12,192]. - 200 - XVI Слика 7.4 Приказ оптималне путање одређене применом А* алгоритма. - 203 - Слика 7.5 Приказ остварених резултата обучавања. - 208 - Слика 7.6 Једна од развијених конфигурација LEGO MINDSTORMS NXT мобилног робота током кретања. - 209 - Слика 7.7 Скуп улазно-излазних парова за обучавање вештачке неуронске мреже за препознавање боје подлоге. - 211 - Слика 7.8 Лабораторијски модел технолошког окружења и мобилни робот. - 214 - Слика 7.9 Мобилни робот током обављања транспортног задатка. - 216 - Слика 7.10 MATLAB® апликација која у on line режиму обезбеђује увид у фунционисање система. - 217 - Слика 7.11 Графички приказ кретања мобилног робота (MATLAB® апликација сопственог развоја). - 219 - Слика 7.12 Кретање мобилног робота у лабораторијском моделу технолошког окружења. - 219 - Слика 7.13 Графички приказ кретања мобилног робота . (MATLAB® апликација сопственог развоја). - 221 - Слика 7.14 Кретање мобилног робота у лабораторијском моделу технолошког окружења. - 221 - Слика 7.15 А) Блок дијаграм тока информација хибридног управљачког алгоритма (ХИА); Б) Блок дијаграм тока информација УОИК петље [129,195]. - 229 - Слика 7.16 Епиполарна геометрија између два положаја камере. - 231 - Слика 7.17 Дефинисање функционалних зависности између епипола у равни. - 232 - Слика 7.18 Мобилни робот са хватачем и камером у лабораторијском моделу технолошког окружења. - 238 - Слика 7.19 A) прва циљна слика; Б) и В) на почетку кретања робот не види прву циљну слику те започиње кретање сходно УОП петљи. - 242 - Слика 7.20 А) – Б) први део кретања робота (УОП); Б) – В) Кретање на основу УОИК петље према положају који је дефинисан првом циљном сликом. - 243 - Слика 7.21 Промена вредности епипола током првог извршења УОИК петље. - 244 - Слика 7.22 Промена вредности епипола током другог извршења УОИК петље. - 245 - Слика 7.23 Тренутна слика – циљна слика. - 245 - Слика 7.24 Почетна слика, циљна слика и завршна слика (респективно) након првог сегмента УОИК петље. - 246 - Слика 7.25 Почетна слика, циљна слика и завршна слика (респективно) након другог сегмента УОИК петље. - 246 - Слика 7.26 Изабрани фрејмови на основу НЛКФ оцењивања у реалном времену. - 247 - XVII Слика 7.27 НЛКФ оцене: путање мобилног робота А) и промене оријентације Б). - 248 - Слика 7.28 Промена излазних вредности вештачке неуронске мреже током експеримента. - 249 - Слика 7.29 Промена вредности тежинских односа вештачке неуронске мреже за улазни слој А) и излазни слој Б). - 250 - XVIII С П И С А К Т А Б Е Л А Табела 3.1: Основни алгоритам Калмановог филтра. - 47 - Табела 3.2: Основни алгоритам линеаризованог Калмановог филтра. - 53 - Табела 3.3: Упоредни приказ Калмановог филтра и линеаризованог Калмановог филтра. - 53 - Табела 4.1: Псеудокод линеаризованог Калмановог филтра за оптимизацију параметара вештачке неуронске мреже - 66 - Табела 4.2: Псеудокод линеаризованог информационог филтра за оптимизацију параметара вештачке неуронске мреже. - 69 - Табела 4.3: Псеудокод алгоритма оцењивања параметара вештачке неуронске мреже базиран на специфичној апроксимацији момената. - 73 - Табела 4.4: Карактеристике изабраних тест скупова. - 75 - Табела 4.5: Експериментални резултати за тест скуп – „Abalone”. - 76 - Табела 4.6: Експериментални резултати за тест скуп – „Weather Ankara”. - 77 - Табела 4.7: Експериментални резултати за тест скуп – „Auto-mpg”. - 77 - Табела 4.8: Експериментални резултати за тест скуп – „Iris”. - 80 - Табела 4.9: Експериментални резултати за Фридманову функцију #1. - 83 - Табела 4.10: Експериментални резултати за Фридманову функцију #2. - 83 - Табела 4.11: Експериментални резултати за Фридманову функцију #3. - 84 - Табела 4.12: Експериментални резултати моделирања обрађене површине. - 91 - Табела 5.1: Псеудокод линеаризованог Калмановог филтра за симултано оцењивање положаја мобилног робота и карактеристичних објеката. - 115 - Табела 5.2: Алгоритам неуронског линеаризованог Калмановог филтра. - 133 - Табела 5.3 Број параметара вештачких неуронских мрежа које филтар у реалном времену оцењује. - 138 - Табела 6.1: Псеудокод НЛКФ-а (аквизиција информације од камере). - 176 - Табела 6.2: Техничке карактеристике – основна конфигурација Khepera II (KheIIBase) - 177 - Табела 6.3: Техничке карактеристике WEB камере Prestigio PWC2 - 178 - XIX Табела 6.4: Низ управљачких команди. - 180 - Табела 6.5: Релативна грешка, средња апсолутна грешка (САГ) и квадратни корен средње квадратне грешке (ККСКГ) за пет понављања. - 184 - Табела 6.6: Грешке срачунате за оцењене путање НЛКФ-а, ЛКФ-а и одометрије. - 188 - Табeлa 7.1: Резултати оптимизације параметара након 30 независних понављања процеса обучавања и тестирања. - 207 - Табела 7.2: Резултати тестирања различитих архитектура. - 212 - Табела 7.3: Приказ изабраних граничних вредности и генерисаних вредности вештачке неуронске мреже. - 212 - Табела 7.4: Техничке карактеристике - LEGO Mindstorms NXT мобилни робот. - 214 - Табела 7.5: Техничке карактеристике – хватач Khepera Gripper Turret (KheGrip). - 238 - Табела 7.6: Усвојене вредности параметара. - 239 - Табела 7.7: Грешка оцене положаја мобилног робота за три примењена алгоритма. - 248 - XX Л И С Т А А К Р О Н И М А CAD - Computer Aided Design - Пројектовање производа применом рачунара CAE - Computer Aided Engineering CAM - Computer Aided Manufacturing - Пројектовање производње применом рачунара CAPP - Computer Aided Process Planning - Планирање и управљање производњом применом рачунара CAQ - Computer Aided Quality - Управљање квалитетом применом рачунара производа RANSAC - Random Sample Consensus АВР - аутоматски вођена робоколица (енг. Automated Guided Vehicles - AGV) АСАМ - Алгоритам специфичне апроксимације момената Гаусове расподеле ВИ - Вештачка интелигенција ВНМВП - Вишеслојни перцептрон (вештачка неуронска мрежа) ВНМРАФ - Вештачка неуронска мрежа са радијалним активационим функцијама ГРВНМ - Генерализована регресиона вештачка неуронска мрежа ИТС - Интелигентни технолошки систем ККСКГ - Квадратног корена средње квадратне грешке КНУ - Компјутерско нумеричко управљање (енг. Computer Numerical Control - CNC) ЛИФ - Линеаризовани информациони филтар ЛКФ - Линеаризовани Калманов филтар ЛТЗ - листа технолошких задатака МР - Мобилни робот НГЕ - Нормализована грешка оцењивања НЛКФ - Неуронски линеаризовани Калманов филтар НЛКФ-ВП - Неуронски линеаризовани Калманов филтар интегрисан са вишеслојним перцептроном НЛКФ-РАФ - Неуронски линеаризовани Калманов филтар интегрисан са вештачком неуронском мрежом која има радијалну активациону функцију Гаусовог типа РИТ - Рачунарски интегрисане технологије (енг. Computer Integrated Manufacturing - CIM) СКГ - Сума квадрата грешака XXI УОИК - Управљање на основу повратне информације од камере УОП - Управљање на основу положаја ФТС - Флексибилни технолошки систем ХИА - Хибридни управљачки алгоритам ХУА - Хибридна управљачка архитектура XXII Н О М Е Н К Л А Т У Р А kx - Вектор стања мобилног робота се у тренутку k. За раванско кретање мобилног робота: [ ] T k x yx θ= , где x и y дефинишу позицију, а угаоθ оријентацију мобилног робота. ( )kp x - Функција густине вероватноће стохастичке промљиве kx | ˆ k kx - Оцена вектора стања |k kP - Матрица коваријанси оцене вектора стања |ˆ k kx ( )f ⋅ - Модел кретања мобилног робота (једначина стања система) ( )h ⋅ - Модел перцепције (једначина мерења) Q - Матрица коваријанси шума система R - Матрица коваријанси шума мерења ku - Вектор управљања kz - Вектор мерења kv - Транслаторна брзина кретања центра маса мобилног робота kω - Угаона брзина мобилног робота Rl - Полупречник левог точка мобилног робота Rd - Полупречник десног точка мобилног робота dω - Угаона брзина десног точка мобилног робота lω - Угаона брзина левог точка d - Размак између точкова мобилног робота kB матрица управљања kF - матрица промене (прелаза) система E - Јединична матрица одговарајућих димензија kH - опсервациона матрица kw - шум мерења [ ]iЕ - Оператор математичког очекивања ( )itrag - Траг матрице ijw - Вектор тежинских параметара вештачке неуронске мреже jµ - Вектор прототипова (репера) ВНМРАФ  - Скуп реалних бројева I - Информациона матрица (инверзија матрице коваријанси − = 1Ι P ) ( )|k kp z x - Условна функција густине вероватноће стохастичке XXIII величине kz за дато kx Σ - Матрица сигма тачака АСАМ s - Тест статистика m - вектор положаја карактеристичних објеката λ - Вектор параметара реципрочне удаљености карактеристичног објекта f - Фокална дужина камере uk , vk - Број пиксела по јединици дужине (на слици) txe - Жељени положај епипола cxe - Тренутни положај епипола - 1 - 1. УВОД Промене на тржишту у погледу захтева у виду величине наручене серије производа и скраћивања рокова испоруке, као и у погледу развоја и конструисања производа, условљавају стална улагања у производну опрему и примену производних парадигми. Основни циљ улагања представља освајање већег тржишног удела, одржања корака са захтевима тржишта и подизања конкурентности производно оријентисаних компанија. Модернизација постојећих производних капацитета или улагање у нове напредне производне технологије представља правац развоја и дугорочног одржања производних компанија на тржишту у значајнијем обиму. Пројектовање нових генерација производа подразумева и промену доминантних праваца истраживања. На почетку друге деценије 21. века, у склопу свеобухватне модернизације постојећих производних капацитета, од производних технологија се очекује економичност, већи степен флексибилности у погледу промене захтева клијената, подизање ефикасности и повећање ефективности. Да би се испунили ови комплексни захтеви, развој нових производних технологија и освајање постојећих треба да буду утемељени на модерним концептима науке уз примену напредних технолошких парадигми. Истраживања у оквиру ове дисертације фокусирана су на један сегмент комплексног проблема развоја производних технологија. У дисертацији се разматра увођење интелигентних мобилних робота за обављање унутрашњег транспорта сировина, полуфабриката, материјала и готових делова. Примена ових машина омогућила би брже, сигурније и ефикасније обављање постављеног транспортног задатка. - 2 - Увођење индустријских робота, серијске или паралелне структуре, значајно је допринела повећању ефикасности прво технолошког система, а тиме и производног система, и смањењу оптерећења производних радника. Примена робота се спроводи за оне технолошке задатке у којима је присуство производног радника опасно или у којима стално понављање исте радње доводи до пада концентрације радника и резултира појавом грешке, а тиме и могућег заустављања процеса. Досадашње искуство примене индустријских робота за различите технолошке задатке указује на оправданост оваквог приступа, с обзиром на то да се увођењем и инсталирањем робота води рачуна о хуманизацији рада производних радника и повећању ефикасности технолошког система [42,62,171]. Примена мобилних робота за унутрашњи транспорт у оквиру интелигентног технолошког система подразумева висок степен интелигентног понашања самог мобилног робота [12,129]. Интелигентно понашање мобилног робота настаје као резултат синергијског деловања свих појединачних (интелигентних) способности. За одређене специфичне случајеве потребно је досегнути и ниво аутономног понашања. У спроведеним истраживањима, чији је основни резултат ова докторска дисертација, анализиран је један део проблема примене мобилних робота. Овај део примене се односи на способност мобилног робота да самостално, без директног утицаја или надзора од стране оператера, одреди свој положај у радном окружењу. Иако се ово можда чини као тривијалан проблем који се решава једноставним очитавањем броја ротација погонских вратила мотора, истраживачки резултати су показали да ослањање искључиво на мерења са енкодера није довољно. За одређивање положаја мобилног робота потребна је (додатна) информација из окружења која није директно везана са стањем мобилног робота. Решавањем овог проблема допринело би се постизању аутономности мобилног робота у погледу одређивања сопственог положаја. У том смислу, у истраживањима је анализиран проблем - 3 - симултане оцене положаја мобилног робота и карактеристичних објеката у окружењу. Овај проблем подразумева примену метода теорије оцена (естимације), с обзиром на то да је анализирани проблем стохастичке природе због неодређености и грешака у управљачком и сензорском систему мобилног робота. Примена Калмановог филтра омогућује увођење сензорске информације (мерења) у процес оцењивања, услед чега је омогућено мобилном роботу да континуирано оцењује свој положај као и положај објеката у познатом или непознатом окружењу. Модерни приступ у развоју мобилних робота у домену интелигентних технолошких система базиран је на аутономности у погледу зависности од (специјалне) транспортне инфраструктуре која није предвиђена у постојећем технолошком окружењу [12,129]. Уколико би експлоатација мобилног робота зависила од распореда одговарајућих објеката онда би концепт примене интелигентних мобилних робота био доведен у питање. Симултано оцењивање положаја мобилног робота и карактеристичних објеката у окружењу представља могуће решење у погледу елиминације потребе за транспортном инфраструкуром. У том смислу у оквиру спроведеног истраживања се разматра употреба система препознавања на бази камере [126,130] за континуирано обезбеђивање аутономности мобилног робота у погледу потребе за транспортном инфраструктуром. Експлоатација мобилних робота у оквиру интелигентних технолошких система за потребе унутрашњег транспорта претпоставља способност мобилног робота да „препозна” промене у радном окружењу и да се прилагоди. Уколико ова способност не би била омогућена транспорт сировина, полуфабриката, материјала и готових делова би био прекинут, а тиме и цео производни процес. Као пример овакве ситуације се може навести ситуација у којој мобилни робот треба да преузме палету са готовим производима али услед промене осветљења није у стању да препозна нијансе у бојама. Наравно, оваква ситуација као главни резултат - 4 - може да има губитак времена и евентуално заустављање производње. Овакав исход може бити пренебрегнут моделирањем поменутог проблема развојем модела за све евентуалне ситуације у којима мобилни робот треба да се нађе, али здрав разум указује на то да је немогуће предвиђање свих могућих ситуација. Чак и када би формирали овакав модел, не постоји довољна сигурност да се у будућности неће појавити нови проблем који није предвиђен у иницијалној поставци. Флексибилно понашање према променама изискује један потпуно другачији приступ. У том смислу, флексибилност према променама моделирана је применом концепта машинског учења на бази вештачке неуронске мреже која у on line режиму модификује параметре сходно променама у окружењу и врши предикцију стања. Овакав приступ обезбеђује довољну флексибилност потребну за експлоатацију без сталног надзора од стране оператера. Текст ове дисертације је подељен у шест целина. Свака целина представља резултате једног сегмента спроведених истраживања. Мотивација за рад на овом истраживању представљена је у другом поглављу. У овом поглављу су предочени закључци о потребама модернизације постојећих производних капацитета који су настали као резултат сарадње са привредом Машинског факултета у Београду, првенствено истраживача са Катедре за производно машинство [8,9,123]. Постојеће стање указује да се са напредним математичко-софтверским моделима, методама заснованим на примени концепта интелигентног технолошког система и модернизацијом производне опреме, може постићи виши ниво ефикасности и флексибилности производно оријентисаних компанија. У поглављу су анализирани начини интеграције компонената интелигентног технолошког система, са посебним акцентом на развој и примену интелигентног унутрашњег транспорта. Уочена је и промена основне парадигме роботике, као научнотехничке дисциплине, која настаје као резултат истраживања у - 5 - области развоја индустријских робота (серијске или паралелне структуре), мобилних робота и вештачке интелигенције. Критичка анализа референтних извора и досадашњих остварених резултата у области истраживања показала је основне недостатке постојеће парадигме унутрашњег транспорта и потребу за развојем интелигентног унутрашњег транспорта. У трећем поглављу су дате основне информације неопходне за појашњавање и представљање остварених истраживачких резултата. Приказани су коришћени математички модели кретања и перцепције и уведен је алгоритам оцењивања (естимације) који је употребљен за шири спектар проблема у оквиру спроведеног истраживања. У четвртом поглављу су уведена три нова алгоритма машинског учења, који су развијени на основама Калмановог филтра, и показано је како се параметри вештачке неуронске мреже са радијалним функцијама Гаусовог типа модификују применом развијених алгоритама. Сва три алгоритма су развијeнa за спровођење машинског учења секвенцијалног типа, с обзиром на то да примена вештачких неуронских мрежа у роботици подразумева on line модификацију параметара. У поглављу су дати експериментални резултати остварени тестирањем примене вештачке неуронске мреже са радијалним активационим функцијама Гаусовог типа за моделирање седам реалних проблема. Ови проблеми представљју скупове података и применом нових алгоритама се може утврдити њихова употребна вредност и ефикасност у поређењу са постојећим алгоритмима. Поред моделирања уобичајених проблема, у поглављу је демонстрирана и примена поменуте вештачке неуронске мреже, чији су параметри модификовани применом нових алгоритама, за моделирање реалног инжењерског проблема посматране обрађене површине. - 6 - Пето поглавље уводи проблем симултане естимације/оценивања положаја мобилног робота и карактеристичних објеката у окружењу. Овај проблем представља основу за истраживања спроведена у оквиру ове дисертације која третирају унутрашњи транспорт применом мобилних робота. Проблем је решен коришћењем линеаризованог Калмановог филтра, који почива на идеји линеаризације нелинеарних модела кретања и модела перцепције мобилног робота. Развијени математички модел је примењен у MATLAB® [207] програмском окружењу развојем одговарајућег софтверског кода, а у поглављу су приказани резултати спроведених симулација. За оцену конзистентности филтра коришћен је 2χ статистички тест, а тест статистика је одређена након 50 Монте Карло понављања. Анализом проблема уочено је да промена конструктивних карактеристика мобилног робота има значајан утицај на перформансе филтра. У поглављу је приказан и нови алгоритам естимације положаја мобилног робота и карактеристичних објеката у окружењу на бази линеаризованог Калмановог филтра спрегнутог са вештачком неуронском мрежом за моделирање грешке усвојеног модела кретања – неуронски линеаризовани Калманов филтар. Развијен је модел уз примену једнослојног перцептрона, двослојног перцептрона и вештачке неуронске мреже са радијалним активационим функцијама Гаусовог типа. Резултати Монте Карло симулација показују да увођење вештачке неуронске мреже омогућава on line оцењивање грешке усвојеног модела кретања мобилног робота захваљујући on line спровођењу машинског учења. Неуронски линеаризовани Калманов филтар генерише боље оцене стања, уз смањење оптимистичности филтра. На овај начин је побољшана конзистентност филтра, а тиме и његова оптималност. На основу резултата приказаних у петом поглављу, шесто поглавље је посвећено експерименталној верификацији примене неуронског линеаризованог Калмановог филтра коришћењем мобилног робота - 7 - Khepera II и WEB камере у лабораторијском моделу технолошког окружења. У поглављу је показано како се полазни проблем симултаног оцењивања положаја мобилног робота и карактеристичних објеката у окружењу може решити применом система препознавања на бази калибрисане камере. У поглављу је дат опис како се извршава детекција, моделирање и препознавање карактеристичних објеката који представљају пројекцију произвољног објекта који се налази у видном пољу камере, у тродимензионалном свету, на раван слике камере. Примена модела реципрочне удаљености омогућава тренутну иницијализацију параметара карактеристичног објекта као компонената вектора стања система. Експериментални резултати потврђују успешност развијеног концепта. Седмо поглавље је подељено на три дела. У првом делу се даје кратак преглед реалног технолошког окружења на чијим основама је изграђен лабораторијски модел технолошког окружења у коме су тестирани алгоритми развијени током истраживања. У другом делу седмог поглавља разматра се начин обједињавања појединачних особина интелигентног агента у форми управљачке архитектуре. Хибридна управљачка архитектура је базирана на примени линеаризованог Калмановог филтра за потребе оцењивања положаја мобилног робота, вештачких неуронских мрежа за препознавање боје подлоге након аквизиције података добијених од оптичког сензора, А* алгоритма за планирање путање кретања и вештачких неуронских мрежа за генерисање управљачке команде. Приказана хибридна управљачка архитектура је тестирана кроз примену LEGO Mindstorms NXT мобилног робота у лабораторијском моделу технолошког окружења. У трећем делу поглавља је приказана надоградња примене система препознавања на бази камере у циљу добијања повратне информације и генерисања управљачке команде. Основна мотивација је чињеница да камера може бити двојако примењена приликом развоја интелигентог унутрашњег транспорта у оквиру технолошког окружења. У - 8 - том смислу, приказан је хибридни управљачки алгоритам који раздваја полазни проблем на два проблема, које је једноставније решити. Експериментални резултати су остварени у лабораторијском моделу технолошког окружења уз коришћење мобилног робота Khepera II, WEB камере и хватача Khepera Gripper. За разлику од конвенционалног приступа у управљању и навигацији аутоматски вођених робоколица (мобилних робота) за потребе унутрашњег транспорта у оквиру технолошког окружења, развијени хибридни управљачки алгоритам не захтева додатну транспортну инфраструктуру. Свако поглавље у коме су приказани резултати остварени током истраживања (поглавља четири, пет, шест и седам) структуирано је на такав начин да читаоцу пружа основне информације о предмету истраживања, преглед релевантних извора и критичку анализу стања у области, приказ коришћених метода и експерименталне резултате. На крају је дата дискусија и анализа остварених резултата са критичким освртом на могућност екстраполације резултата и могућност промене или побољшања приступа. - 9 - 2. ПРЕЛИМИНАРНА АНАЛИЗА И МОТИВАЦИЈА ЗА СПРОВЕДЕНА ИСТРАЖИВАЊА Производно оријентисанe компаније плански улажу значајна новчана средства у нове технологије ради проширења производног програма и испуњења основних захтева клијената. Ове инвестиције треба да резултирају повећањем обима производње али и освајањем нових производа и тржишта. Међутим, планска улагања не морају увек да имају и постављени циљ за коначни исход. У условима сталне промене захтева клијената који се постављају пред компанију, неизбежне су честе и непланиране промене планова производње [127]. Претходна констатација има за последицу неусаглашене дугорочне производне планове, који дефинишу тачно одређену пословно-производну политику, са актуелним наруџбинама клијената у погледу врсте производа и величине наручене серије. Самим тим, пројекције годишњих планова производње на кварталне, месечне, недељне и дневне активности често су фазно померане или пак потпуно промењене у односу на иницијалне поставке, сходно приоритетима актуелних наруџбина одређених производа и постојећим производним капацитетима компаније. Честе измене производних планова са собом повлаче и измене у погледу припреме производних линија, подешавања извршних органа, набавке репроматеријала и остале неопходне опреме. Овакве промене изискују додатно време за извршење и додатна финансијска улагања, што утиче на брзину одговара на захтеве клијената и коначну цену производа. Флексибилност компаније у погледу промене, брзине припреме и брзине извршавања производних планова одређује позицију компаније на тржишту. - 10 - Студије које су спроведене у производно оријентисаним компанијама [8,9,123] указују на то да постоји потреба за модернизацијом постојећег стања увођењем напредних производних парадигми које су базиране на модерној технолошкој опреми. Тако се у [8,9] може видети анализа технолошких процеса у домену производње делова од лима применом методе описане у [125]. Анализе показују да удео изгубљеног времена у структури укупног технолошког времена варира од 32% [8] до 44% [9]. Резултати спроведних студија недвосмислено показују да постоји реална могућност смањења припремног времена и изгубљеног времена, као и подизања ефикасности технолошког система, заснована на модернизацији постојеће производне опреме и примени напредних инжењерских метода у поменутом домену. Истраживања спроведена у оквиру ове дисертације за циљ имају побољшање постојећег стања у производно оријентисаним компанијама на бази развоја система унутрашњег транспорта сировина, полуфабриката, материјала и готових делова применом интелигентних индустријских мобилних робота. Примена стационарних индустријских робота, серијске или паралелне структуре, у данашњим технолошким системима је уобичајена појава за производно оријентисане компаније у високо развијеним земљама. Међутим, и поред сталног напретка науке и технике, примена индустријских мобилних робота у технолошким системима и даље представља изазов за научно-стручну јавност. Развој технолошких система у последњих 30. година иницирао је постављање неколико основних парадигми и праваца развоја [86]. У првој поставци су се развијали технолошки системи на бази Флексибилних технолошких система (ФТС). Флексибилни технолошки систем представља потпуно интегрисани систем кога сачињавају нумерички управљане машине алатке, спрегнуте аутоматизованим системом унутрашњег транспорта, које међусобно размењују информације путем - 11 - централног рачунара [1,11,12]. Основна идеја ФТС-а огледа се у повећању прилагодљивости технолошких система на промене захтева, брзине реаговања и ефикасности. С друге стране, ФТС се може посматрати и као филозофија производње која почива на основама [10]: технолошки слични делови се обрађују на истим машинама; смањење трошкова и производног времена и повећање технолошке компетитивности; једноставно увођење нових производа у процес. Флексибилни систем унутрашњег транспорта представља један од најважнијих делова примене ФТС-а као интегралне целине [19,82]. Међутим, развој науке и технике иницирао је настајање нове парадигме технолошких система базиране на примени техника вештачке интелигенције. Интелигентни технолошки систем (ИТС) је највиша класа флексибилних технолошких система која је остварила синергију вештачке интелигенције и компјутерски интегрисаних технологија, са циљем да систем има могућност реализације активности у неодређеном технолошком окружењу, уз перманентан пораст вероватноће успешног понашања. Другим речима, ИТС представља технолошки систем који је у стању да брже и ефикасније од ФТС реагује на промене полазних захтева, уз поштовање ограничења. 2.1. Основни нивои интеграције у интелигентним технолошким системима Ефикасније искоришћење производних капацитета подразумева развој нових генерација производа и претпоставља сталну еволуцију индустрије и програмабилне аутоматизације. Увођење напредних производних концепата као што је ИТС омогућава пројектовање напредних, флексибилних и интегрисаних производних окружења, развијених захваљујући савременим информационо-комуникационим технологијама и архитектурама интелигентних система [7]. - 12 - Увођење индустријских мобилних робота (ИМР) у процес производње подразумева претходно извршену анализу постојеће технологије, као и могућности побољшања постојећих производних и технолошких процеса инсталирањем ИМР, али и евентуално пројектовање потпуно новог производног окружења у коме ће ИМР бити интегрална компонента технолошких система. У зависности од исхода и закључака ове анализе зависи и домен примене ИМР, као и његова функција у самом систему. Да би ИМР био интегрисан у постојећи технолошки систем или уведен у новоразвијени технолошки систем, неопходно је спровести интеграцију ИМР са доминантим производним концептом рачунарски интегрисане производње (CIM-Computer Integrated Manufacturing - Рачунарски интегрисане технологије РИТ) који је постављен на следећим основама [86]:  Пројектовање производа применом рачунара (CAD-Computer Aided Design);  Пројектовање производње применом рачунара (CAM-Computer Aided Manufacturing);  Планирање и управљање производњом применом рачунара (CAPP- Computer Aided Process Planning);  Управљање квалитетом производа (CAQ-Computer Aided Quality); Познато је [197] да се ова интеграција одвија на три нивоа:  Ниво механичке интеграције - представља физичку (хардверску) структуру флексибилног технолошког система ФТС, односно – ФТС(МА ∧ Р ∧ ИР), где су симболички приказани следећи елементи технолошког система: МА - машина алатка, Р – рачунар и ИР - индустријски робот.  Ниво комуникационе интеграције - подразумева успостављање комуникације између пројектантских CAD, CAM, CAE, CAPP - 13 - станица са ФТС, односно симболички представљено – РИТ(CAD ∧ CAM ∧ CAPP ∧ CAQ ∧ ФТС(МА ∧ Р ∧ ИР)). Основна идеја овог нивоа интеграције огледа се у повезивању управљачких јединица са машинама алаткама у погону.  Ниво интеграције преко знања - представља највиши ниво интеграције који обухвата концепт вештачке интелигенције (ВИ), на чијим основама се и остварује концепт интелигентних технолошких система (ИТС). Коначни симболички израз зависности елемената основне формалне структуре ИТС је дат у следећем облику: ИТС (ВИ∧ РИТ(CAD∧CAM∧ CAQ ∧ CAPP∧ФТС(МА∧ИР∧ Р)) Дакле, основна структура концепта ИТС-а почива на познатим производним концептима уз примену вештачке интелигенције за моделирање комплексних проблема. Заједничко деловање две основне структуре ИТС-а (ВИ и РИТ) треба да резултира следећим особинама ИТС-а:  Аутономност – према нивоу сталног надзора и контроле од стране оператера, односно његовог присуства и утицаја;  Децентрализација – полазни проблем је рашчлањен на више елементарних проблема;  Флексибилност – у погледу измене полазног проблема;  Поузданост – обављање основне функције без бојазни о евентуалној грешки у систему која може значајно да угрози функционисање самог система;  Ефикасност – остваривање предвиђених циљева;  Способност учења – перформансе ИТС-а могу бити значајно побољшане уколико би се систему омогућила способности учења и закључивања. - 14 - Идеја ИТС-а није заснована на искључивању људског фактора у потупности из процеса већ у пројектовању таквих технолошких система у којима се процес доношења одлука одвија на основу комуникације човек- машина (систем). Иако је постојала идеја о „тамној фабрици” (фабрика где нема светла с обзиром на то да нема оператера – The Black Factory Concept [134]) истраживања су показала да концепт ИТС-а треба да има укључене и производне раднике и инжењере у процес доношења одлука. Занимљиво је да се током година примене основног CIM концепта дошло до закључка да је неопходно променити полазни CIM концепт у интелигенти CIM тј. ICIM [98,99]. Самим тим и основе CIM концепта се мењају у ICAD, ICAPP, ICAQ и ICAM. Ова промена концепта може бити посматрана као интеграција вештачке интелигенције са полазним концептом CIM-а: ВИ∧ РИТ(CAD∧CAM∧ CAQ ∧ CAPP∧ФТС(МА∧ИР∧ Р), што резултира ИТС парадигмом. ИТС у својој основној поставци подразумева интеракцију и комуникацију између више интелигенитх агената. Сваки појединачни интелигентни агент је надлежан за један сегмент проблема, а њихов збирни рад за коначан исход има интелигентно функционисање технолошког система као целине. У том смислу, истраживања у оквиру ове дисертације представљају први корак развоја и успостављања концепта ИТС-а. У дисертацији се анализирају основни проблеми навигације мобилног робота посматрано са аспекта примене за потребе унутрашњег транспорта материјала, сировина, полуфабриката и готових делова. Интелигентни агент-мобилни робот представља само један сегмент интелигентног технолошког система који се развија на Катедри за проиводно машинство Машинског факултета у Београду. Резултати спроведеног истраживања указују на даље правце развоја неопходне за обједињавање функција појединачних интелигентих агената. - 15 - 2.2. Мобилни роботи у интелигентним технолошким системима Неколико милиона инсталираних индустријских робота у производним системима широм света успешно се примењује већ неколико деценија у различитим технолошким процесима за заваривање, сечење метала ласером и воденим млазом, површинску заштиту итд. Међутим, доминантни правци развоја указују на основни недостатак ове групе индустријских робота (тзв. стационарних индустријских робота) који се огледа у ограничењу у смислу промене положаја базе. Константан облик и константна запремина радног простора онемогућавају промену основног положаја базе индустријског робота уколико постоји таква потреба. С друге стране, приметна је тенденција померања основне парадигме у области роботике као научно-техничке дисциплине заснована на примени мобилних робота, односно на интеграцији стационарних структура (углавном је у питању серијска) са покретном базом у циљу обављања радног задатка дефинисаног технолошким процесом. С обзиром на изражену промену основних задатака који се постављају пред индустријске роботе у 21. веку – од „узми и постави” задатака (Pick & Place) до „узми и понеси” задатака (Fetch & Carry) [98], ова фузија представља још један облик интеграције мобилних робота у производно технолошко окружење (слика 2.1). - 16 - Слика 2.1 Еволуција роботике и предикција примене робота у будућности [98]. Од првобитних задатака типа „узми и постави” тежиште развоја се помера ка новом типу задатка типа „узми и понеси”. Да би се остварио технолошки задатак неопходно је омогућити интеракцију робота са радним окружењем уз примену одговарајућих сензора за аквизицију података/сензорске информације. На слици се може видети да је увођење сензорске информације омогућило развој напредних индустријских робота намењених за процесе спајања у монтажи и остале напредне технолошке задатке у којима се очекује одговарајућа повратна информација. На основу ове информације робот треба да изврши интерпретацију стања окружења и донесе одлуку у циљу обављања технолошког задатка. У наредном периоду развоја роботике очекује се остваривање комуникације на нивоу човек (оператер)-робот на основу које би се брже размењивале информације, а тиме и брже обављао постављени технолошки задатак. С друге стране, аутоматски вођена робоколица (АВР) су први корак у развоју транспортних решења. На самом почетку АВР нису имала могућност аквизиције сензорске информације у циљу оцене стања радног окружења. Након увођења сензора и одговарајуће математичке подршке за интерпретацију сензорске информације омогућен је флексибилнији транспорт. Омогућавање комуникације на нивоу човек – АВР (мобилни - 17 - робот) представља наредни корак у обезбеђивању једноставније и ефикасније размене информација (нпр. погледати резултате објављене у [183]). Овај корак остваривања комуникације је у потпуној сагласности са основном поставком интелигентних технолошких система. У наредном периоду се очекује интензиван развој у циљу обједињавања најбољих особина стационарних индустријских робота (серијске или паралелне структуре) и индустријских мобилних робота. Ова синергија би омогућила значајне уштеде и обезбедила неке нове способности. Да би се уопште размишљало о овим напредним корацима неопходно је успоставити основу, чији један мањи део се анализира у оквиру ове дисертације. Померање истраживачког фокуса доминантне парадигме намеће и нове идеје примене развијене технологије. Унутрашњи транспорт материјала, сировина, полуфабриката и готових делова представља један од домена примене нових парадигми насталих у оквиру развоја роботике као научно-техничке дисциплине. „Узми и понеси” парадигма технолошког развоја може релативно једноставно да се „повеже” са транспортним задацима у оквиру технолошког окружења. „Узми и понеси” технолошки задатак подразумева следеће способности мобилног робота:  мобилни робот у сваком тренутку зна свој положај и положај објеката у радном окружењу у односу на произвољно изабрани спољашњи координатни систем;  аквизицијом података од сензора, накнадним процесирањем и интерпретацијом, мобилни робот применом одговарајућег математичког алгоритма може да детектује и препозна карактеристичне објекте;  у сваком тренутку мобилни робот може да, на основу знања о сопственом положају и положају карактеристичних објеката у - 18 - окружењу, самостално дефинише путању кретања и спроведе планирано кретање у складу са задатим технолошким задатком;  итеративно понављање поменутих способности се подразумева. 2.3. Унутрашњи транспорт у технолошким системима 2.3.1. Унутрашњи транспорт у технолошком окружењу – основе Унутрашњи транспорт материјала [63] дефинисан је као „кретање, складиштење, заштита и управљање материјалом у току процеса производње”. Овај процес мора да буде обављен безбедно, ефикасно, економично, прецизно и у дефинисаним временским роковима, а да током процеса не дође до оштећења материјала (делова) у било ком погледу [12,128,197]. Наводи се и да су трошкови управљања материјалом реда величине 20-25% укупне цене рада радника што потврђује значај проблема унутрашњег транспорта [63]. У том смислу, у овој дисертацији је посебан акценат дат унутрашњем транспорту материјала, као једној од интегралних компонената постављеног проблема и примени индустријских мобилних робота у ове сврхе. Унутрашњи транспорт материјала у оквиру производног окружења се обавља помоћу (слика 2.2):  Виљушкара – користе се за транспорт сировина, полуфабриката и палетизираних делова између међускладишта; за погон се користе мотори са унутрашњим сагоревањем или електрични мотори;  Ручног виљушкара – користе се за транспорт лакших и мање кабастих палета на релативно кратким растојањима; - 19 -  Линијских транспортера – користе се за транспорт великог броја обрадака (или готових делова) у кратком временском интервалу у циљу обављања технолошких операција (у појединим случајевима и међутранспорт обрадака представља технолошку операцију [8]);  Аутоматски вођених робоколица (АВР) (енг. Automated Guided Vehicles- AGV) - као и транспорт уз помоћ виљушкара, и АВР транспорт је намењен за транспорт сировина, полуфабриката материјала или палетизираних производа између одговарајућих међускладишта; за разлику од виљушкара за транспорт применом АВР није потребан оператер за управљање; могуће је имати једног оператера који надгледа више АВР, што представља њихову посебну предност. а) б) в) г) Слика 2.2 Средства за обављање унутрашњег транспорта: виљушкар (а), линијски транспортер (б), ручни виљушкар (в) и аутоматски вођена робоколица (г). - 20 - Транспорт применом АВР је у фокусу ове дисертације с обзиром на њену основну тематику. Модерно схватање унутрашњег транспорта на бази аутоматски вођених робоколица сврстава овај вид транспорта у област мобилних робота, с обзиром на то да се тежи ка томе да АВР имају способност прикупљања и процесирања података, оцене стања, планирање на основу прикупљених информација и деловање [94,107,191]. Конвенционални вид унутрашњег транспорта, базиран на АВР, одвија се у оквиру технолошких система коришћењем додатне транспортне инфраструктуре (специјална инфраструктура за простирање магнетног или електричног сигнала, а у последње време и бежична комуникационо- информациона технологија), која служи за размену информација са централном управљачком јединицом. Ова јединица надгледа функционисање транспортног подсистема и дефинише наредне транспортне задатке у складу са технолошким процесом и оценом трајања технолошких операција. Конвенционална транспортна решења на бази АВР нису флексибилна у погледу промене положаја транспортних чворова (машина алатки, међускладишта, итд.). Стога, неопходно је развити видове унутрашњег транспорта који не зависе од додатне транспортне инфраструктуре и приоритетне информације о положају транспортних чворова у толикој мери. - 21 - 2.3.2. Унутрашњи транспорт на бази аутоматски вођених робоколица – критичка анализа стања у области Први покушаји решавања проблема унутрашњег транспорта у оквиру одговарајућег производног окружења везују се за шведског произвођача аутомобила „ВОЛВО” чији су инжењери 1973. године [63] покушали да иновативним приступом реше проблем унутрашњег транспорта у једном од њихових производних погона. Том приликом шведски стручњаци развили су и имплементирали концепт вођених робоколица чија се основна идеја огледала у унапређењу постојећег решења унутрашњег транспорта готових делова, склопова или подсклопова у виду линијских транспортера („конвејера”). Управљање вођеним робоколицима остварено је помоћу магнетне траке (жице) која је била уграђена у саме темеље (у бетонску плочу основе пода производног погона) и помоћу које су информације биле примане од централног управљачког рачунара о месту преузимања терета и месту испоруке, као и брзини кретања вођених робоколица. Занимљиво је да је решење унутрашњег транспорта развијено за интерне потребе једног индустријског гиганта временом постало прихваћено од већине као вид обављања транспорта. Транспорт на бази аутоматски вођених робоколица (АВР) већ дуги низ година представља плодну област истраживања пре свега због изразито блиске и чврсте истраживачке везе са роботиком. Претходни резултати у области показују да АВР могу бити успешно примењена за потребе унутрашњег транспорта у лукама [51,52], индустријско-производним окружењима [119,120], па чак и у болницама [179]. Први истраживачки резултати били су базирани на фиксним путањама које су одређене специјалном транспортном инфраструктуром - 22 - [1,29,30,31,53,96,151,181,210]. Један од првих истраживачких резултата у коме се директно анализира достигнути степен развој АВР и врши поређење са мобилним роботима је приказан у [6], а први резултати у [74,75,76]. С обзиром на сталан развој у области, примена сензора је неопходна у циљу обезбеђивања одговарајуће информације о стању радног окружења. Референтни резултати у области развоја унутрашњег транспорта на бази робоколица [13,59,60,93,115,119,120,149,152,161,180] показују да је модерни приступ базиран на примени сензорских подсистема за прикупљање информација из окружења. „Стандардни” приступ навигацији АВР у технолошком окружењу углавном се базира на примени вештачких маркера који служе као референтни објекти за оцену положаја [155]. Напредак технологије је условио и нове видове оваквог приступа који користе бежичну технологију али са истим крајњим циљем [115]. Од посебне важности је интеграција система препознавања на бази камере са АВР. Један од првих резултата је дат у [59,60] где се приказује АВР на бази типичног виљушкара за потребе унутрашњег транспорта, који врши аквизицију сензорске информације применом система препознавања коришћењем камере. Након приказа овог резултата, камера је примењена као основни сензор за аквизицију информације из окружења у оквиру [13,93,152,161,180]. Напредак оваквог вида употребе камере довео је до примене система препознавања на АВР која обављају унутрашњи транспорт у окружењима штетним по оператера [149]. На овај начин је ефектно демонстрирана применљивост камере у индустријским постројењима за потребе експлоатације АВР [129]. Велики број претходних истраживачких резултата посвећен је проблему одређивања оптималне путање кретања [119]. Са повећањем броја инсталираних АВР, проблем рутирања је досегао у фокус истраживања [150]. Последњих година је приметна тенденција симултаног - 23 - терминирања машина алатки и АВР на бази дисјунктивних графова и генетичких алгоритама [103,143,144,145,147], декомпозиције полазног проблема [41,138] или специјално развијеног приступа [4]. Са порастом броја успешно инсталираних АВР у производним и индустријским окружењима појавило се питање оцене успешности примене оваквог вида унутрашњег транспорта. Наиме, примена АВР подразумева и значајна финансијска улагања у опрему и адаптацију постојећег окружења. У том смислу, на основу дугогодишњег истраживања [21,22] у [23] се може видети како спровести анализу оцене ефикасности развијеног транспортног решења. На основу те методологије у [119,120] је оцењена успешност примене развијеног решења унутрашњег транспорта на бази АВР. С друге стране, требало би нагласити да се поменута методологија, развијена за АВР, не разликује од начина оцене ефикасности мобилних робота. Концепти примене система унутрашњег транспорта са два и више АВР анализирани су у [22,205]. Интензиван развој у области пројектовања и производње аутоматски вођених робоколица резултирао је унапређењем основног концепта у смислу обезбеђивања специфичних способности које иницијално нису биле планиране. Једно од првих побољшања полазног концепта унутрашњег транспорта представља имплементацију сензора на већ постојеће платформе у циљу обезбеђивања повратне информације о стању околине. Међутим, увођење сензорске информације претпоставља постојање посебног подсистема у оквиру централног управљачког система чија је основна улога очитавање и тумачење повратне информације од сензора. Услед непостојања способности одлучивања о будућим акцијама система или појединачних робоколица, централна управљачка јединица је аутоматски заустављала одговарајућа вођена робоколица испред којих се појавила препрека. Тек након укљанања препреке, процес транспорта се настављао. Производни радници били су задужени за отклањање ових - 24 - проблема, па је брзина повратка система у радни режим директно зависила од благовремене реакције радника. Претходна констатација односи се и на систем у коме је људски оператер управљао системом вођених робоколица али и на систем у коме је централни рачунар контролисао рад система вођених робоколица. Основне мане овог решења унутрашњег транспорта у оквиру технолошког система су:  Немогућност адекватне и правовремене интерпретације сензорске информације;  Немогућност промене путање кретања;  Неспособност самосталног доношења одлука;  Недостатак флексибилности. Резултат уочавања недостатака овог концепта је и разлог зашто се у наредном периоду посегло за напредним решењем унутрашњег транспорта. У овој дисертацији су анализирани неки аспекти примене модерних АВР, односно интелигентних мобилних робота у оквиру тенолошког окружења за потребе унутрашњег транспорта. У складу са изразито динамичким карактером производних погона, неопходно је имплементирати систем унутрашњег транспорта који је способан да разуме и препозна стање окружења система и да на основу тако одређеног стања самостално донесе одлуку о будућим акцијама. Дакле, да би успешно и ефикасно могао да решава проблеме у реалном времену и реалном окружењу, недвосмислено следи да систем унутрашњег транспорта мора да буде интелигентан. У том смислу, у наставку се наводе основне карактеристике које одређују интелигентни систем [12,58,192,197], а које и интелигентни систем унутрашњег транспорта треба да поседује: - 25 -  Способност аквизиције података/сензорске информације,  Способност расуђивања,  Способност аквизиције знања,  Способност учења,  Способност извођења закључака,  Способност самосталног доношења одлука,  Способност спровођења акција. Поменуте особине су у складу са основним способностима које мобилни робот у 21. веку мора да поседује, а које се поменуте у уводном делу приликом појашњавања промене доминантне парадигме развоја. Мотивација за рад на спроведеном истраживању је у остваривању овог инжењерског изазова чијим решавањем би се обезбедила континуирана примена мобилних робота у оквиру технолошког окружења. - 26 - 3. ТЕОРИЈСКЕ ОСНОВЕ У овом поглављу су дате основне информације у вези теоријских концепата који су коришћени током истраживања. Основна идеја овог поглавља није у повећавању обима докторске дисертације, већ жеља да читалац има бољи преглед и увид у коришћене теоријске концепте. 3.1. Индустријски мобилни роботи Одређивање позиције и оријентације мобилног робота у односу на неки изабрани спољашњи координатни систем назива се локализација. Аквизицијом и процесирањем информација од сензора мобилни робот треба да одреди свој положај. Услед грешака у управљачком и сензорском систему мобилног робота неизбежна је примена метода теорије оцена (оцена) током самог процеса [17,83,141,165,185]. Примена метода теорије оцена омогућавају мобилном роботу да у сваком тренутку у току експлоатације зна одговор на основна питања [134,163]:  Где сам?  Где сам био?  Где идем, где ми је циљ?  Како да дођем до циља? Прва два питања потпадају под проблем локализације док се друга два односе на планирање путање мобилног робота и акција у општем смислу. Важно је нагласити да ће се у тексту у наредним поглављима користити синоним за појам локализације - оцењивање положаја мобилног робота. У наставку је ближе појашњен појам стања мобилног робота и окружења. - 27 - 3.1.1. Дефиниција стања мобилног робота Стање је скуп свих акција робота и окружења која могу да интерактивно утичу на будућа понашања мобилног робота у погледу предузетих акција. Другим речима, стање могу чинити компоненте које су искључиво резултат акција робота али и резултат интеракције мобилни робот - окружење. У претходној дефиницији стања уочава се да и окружење у општем случају може бити променљиво и непредвидиво, чиме и оно испољава утицај на акције и стање мобилног робота. У том смислу, окружење се може класификовати на:  Динамичко окружење (позиција и оријентација објеката у окружењу се мењају током времена, нпр. кретање људи у околини робота, као и кретање других робота) и  Статичко окружење (мобилни робот је једини покретни објекат у радном окружењу) У производном окружењу могуће је идентификовати две врсте покретних објеката: мобилни робот(и) и производни радници. Међутим, да би развили алгоритме који се разматрају у оквиру ове дисертације, усвојена је претпоставка да у радном окружењу постоји један и само један мобилни робот. Другим речима, усвојена је претпоставка о статичком карактеру радног окружења. Ова претпоставка утиче на основне теоријске поставке развијених алгоритама, али би требало нагласити да постоје развијени алгоритми који релативно једноставно могу да филтрирају информације о постајању покретних објеката. Применом тих алгоритама сви алгоритми оцењивања положаја мобилног робота и карактеристичних објеката у окружењу, који су развијени у оквиру спроведених истраживања, остају валидни и за општији проблем. Стање мобилног робота се обележава са x док се стање у тренутку k обележава са kx . Вектор стања је n-димензиони вектор чије компоненте - 28 - једнозначно дефинишу стање система. Основне величине које могу представљати елементе вектора стања x су:  Положај (позиција и оријентација) робота у односу на неки спољашњи координатни систем референције;  Брзина кретања робота;  Положај и брзина кретања покретних објеката у радном окружењу;  Положај карактеристчних објеката у окружењу која се могу употребити у процесу локализације мобилног робота;  Параметри поузданости сензора. На основу претходних ставова може се видети да променљиве величине које могу да представљају елементе вектора стања варирају у зависности од специфичности проблема. Оваква интерпретација компонената стања мобилног робота се не разликује од дефиниције стања у општој теоријској поставци теорије оцена (естимације). Овај закључак о компонентама вектора стања искоришћен је за увођење параметара вештачке неуронске мреже у оквиру вектора стања у наредним поглављима. Коначно (потпуно) стање представља оно стање на основу кога је могуће извршити предикцију будућих догађаја. Сви догађаји који су се десили у прошлости представљени су вектором стања , 1,...,k n n m− =x за где је nпосматрано стање у прошлости, а m укупан број стања која су претходила садашњем тренутку. Иако су претходна стања позната, она не обезбеђују никакву додатну информацију о садашњем стању нити о будућим догађајима. Ово је основни разлог зашто се усваја претпоставка Маркова о независности будућности од прошлости уколико познајемо садашњост. Будућност јесте стохастична и непредвидива, а вектори стања који претходе садашњости не пружају никакву информацију о будућности или о предикцији будућности која би се могла корисно употребити. На - 29 - основу дефинисаног комплетног стања није тешко интуитивно закључити да садашњост раздваја прошлост од будућности. Математичка формулација ове чињенице је представљена ланцима Маркова који се заснивају на претпоставци Маркова и пружају математичку подлогу за дефинисано потпуно стање: 0: 1 1( | ) ( | )k k k kp p− −=x x x x (3.1) У претходној једнакости kx , 0: 1k−x и 1k−x представљају стање мобилног робота у тренутку k , скуп свих стања од 0 : 1k− и стање у тренутку 1k− респективно. Величина 1( | )k kp −x x се назива прелазни модел и дефинише како систем из стања 1k−x прелази у стање kx . У даљој анализи приказан је начин на који се одвија интеракција између мобилног робота и радног окружења. 3.1.2. Интеракција мобилног робота са радним окружењем Интеракција мобилног робота са радним окружењем одвија се на два нивоа: 1) Утицај робота на окружење: све акције које робот предузима ради кретања кроз окружење називају се управљања. 2) Утицај окружења на робот: утицај окружења се види путем информација од сензора (мерења); сва мерења представљају стање окружења тренутак након њихове интерпретације, што значи да сва мерења пружају информације о стању окружења у непосредној (али довољно блиској) прошлости. - 30 - Сходно уведеним нивоима интеракције мобилног робота и окружења, могуће је дефинисати скуп прикупљених мерења и скуп спроведених управљања који настају током експлоатације:  Скуп прикупљених мерења (информације о мерењу) – настале као резултат сензорских мерења и представљају повратну информацију окружења. Претпоставља се да се у сваком временском тренутку прима једно и само једно мерење. У том случају, вектор мерења се може дефинисати као 1 2 1 1 1 2: 1 2 , , , ...,k k k k k k+ +=z z z z z (3.2) где 1k и 2k , ( )1 2k k< , представљају тренутке када се мерења прикупљају.  Скуп спроведених управљања (информације о управљању)– пружају сазнање о промени стања робота у окружењу. Типичан пример управљања у области мобилне роботике је везан за управљање брзином. Ако се усвоји одређена вредност брзине кретања мобилног робота кроз окружење као и интервал трајања, могуће је одредити стање робота након извршења дате команде. Алтернативни начин прикупљања информација о управљању је употреба енкодера. Иако енкодери представљају сензоре који мере промене везане за ротацију точкова мобилног робота, те би самим тим требало да буду сврстани под мерења, ипак се могу класификовати као управљања, с обзиром на то да директно мере ефекат управљања. Вектор управљања дат је следећим низом: 1 2 1 1 1 2: 1 2 , , , ...,k k k k k k+ +=u u u u u (3.3) Променљива ku увек представља промену стања у временском интервалу ( 1, ]k k− . Другим речима, управљање ku је управљање које је довело до транзиције стања 1k−x у стање kx . Као и код - 31 - информација о мерењу, постоји само једно управљање за сваки временски тренутак k . Из претходног излагања се може закључити да постоји једна основна разлика између ове две врсте скупова. Информације о мерењу доприносе увећавању знања које робот има о околини, за разлику од информације о управљању које смањују знање робота о радном окружењу. 3.1.3. Поставка проблема Промена вектора стања система и мерења је одређена законима вероватноће. У општем случају систем „долази” у стање kx након стохастичких процеса који доводе до транзиције 1k−x у kx . Стање kx може бити одређено уколико се одреде утицаји које сва претходна стања, сва претходна мерења и сва претходна управљања имају на дефинисање вектора стања kx , односно потребно је да се у потпуности једнозначно одреди расподела − −0: 1 1: 1 1:( | , , )k k k kp x x z u . Међутим, уколико се усвоји претпоставка Маркова о потпуности стања и независности будућности од прошлости уколико имамо информације о садашњости, претходна релација се може написати у скраћеном облику: − − −=0: 1 1: 1 1: 1( | , , ) ( | , )k k k k k k kp px x z u x x u (3.4) Претходна једначина се назива једначина условне независности. На основу претпоставке Маркова, стање 1k−x представља потпуну и довољну информацију на основу које се може донети ваљана предикција будућности. Стање 1k−x обухвата утицај свих претходних мерења 1: 1k−z и управљања 1: 1k−u . Једина величина која недостаје у циљу ваљаног дефинисања стања kx је управљање ku у тренутку k . Другим речима, одређене величине су независне од неких других величина ако у - 32 - потпуности познајемо вредности треће групе величина које се називају условне променљиве. Поред пробабилистичког модела вектора стања могуће је дефинисати и пробабилистички модел мерења помоћу следеће једнакости: 0: 1: 1 1:( | , , ) ( | )k k k k k kp p− =z x z u z x (3.5) На основу претпоставке Маркова може се видети да актуелно мерење kz у тренутку k зависи само од вектора тренутног стања kx , и да је потпуно независно од претходних стања 0: 1k−x , претходних мерења 1: 1k−z и од управљања 1:ku . Величина 1( | , )k k kp −x x u представља модел промене стања и дефинише промену стања система током времена у функцији управљања ku . С обзиром на то да је окружење у коме робот обавља задатке за које је пројектован стохастично, модел промене стања представља густину расподеле дуж неког интервала промене тражене величине. Сходно претходном, модел промене стања није детерминистичка функција која одређује једну вредност тражене непознате величине, већ је заправо расподела у неком интервалу промене. Поред модела промене стања могуће је увести и термин за величину ( | )k kp z x - модел мерења. Модел промене стања система и модел мерења у потпуности одређују динамички стохастички систем робота и окружења у коме се налази. Вектор стања kx стохастички зависи од стања система 1k−x у тренутку 1k− , као и од управљања ku (управљање које је довело систем из стања 1k−x у стање kx ). С друге стране, мерење kz стохастички зависи од стања система у тренутку k . Овакав модел назива се скривени модел Маркова (hidden Markov model) или општије Бајесове динамичке мреже (dynamic Bayes network). Скривени модел Маркова је коначни аутомат са датом вероватноћом промене сваког стања и састоји се од два стохастичка - 33 - процеса, од којих један дефинише временску променљивост, а други модел мерења. 3.1.4. Модели промене стања мобилног робота – модели кретања У најопштијој формулацији кинематика може бити дефинисана као геометрија кретања. Применом основног апарата математичке анализе успостављају се зависности између елементарних кинематичких величина. Претпоставља се да је мобилни робот из једног положаја прешао у неки други положај, а приликом анализе тог кретања нас не занимају силе и моменти који су произвели кретање нити силе и моменти који се супротстављају самом кретању. У фокусу кинематичке анализе је само кретање, а узрок и последице су ирелевантни. У референци [163] представљене су основе теорије и основни кинематички модели робота који своје кретање остварују помоћу точкова, док за ходајуће машине комплетна кинематичка анализе се може наћи у [170]. Резултати симулације кретања мобилног робота који контакт са подлогом остварује преко ногу се могу видети у [194,199,200]. У овом раду, искључиво ће бити разматрана кинематика мобилног робота који контакт са подлогом остварују помоћу точкова. Кинематички модели мобилних робота који своје кретање остварују помоћу точкова су детерминистичке природе. У реалним проблемима детерминистички модели веома брзо покажу сва своја ограничења, па је то један од основних разлога примене стохастичких метода. На овај начин се добија на општости модела и могућности примене у оквиру стварног робота у реалном времену и окружењу. У општем случају, компоненте вектора стања роботског система чине спољашње координате: - 34 - [ ]Tk x y z θ ψ φ=x (3.6) где су x, y и z – компоненте вектора које дефинишу позицију мобилног робота, а θ ψ, и φ углови који одређују оријентацију мобилног робота у односу на неки спољашњи координатни систем. У овом раду, кретање робота ће бити моделирано као равно кретање, па је сходно броју степени слободе крутог тела у равни довољно дефинисати вектор стања чије су компоненте (слика 3.1): [ ]Tk x y θ=x (3.7) Слика 3.1 Дефиниција степени слободе мобилног робота у равни x-y. Модел промене стања је представљен следећом релацијом: 1( | , )k k kp −x x u (3.8) Иако је термин модел промене стања погоднији, није грешка ни да се назове модел кретања. Мобилни робот из стања које је дефинисано вектором 1k−x у тренутку 1k− управљањем ku прелази у стање које је одређено вектором kx у тренутку k . С обзиром на то да мобилни робот мора да промени позицију и у општем случају и оријентацију да би променио стање, сасвим је јасно да то може бити остварено једино кретањем. То је и основни разлог увођења термина модел кретања. - 35 - Могуће је дефинисати два основна модела кретања мобилног робота:  Модел кретања на основу брзина (Брзински модел кретања)– у овом моделу транслаторна и угаона брзина кретања мобилног робота представљају управљања u која изазивају промену позиције и оријентације током експлоатације. Основна претпоставка овог модела кретања је да се транслаторна и угаона брзина кретања могу контролисати, односно да се њима може директно управљати.  Модел кретања на основу пређеног пута (Одометрија) – у овом моделу управљање u је дефинисано пређеним путем точкова мобилног робота током тачно дефинисаног временског интервала. На основу очитавања података са енкодера могу се одредити параметри пређеног пута неопходни за постављање модела. Посматрано са гледишта управљања роботом пређени пут точкова потпада под мерења (сензорске информације). Ипак, у овом моделу кретања пређени пут је усвојен за управљачку величину. Општи кинематички модел кретања мобилног робота базиран на стохастици не постоји и у суштини за сваки појединачни проблем потребно је извршити анализу, на чијим ће се резултатима формирати и сам модел. Основна поставка кинематичког модела кретања зависи како од основне кинематичке конфигурације мобилног робота (број точкова, укупни број степени слободе, број степени слободе којима се може управљати итд. ), тако и од карактеристика окружења у коме робот остварује кретање, управљачког алгоритма, итд. Самим тим модел кретања се усваја и развија зависно од специфичности проблема. - 36 - 3.1.5. Модел кретања на основу пређеног пута Сваки модел који се заснива на одометрији користи искључиво релативне координате, односно пређени пут се мери помоћу енкодера од неког положаја у коме је мобилни робот био у тренутку 1k− до неког положаја у тренутку k . У овом делу поглавља приказан је један једноставан модел кретања изведен на основу пређеног пута мобилног робота. Модел може да се примени искључиво на оне мобилне роботе који имају два погонска точка која се могу окретати потпуно независно један од другог (Differential Drive Mobile Robots, енг.). Другим речима, управљањем смером обртања точкова контролише се скретање мобилног робота. На „осовинама” точкова су постављени инкрементални енкодери који мере обртаје. Анализа се односи на раванско кретање мобилног робота чији је вектор стања дат као: [ ]Tx y θ=x (3.9) Одређивање позиције и оријентације за овакав тип мобилног робота, своди се на интеграцију података очитаних са енкодера који се налазе на точковима у сваком временском интервалу t∆ : [ ] cos( /2) ; sin( /2) ; T d l x y s s x s y s b θ θ θ θ θ θ ∆ = ∆ ∆ ∆ ∆ −∆ ∆ =∆ +∆ ∆ =∆ +∆ ∆ = x (3.10) где су ),( ld ss ∆∆ - пређени пут десног и левог погонског точка респективно, ),,( θ∆∆∆ yx - величине које дефинишу путању мобилног робота у току интервала t∆ , b - размак између точкова. Предикција положаја мобилног робота након извршеног управљања је: - 37 - 1 1 1 cos( /2) sin( /2) cos( ) 2 2 sin( ) 2 2 k k k d l d l d l d l k d l x s y s s s s s bx s s s s y b s s b θ θ θ θ θ θ θ θ θ − − −    ∆ +∆        = +∆ = + ∆ +∆       ∆     ∆ +∆ ∆ −∆  +       ∆ +∆ ∆ −∆  = + +         ∆ −∆      x x x (3.11) што представља основни кинематички модел кретања мобилног робота изведен на основу пређеног пута погонских точкова. Из горње једнакости може се видети које величине утичу на промену, али и на могућност израчунавања позиције и оријентације. 3.1.6. Брзински модел кретања За разлику од модела кретања изведеног на основу пређеног пута, брзински модел полази од претпоставке да се транслаторном и угаоном брзином мобилног робота може директно управљати. Вектор управљања u је дефинисан на следећи начин: [ ]Tk k kv ω=u (3.12) где су kv - транслаторна брзина кретања центра маса, kω - угаона брзина мобилног робота. Кинематички модел у континуалном облику, приказан на слици 3.2, дат је преко: - 38 - 0 0 0 0 0 0 1 ( ) cos( ( )) 2( ) 1 ( ) ( ) sin( ( )) 2 ( ) 1 ( ) t d d l l t d d l l t d d l l x R R t dt x t y t y R R t dt t R R dt d ω ω θ ω ω θ θ θ ω ω    + +          = + +          + −   ∫ ∫ ∫ (3.13) Слика 3.2 Кинематички модел кретања мобилног робота у континуалном облику. где су: 0x - х координата тежишта мобилног робота у тренутку t=0, 0y - у координата тежишта мобилног робота у тренутку t=0, 0θ - Угао ротације мобилног робота у тренутку t=0, Rl- Полупречник левог точка, Rd- Полупречник десног точка, dω - Угаона брзина десног точка, lω - Угаона брзина левог точка, b- Размак између точкова. Основни кинематички модел дат у дискретном облику је: - 39 - ( ) ( 1) ( ) cos( ( 1)) ( ) ( 1) ( ) sin( ( 1)) ( ) ( 1) ( ) x k x k v k t k y k y k v k t k k k k t θ θ θ θ ω    − + ∆ −       = − + ∆ −       − + ∆    (3.14) где су )(kx - х координата мобилног робота у тренутку k, ( )y k - у координата мобилног робота у тренутку k, )(kθ - Угао ротације мобилног робота у тренутку k, )(kω ( )d d l lR R b ω ω− = , θ∆ tk ∆= )(ω прираштај угла θ . Коришћењем слике 3.2 могуће је успоставити основне везе неопходне за извођење горњих релација. Важно је напоменути да t∆ представља временски интервал трајања кретања из положаја 1k− у положај k . 3.1.7. Модел перцепције Основна подела сензора у роботици односи се на физичке величине које је потребно идентификовати. У том смислу, сензори се деле на:  Унутрашње – сензори који мере величине унутар самог мобилног робота (број обртаја електро мотора, енергетске резерве итд.)  Спољашње – мере величине у односу на окружење у коме се мобилни робот креће (давачи пута, тактилни сензори итд.) Следећа подела коју можемо направити односи се на енергетски утицај окружења на систем и обрнуто. Можемо дефинисати следеће сензоре:  Пасивне сензоре – врше мерење енергетског утицаја окружења на систем мобилног робота (микрофони, камере)  Активне сензоре – емитују енергију у окружење и врше мерење одговора окружења на енергетски стимуланс (ласер, ултразвук) - 40 - Детерминсистичким приступом моделирању перцепције мобилног робота не могу се потпуно обухватити најважније карактеристике окружења, као ни грешке у мерењу које су неизбежне. Уколико се управљачки алгоритам мобилног робота базира на детерминистичкој функцији перцепције окружења облика ( )k k k=z z x и ако се полази од претпоставке апсолутне тачности сензора на основу чијег мерења ће доћи до акције/реакције актуатора, комплетан модел ће веома брзо у експлоатацији доживети „гомилање” грешака. Оваква ситуација резултира поновном калибрацијом сензора и модификацијом параметара у управљачком софтверу, а све то са собом повлачи и прекид експлоатације мобилног робота. Наравно, овај процес би морао да се поновља довољан број пута што поприлично снижава обим обављеног задатка услед чега се и цена експлоатације знатно повећава. Описана ситуација представља основни разлог увођења пробабилистичке формулације перцепције мобилног робота усвајањем следећег модела сензора (перцепције) ( )|k kp z x . Моделирање перцепције мобилног робота применом метода математичке вероватноће резултира робуснијим системом. На овај начин се може адекватније одговорити захтевима у експлоатацији и карактеристикама окружења. У истраживањима спроведеним у оквиру ове дисертације развијена су три модела перцепције мобилног робота: 1) Током развоја симулационог модела кретања мобилног робота развијен је модел перцепције за даваче растојања (ултразвучни сензори или ласерски давачи) – пето поглавље; 2) За спровођење експеримента на LEGO Mindstorms NXT мобилном роботу развијен је сензорски модел за оптички сензор – седмо поглавље; - 41 - 3) За експериментални процес на Khepera мобилном роботу развијен је сензорски модел базиран на калибрисаној камери – шесто поглавље. Основни приступ моделирању перцепције мобилног робота полази од претпоставке да се у окружењу налази велики број карактеристичних објеката који се релативно једноставно могу идентификовати. Овај приступ подразумева да се идентификација карактеристичних објеката у окружењу спроводи у on-line режиму. Апстрактност синтагме карактеристични објекат може бити појашњена карактеризацијом појединачних објеката и њиховом класификацијом. Свако окружење се може моделирати увођењем карактеристичних облика у анализу. За потребе експлоатације робота унутар неког затвореног простора (производно окружење, складиште, магацин) могу се уочити и дефинисати карактеристични објекти као што су:  Објекти ниже класе апстракције: Права линија – настаје као пресек једног елемента окружења са другим елементом (нпр. пресек зидова са подом или плафоном просторије формира праву линију), Угаони елемент – настаје као пресек две или више правих линија,  Објекти више класе апстракције: врата, праг, прозор , итд. Из претходног излагања није тешко закључити да свако окружење има своје карактеристичне објекте и да се ти карактеристични објекти, у општем случају, не могу применити у неком другом окружењу са потпуно другачијим карактеристикама. Број уочених и дефинисаних карактеристичних облика у окружењу може бити изузетно велики и на пројектанту је да их успешно препозна и математички дефинише. Основна предност која се остварује применом оваквог приступа је повећање брзине идентификације и препознавања карактеристика радног - 42 - окружења и смањење меморијских капацитета неопходних за успешно функционисање управљачког подсистема. У оквиру спроведеног истраживања коришћен је модел перцепције базиран на идентификацији карактеристичних објеката у окружењу и то искључиво за мобилне роботе који се крећу у затвореним просторима. Модел перцепције базиран на идентификацији карактеристичних објеката Основна идеја која се налази у темељу овог модела је претпоставка да се за сваки објекат у окружењу мобилног робота који је идентификован сензорским подсистемом, може одредити растојање и оријентација објекта у односу на локални координатни систем робота. Такође, претпоставља се да робот може да идентификује сваку класу карактеристичних објеката помоћу величине која се назива параметар идентификације. У општем случају параметар идентификације може бити скалар, вектор или матрица. Параметром идентификације се може дефинисати боја објекта, висина, ширина, дебљина итд. Функција идентификације карактеристичних објеката је дата као: }...,,{},...,{)( 2 2 2 1 1 1 21                               == n t n t n t t t t t t t n tttt s r s r s r fffzf φφφ (3.15) где су itr и i tφ растојање и оријентација објекта респективно у односу на мобилни робот, док је n број карактеристичних објеката у једном мерењу и у општем случају је променљива величина. Ако са mjx и mjy обележимо х и у координате положаја ј-тог карактеристичног објекта онда ће сензорски модел бити:             +             −−− −+− =           2 2 2 ),(2tan )()( 22 s r j jxjy jyjx n t n t n t s xmyma ymxm s r σ φσ σ ε ε ε θφ (3.16) - 43 - где се за грешке (шумове) 2 r σ ε , 2φσ ε и 2 s σ ε претпоставља да подлежу нормалној густини расподеле, као и да су међусобно независне. 3.2. Калманов филтар С обзиром на то да Калманов филтар представља „стандардни” алгоритам естимације стохастичких величина у уводном делу ће бити појашњене само основне теоријске поставке алгоритма док се за остале информације читалац упућује на референтну литературу [17,83, 87,141,165,185]. Калманов филтар је линеарни рекурзивни алгоритам оцењивања дефинисан у дискретном времену. Нека је прелазни модел произвољног система: 1k k k k k k kx F x B u G v−= + + (3.17) 1kx − је стање система у тренутку 1k − , ku је управљање, kv је адитивни шум кретања, kB и kG су матрица управљања и матрица прелаза; kF је матрица промене (прелаза) система, а kx је стање система у наредном тренутку k . Опсервациони модел (сензорски модел) је дефинисан следећом једначином: k k k kz H x w= + (3.18) где је са kz означено мерење (сензорска информација), kx је стање у система у тренутку k , kH је опсервациона матрица и kw је шум мерења. Претпоставља се да су шумови kv и kw некорелисани, да подлежу Гаусовј расподели и да имају нулто математичко очекивање: - 44 - [ ] [ ] , , k k T T i j ij i i j ij i T i j Е Е k E E E i ј v w 0 v v Q w w R v w 0 δ δ = = ∀    = =      = ∀  (3.19) Калманов филтар минимизује средњу квадратну грешку оцене за позната све мерења z : ( )( ) | | | | 1ˆ ˆ ˆ ˆargmin | ,..., n i j T i j i i j i i j jE x x x x x x z z ∈   = − −    (3.20) У том случају, условна густина расподеле је дефинисана условним математичким очекивањем: | 1 1: ˆ | ,..., |i j i j i jE Ex x z z x z        (3.21) и условном коваријансом ( )( )| | | 1:ˆ ˆ |Ti j i i j i i j jEP x x x x z − −   (3.22) 1: jz означава сва мерења прикупљена до произвољног тренутка j . Оцена стања система у тренутку k уколико за познате све информације закључно са тренутком k обележава се |ˆ k kx . С друге стране, оцена стања система у тренутку k уколико за познате све информације закључно са тренутком 1k − обележаваће се са | 1ˆ k kx − ; | 1ˆ k kx − представља предикцију стања система пре него што је прикупљено последње мерење kz . На крају, најбоља оцена (најбоља у смислу оптималне оцене која минимизује средњу квадратну грешку) у тренутку 1k − закључно са мерењима очитаним у тренутку 1k − је 1| 1ˆ k kx − − . Предикција стања система је дефинисана условним математичим очекивањем и условном коваријансом: - 45 - [ ] ( )( ) | 1 1: 1 1| 1 | 1 | 1 | 1 1: 1 1| 1 ˆ ˆ| ˆ ˆ | k k k k k k k k k T k k k k k k k k k T T k k k k k k k E E x x z F x B u P x x x x z F P F G Q G − − − − − − − − − − = = +   = − − =   + (3.23) Као што се може видети, последње прикупљено мерење kz није узето у обзир. Калманов филтар је линеарни рекурзивни естиматор. Рекурзивни означава да полазећи од тренутка 1k − , у коме знамо најбољу оцену стања система дату са 1| 1ˆ k kx − − , у следећем тренутку k користимо 1| 1ˆ k kx − − да израчунамо нашу најбољу предикцију стања система | 1ˆ k kx − . Након тога, у истом тренутку k одређујемо |ˆ k kx на основу предикције | 1ˆ k kx − . Линеарни естиматор полази од следеће претпоставке 1 2 | | 1 ˆ ˆ k k k k k k kx W x W z−= + (3.24) Односно, претпоставља се да је најбоља оцена |ˆ k kx линеарна комбинација предикције стања система | 1ˆ k kx − и последњег мерења kz , где матрице 1 kW и 2 kW представљају тежинске матрице. Дакле, одређивање оптималног линеарног естиматора своди се на одређивање тежинских матрица 1kW и 2 kW . Да би приказали поступак одређивања тежинских матрица 1kW и 2 kW неопходно је дефинисати грешку оцене дату у следећем облику: | | ˆ k k k k kx x x= − (3.25) Условна средња грешка оцене је тада | | 1: | | 1: | | | T k k k k k k T k k k k k k k E trag E trag L x x z x x z P  = =    = =    =       (3.26) - 46 - где ( )trag ⋅ означава траг матрице. Минимизацијом средње грешке оцене, односно трага коваријансе |k kP , одређују се тежинске матрице 1 kW и 2 kW линеарне комбинације. Поступак се своди на употребу особине непристрасности одговарајућих оцена: | 1: 1| 1 1: 1 | 1 1: 1 | | | k k k k k k k k k E E E x z 0 x z 0 x z 0 − − − − −   =    =    =     (3.27) Из претходног, на крају се добија да је прва тежинска матрица 1kW дата у функцији друге тежинске матрице 2kW као 1 2 k k kW I W H= − (3.28) Даље, зависност |ˆ k kx од предикције стања | 1ˆ k kx − и последњег мерења kz своди се на следећи облик: 2 | | 1 | 1 ˆ ˆ ˆ k k k k k k k k kx x W z H x− − = + −  (3.29) Коваријанса грешке оцене |k kx је ( ) ( ) ( ) ( ) ( ) | | | 1: 2 2 | 1 | 1 1: 1 2 2 2 2 | 1 | | 2 T k k k k k k k TT k k k k k k k k k T TT T k k k k k k k k k k E E E E P x x z I W H x x z I W H W w w W I W H x w W − − − −  = =   = − − +     + −         (3.30) Под претпоставком да важи ( )| 1 | 1 | 1 | 1 ˆ ˆ ˆ T k k k T k k k k k k T k k k E E E w w R x x P x w 0 − − − −   =    =     =  (3.31) добија се матрица коваријанси оцене грешке оцене ( ) ( ) ( )2 2 2 2| | 1 T Tk k k k k k k k k k kP I W H P I W H W R W−= − − + (3.32) - 47 - Тежинска матрица 2kW одређује се минимизацијом трага коваријансе грешке оцене |k kx : ( )2 2| 12 12 | 1 | 1 2 2Tk k k k k k k k k T T k k k k k k k k k L I W H P H W R 0 W W P H H P H R − − − − ∂ = − − + = ∂  = +  (3.33) Увођењем појма иновација, која је дефинисана разликом између стварног мерења kz и предвиђеног мерења | 1ˆk k k−H x , односно: | 1 ˆ k k k k k−= −η z H x (3.34) коваријанса иновације је: ( )( )| 1 | 1 | 1 ˆ ˆ TT k k k k k k k k k k k T k k k k k E E − − −   = = − −      = + S η η z H x z H x H P H R (3.35) Комплетан рекурзивни поступак Калмановог филтра је дат у табели 3.1: Табела 3.1: Основни алгоритам Калмановог филтра. 1| 1 1| 1 | 1 1| 1 | 1 1| 1 1 | 1 | 1 | | 1 | 1 | | 1 ˆ1. _ ( , , , ) ˆ ˆ2. 3. 4. ( ) ˆ ˆ ˆ5. ( ) 6. 7. k k k k k k k k k k k k k T T k k k k k k k k k T T k k k k k k k k k k k k k k k k k k T k k k k k k k Kalmanov filtar retur − − − − − − − − − − − − − − − − = + = + = + = + − = − Aлгоритам x P u z x F x B u P F P F G Q G K P H H P H R x x K z H x P P K S K | | ˆ ,k k k kn x P Као што се може видети, оцена стања система одвија се у два корака: 1) Предикција стања и мерења (time update) 2) Корекција предикције стања (measurement update) Предикција будућег стања система се врши на основу стања система у претходном временском тренутку, док се корекција врши након увођења мерења и израчунавањем матрице Калмановог појачања. - 48 - Улазне величине у алгоритам су најбоља оцена 1| 1ˆ k k− −x са припадајућом матрицом коваријанси 1| 1k k− −P у тренутку 1k − , управљања ku и мерења kz . Излазне величине алгоритма су најбоља оцена |ˆ k kx и матрица коваријанси |k kP у тренутку k . Потребно је нагласити да је тежинска матрица 2kW одређена једначином (3.33) у табели 3.1 обележена са kK ( )2k kW K≡ . Уобичајено је да се ова матрица назива матрица појачања (Калманово појачање). kK је велико ако имамо поверења у сензоре; у том случају филтар више пажње даје мерењу током оцењивања. Уколико је kK мало, то значи да имамо недовољно поуздане сензоре и да филтар више верује полазном моделу система. Ова особина филтра је искоришћења за оцењивање параметара вештачке неуронске мреже. 3.3. Линеаризовани Калманов филтар Може се приметити да једначине система (3.17 и 3.18) предвиђају линеаран систем. У том случају ће Калманов филтар на основу линеарног модела система и линеарног модела перцепције бити у могућности да рекурзивним поступком одреди оцену стања |ˆ k kx и матрицу коваријанси |k kP у тренутку k . Међутим, уколико су промене система и мерења нелинеарног карактера: ( ) ( ) 1 ,k k k k k k k x f x u v z h x w − = + = + (3.36) где ( )f ⋅ и ( )h ⋅ представљају произвољне нелинеарне функције које једнозначно одређују промену стања система и модел перцепције. У овом случају приказани поступак Калмановог филтра неће дати оптималне резултате и неопходно је модификовати приказани поступак оцењивања и прилагодити га нелинеарним моделима. - 49 - Подразумева се да су основне претпоставке „основног” алгоритма Калмановог филтра валидне и у овом случају. Основна претпоставка на којој почива формулација Калмановог филтра за нелинеарне системе је: [ ]1| 1 1 1: 1ˆ |k k k kEx x z− − − −≈ (3.37) Односно, усваја се да је условно очекивање стања за дата мерења до тренутка 1k − одређено са 1| 1ˆ k kx − − . Другим речима, најбоља оцена стања у тренутку 1k − 1| 1ˆ k kx − − поседује све информације које су нам потребне. Ова претпоставка је прилично груба интерпретација реалности. Поступак започињемо развијањем нелинеарна функције ( )f ⋅ у Тејлоров ред: ( ) ( )21| 1 1 1| 1 1 1| 1ˆ ˆ ˆ, ,k k k k x k k k k k k kk Ox f x u f x x x x v− − − − − − − −   = + ∇ − + − +    (3.38) xf∇ је Јакобијан функције ( )f ⋅ израчунат у 1 1| 1ˆk k kx x− − −= . Задржавањем на члановима првог реда уз израчунавање математичког очекивања условљеног мерењима до тренутка 1k − добија се: ( ) ( ) | 1 1: 1 1| 1 1 1| 1 1: 1 1| 1 ˆ | ˆ ˆ, , | ˆ , , k k k k k k k x k k k k k k k k E E k k x x z f x u f x x v z f x u − − − − − − − − − −  = =    ≈ + ∇ − + =   = (3.39) Дакле, предикција стања нелинеарног система се одређује израчунавањем вредности нелинеарне функције ( )f ⋅ узимајући најбољу оцену 1| 1ˆ k kx − − у тренутку 1k − . Сада се види и зашто је било потребно увести апроксимацију ( [ ]1| 1 1 1: 1ˆ |k k k kEx x z− − − −≈ ). Увођењем грешке оцене у произвољном тренутку i узимајући у обзир све прикупљене информације до тренутка ј - 50 - | | ˆ i j i i jx x x−  (3.40) и њене коваријансе | | | 1:| T i j i j i j jEP x x z    (3.41) могуће је спровести сличан поступак као и приликом дефинисања Калмановог филтра за линеарне моделе система и перцепције. Грешка предикције је дата као разлика стварног стања система kx у тренутку k и „наше” предикције стања система | 1ˆ k k−x : ( ) ( ) ( ) | 1 1| 1 1 1| 1 2 1 1| 1 1| 1 1 1| 1 1| 1 ˆ ˆ ˆ, , ˆ ˆ , , ˆ k k k k k k k x k k k k k k k k k k x k k k k x k k k k O k − − − − − − − − − − − − − − − − = − =  = +∇ − +    + − + −    ≈∇ − +   =∇ + x x x f x u f x x x x v f x u f x x v f x v   (3.42) Другим речима, грешка предикције kx у тренутку k једнака је производу Јакобијана xf∇ модела система ( )f ⋅ и грешке предикције 1| 1k k− −x у тренутку 1k− , увећаном за шум модела система kv . Предикција коваријансе се сада једноставно израчунава: ( )( ) ( ) | 1 | 1 | 1 1| 1 1| 1 1: 1 1| 1 | T k k k k k k T x k k k x k k k k T x k k x k E E − − − − − − − − − −  = =    = ∇ + ∇ + =   =∇ ∇ + P x x f x v f x v z f P f Q     (3.43) У дефинисању коваријансе грешке предикције употребљена је претпоставка о некорелисаности шума модела система kv и грешке предикције 1| 1k k− −x . Поред развијања модела система у Тејлоров ред потребна је исто урадити и са моделом перцепције: - 51 - ( ) ( ) ( )2| 1 1| 1 1| 1ˆ ˆ ˆ k k k k k x k k k k k k kO z h x w h x h x x x x w − − − − − = +    = + ∇ − + − +    (3.44) где је са xh∇ означен Јакобијан нелинеарне функције модела мерења ( )g ⋅ израчуната у | 1ˆk k kx x −= . Занемаривањем чланова вишег од првог реда и израчунавањем условног очекивања добија се предикција мерења: ( ) ( ) | 1 1: 1 | 1 | 1 1: 1 | 1 ˆ | ˆ ˆ | ˆ k k k k k k x k k k k k k k E E z z z h x h x x w z h x − − − − − −  = =    ≈ + ∇ − + =   = (3.45) Предикција сензорске информације се израчунава на основу фунцкије ( )g ⋅ за | 1ˆ k kx − . Разлика предикције мерења ( )| 1ˆ k kh x − , као функције предикције стања система | 1ˆ k kx − , и оствареног мерења kz одређује иновацију kη ( )| 1ˆk k k kη z h x −= − (3.46) Последњи корак у кораку предикције је одређивање коваријансе иновације. У том смислу, потребно је увести грешку предикције мерења као: ( ) ( ) ( ) | 1 | 1 2 | 1 1| 1 1| 1 | 1 1| 1 ˆ ˆ ˆ ˆ ˆ ˆ k k k k k k k x k k k k k k k k k x k k k k O z z z h x h x x x x w h x h x x w − − − − − − − − − − = − =    = + ∇ − + − + −     ≈ ∇ − +   (3.47) Коваријанса иновације се сада једноставно одређује након израчунавања условног очекивања: ( )( ) ( ) | 1 | 1 1| 1 1| 1 | 1 ˆ ˆ T k k k k k T x k k k k x k k k k T x k k x k E E S z z h x x w h x x w h P h R − − − − − − −  =       = ∇ − + ∇ − +      = ∇ ∇ +   (3.48) - 52 - Након увођења свих потребних величина може се наставити ка кораку корекције. Као и у случају Калмановог филтра за линеарне системе и у овом случају се тражи оптимално стање система |ˆ k kx као линеарна комбинација предикције стања система | 1ˆ k kx − и последњег мерења kz (3.24): 2 | | 1 | 1 ˆ ˆ ˆ k k k k k k k k kx x W z H x− − = + −  (3.49) Грешка оцене је: ( ) ( ) | | 2 2 | 1 | | 1 2 2 | 1 | | 1 2 2 | 1 ˆ ˆ ˆ ˆ ˆ ˆ ˆ k k k k k k k k k k k k k k k k k k k k k k x k k k k k k x k k k k x x x x x x W h x h x W w x x x W h x x W w I W h x W w − − − − − = − =   = − + + − +       ≈ − + + ∇ − +     = − ∇ +    (3.50) док се коваријанса једноставно одређује: ( ) ( ) | | | 1: 2 2 2 2 | 1 | 1 1: 1 2 2 2 2 | 1 | | T k k k k k k k TTT T k x k k k k k k x k k k k TT T k x k k k x k k k k E z E z E E P x x I W h x x I W h W w w W I W h P I W h W w w W − − − −           ≈ − ∇ − ∇ +             ≈ − ∇ − ∇ +          (3.51) На крају, минимизацијом средње квадратне грешке одређује се тежинска матрица 2kW ( ) ( ) ( ) ( ) 2 2 | 12 1 2 | 1 | 1 2 2 Tk k x k k x k k k T T k k k x x k k x k L I W h P h W R 0 W W P h h P h R − − − − ∂ = − − ∇ ∇ + = ∂  = ∇ ∇ ∇ +   (3.52) Калманов филтар за нелинеарне полазне моделе је приказан у табели 3.2: - 53 - Табела 3.2: Основни алгоритам линеаризованог Калмановог филтра. ( ) ( ) ( ) ( ) ( )( ) 1| 1 1| 1 | 1 1| 1 | 1 1| 1 1 | 1 | 1 | | 1 | 1 | | 1 ˆ1. _ _ ( , , , ) ˆ ˆ2. , 3. 4. ˆ ˆ ˆ5. 6. k k k k k k k k k k k T k k x k k x k T T k k k x x k k x k k k k k k k k k k k k k k Linearizovani Kalmanov filtar − − − − − − − − − − − − − − − − = =∇ ∇ +  = ∇ ∇ ∇ +   = + − = − Aлгоритам x P u z x f x u P f P f Q K P h h P h R x x K z h x P P K | | ˆ7. , T k k k k k kreturn S K x P Из претходне анализе Линеарног Калмановог филтра може се уочити потпуна аналогија са изразима за појачање, оцену стања и коваријансе са Калмановим филтром. Основна разлика је дата у табели 3.3, где се види паралелни приказ основних карактеристика: Табела 3.3: Упоредни приказ Калмановог филтра и линеаризованог Калмановог филтра. Калманов филтар линеаризовани Калманов филтар 1. | 1ˆ k k−x 1| 1ˆk k k k k− − +F x B u ( )1| 1ˆ ,k k k− −f x u 2. | 1k k−P 1| 1 T T k k k k k k k− − +F P F G Q G ( )1| 1 T x k k x k− −∇ ∇ +f P f Q 3. ˆ kz | 1ˆk k k−H x ( )| 1ˆ k k−h x 4. kS | 1 T k k k k k− +H P H R ( )| 1 T x k k x k−∇ ∇ +h P h R 5. kK 1 | 1 | 1( ) T T k k k k k k k k − − − +P H H P H R ( ) ( ) 1 | 1 | 1 T T k k x x k k x k − − −  ∇ ∇ ∇ +   P h h P h R 6. |ˆ k kx | 1 | 1ˆ ˆ( )k k k k k k k− −+ −x K z H x ( )( )| 1 | 1ˆ ˆk k k k k k− −+ −x K z h x 7. |k kP | 1 T k k k k k− −P K S K | 1 T k k k k k− −P K S K - 54 - Линеаризовани Калманов филтар (ЛКФ) употребљен је на два начина у истраживањима у оквиру ове дисертације. Прво је примењен као алгоритам оцењивања параметара у форми машинског учења одговарајућих вештачких неуронских мрежа. Након тога, ЛКФ је примењен за симултано оцењивање положаја мобилног робота и карактеристичних објеката у радном окружењу. - 55 - 4. МАШИНСКО УЧЕЊЕ ВЕШТАЧКЕ НЕУРОНСКЕ МРЕЖЕ СА РАДИЈАЛНИМ АКТИВАЦИОНИМ ФУНКЦИЈАМА ГАУСОВОГ ТИПА Вештачке неуронске мреже представљају математичко-софтверски алат намењен за моделирање проблема које је тешко (или пак потпуно немогуће) дефинисати математички. Вештачке неуонске мреже су током низа година развоја успешно примењене на различите проблеме из инжењерске праксе [48,122,124]. Предности развоја модела проблема применом вештачких неуронских мрежа огледају се у могућности развоја моделирања комплексних проблема без потребе за познавањем експлицитног математичког модела. Посебно је битно нагласити да у неким случајевима, развој експлицитног математичког модела не би у потпуности решио проблем, те је стога потребно спровести другачији приступ. 1) Развијање модела проблема применом вештачких неуронских мрежа, подразумева спровођење поступка кога чине следећи кораци: 2) Дефинисање улазних и излазних величина; 3) Избор система за генерисање потребних података; 4) Аквизиција експерименталних података; 5) Претпроцесирање експерименталних података. 6) Избор вештачке неуронске мреже, архитектуре и типа активационих функција; 7) Избор типа машинског учења (надгледано или ненадгледано) и одговарајућег алгоритма учења; - 56 - 8) Оптимизација параметара вештачке неуронске мреже-машинско учење; 9) Валидација квалитета обучености мрежа; 10) Тестирање „перформанси” добијених модела. Корак бр. 1 потпуно је дефинисан полазним проблемом. Као инжењери, треба да смо увек у могућности да знамо зависност једних величина од других. Познавање физичких основа изучаваног проблема представља основу за примену вештачких неуронских мрежа. На овај начин се кораци бр.2, и бр.3 једноставно спроводе познавањем физичког утицаја једних величина на друге. У кораку бр. 4 се врши скалирање експерименталних података које за циљ има пресликавање полазног експерименталног скупа у неки од уобичајених опсега промене. Основна идеја је обухватање утицаја свих величина (поступак скалирања или нормализације [48,121,172]). Након претпроцесирања експерименталних података потребно је изабрати тип вештачке неуронске мреже, тип активационе функције и број неурона, као и број слојева ако је у питању вишеслојна мрежа [122]. Наведени параметри директно утичу на перформансе и квалитет предикције. У корацима бр.6 и бр.7 треба дефинисати вид машинског учења који директно зависи од полазног проблема (надгледано или ненадгледано машинско учење), као и алгоритам учења. Од седмог корака започиње итеративни поступак који се састоји од оптимизације параметара и провере „наученог” (оцене квалитета предикције). У овом поглављу су приказани алгоритми машинског учења вештачких неуронских мрежа са радијалним активационим функцијама развијени на бази Калмановог филтра. - 57 - 4.1. Вештачка неуронска мрежа са радијалним активационим функцијама Вештачка неуронска мрежа са радијалним активационим функцијама представљена је следећим изразом [196]: ( ) 1 , , N i ij i j j j σ = =∑y w f x µ (4.1) Основни параметри су:  Вектор тежинских параметара вештачке неуронске мреже ijw ;  Вектор прототипова (репера) xnj ∈µ  , где xn означава број димензија;  Радијална дистанца ( )1;j jσ σ ∈ ;  ( ), ,⋅ ⋅ ⋅f је активациона функција вештачке неуронске мреже,  x n i ∈x  и yn i ∈y  су улазни и излазни вектор (респективно) који формирају скуп за оптимизацију. Постоји више могућности избора активационе функције, а сам избор зависи од проблема за који се развија овај тип вештачке неуронске мреже. Могући типови активационих функција су:  Гаусова активациона функција: ( ) 21exp 2 T i ij ij jσ   = −     f x ξ ξ (4.2)  Инверзна квадратна активациона функција: ( ) ( ) 1 22Ti ij ij jσ −= +f x ξ ξ (4.3)  Квадратна активациона функција: ( ) ( )1 22Ti ij ij jσ= +f x ξ ξ (4.4) - 58 -  Логаритамска активациона функција: ( ) ( )lnTi ij ij ij=f x ξ ξ ξ (4.5) где је ( ); xnij i j ij= − ∈ξ x µ ξ  разлика између i -тог улазног вектора ix и j - тог прототип вектора jµ . Параметар jσ одређује ширину активационе функције, односно граничну вредност припадности i -тог улазног вектора ix скупу чији је представник j -ти прототип вектор jµ . На слици 4.1 су графички приказане четири карактеристичне активационе функције ( )if x . На основу математичке формулације активационих функција, као и на основу њиховог графичког приказа, може се закључити да је одзив неурона на улазни вектор xni ∈x  већи уколико је разлика ijξ између улазног вектора xni ∈x  и вектора прототипа x n ∈jµ  мања. У случају Гаусове и инверзне квадратне активационе функције, активација неурона је већа уколико је ijξ расте, док је у случају квадратне активационе функције и логаритамске активационе функције активација смањује са порастом ijξ . Могуће је уочити и да је излазна вредност активационе функције (активација неурона) увек позитивна величина ( ) , xni i> ∀ ∈f x 0 x  . - 59 - Слика 4.1 Типови активационих функција: а) Гаусова активациона функција.; б) Инверзна квадратна активациона функција; в) Квадратна активациона функција; г) Логаритамска. У истраживањима спроведеним у оквиру ове дисертације изабрана је вештачка неуронска мрежа са радијалним активационим функцијама у виду активационих функција Гаусовог типа. Основни разлог за избор Гаусове активационе функције је пре свега у поставци, која обезбеђује већу активацију неурона уколико ijξ опада и мању активацију уколико ijξ расте. У том смислу, на слици 4.2 је дат приказ Гаусове активационе функције за различите вредности радијалне дистанце iσ . - 60 - Слика 4.2 Гаусова активациона функција за различите вредности параметра iσ : а) 0,1iσ = ; б) 1iσ = ; в) 5iσ = ; г) 10iσ = . Са порастом iσ повећава се опсег активационе функције. На слици 4.3 је приказана основна разлика репрезентације скупа података моделирањем применом вишеслојног перцептрона и вештачке неуронске мреже са радијалним активационим функцијама. Вишеслојни перцептрон успоставља класификациону границу између одговарајућих елемената скупа. Већи број слојева омогућава остваривање компликованијих пресликавања. За разлику од вишеслојног перцептрона, радијалне активационе функције су базиране на успостављању сличности између елемената улазног скупа података. Свака кружница на слици 4.3 представља једну радијалну активациону функцију чији је пречник једнак радијалној дистанци iσ (аналогија са Гаусовом густином расподеле). - 61 - а) б) Слика 4.3 Графички приказ основне разлике између вишеслојног перцептрона (а) и вештачке неуронске мреже са радијалним активационим функцијама (б) у простору улазног вектора 2ix ∈ . 4.2. Оптимизација параметара вештачке неуронске мреже са Гаусовим активационим функцијама – машинско учење Основна предност вештачке неуронске мреже са радијалним активационим функцијама је у могућности раздвајања оптимизације параметара активационих функција и тежинских параметара саме вештачке неуронске мреже. Могуће је применити ненадгледани вид машинског учења [25,48,106,135] за оптимизацију центара и радијалних дистанци на основу искључиво улазних података xni ∈x  из целокупног скупа за оптимизацију. Након овог поступка, примењује се надгледани вид машинског учења у коме се узимају у обзир и улазни и излазни парови из скупа за оптимизацију. Применом овог поступка могуће је искористити максимум расположивих информација из улазног скупа. Процес оптимизације центара и радијалних дистанци активационих - 62 - функција се може наставити и у другом кораку али их можемо и сматрати за константне параметре, с обзиром на то да су оптимизирани применом ненадгледаног вида машинског учења. Примери оваквог комбинованог машинског учења се могу видети у следећим референцама [67,160,193]. Оптимизација параметара вештачке неуронске мреже може бити спроведена применом методе најмањег градијента [90,164], или рекурзивне методе најмањих квадрата [122]. Међутим, ови приступи полазе од претпоставке да је број неурона константан и познат. Могуће је спровести и оптимизацију параметара и симултано мењати број неурона узимајући у обзир грешку учења [3,27,65,78,80,109,116,148,211]. Оптимизација параметара применом овог приступа је много бржа [78,80] и за резултат има оптималне архитектуре у погледу броја неурона, са побољшаном тачношћу и прецизношћу. Сви досад поменути алгоритми су „локалног” типа, с обзиром на то да итеративним поступком „траже” глобални минимум. У литератури је могуће наћи и алгоритме који директно траже глобални минимум [16,45,110,111,209]. Занимљиво је поменути и комбиновани приступ у виду интеграције вишеслојног перцептрона и вештачке неуронске мреже са радијалним активационим функцијама Гаусовог типа [39]. Алгоритми машинског учења могу бити примењени у off line или on line режиму, где off line подразумева употребу свих примера из скупа обучавајућих парова у свакој итерацији, док on line поступци користе један и само један пример у свакој итерацији. On line алгоритми су погоднији за примену у оквиру спроведених истраживања с обзиром на могућност примене одговарајућег алгоритма обучавања у реалном времену у оквиру одговарајућег софтверско-управљачког модула мобилног робота. Због изразите потребе за оптимизацијом параметара вештачке неуронске мреже у реалном времену, у овој дисертацији су примењени алгоритми обучавања који то и обезбеђују. - 63 - С обзиром на природу истраживања изабран је надгледан тип машинског учења за оптимизацију параметара. Овај тип учења подразумева постојање „учитеља” који „ученику” тј. вештачкој неуронској мрежи, обезбеђује примере за учење. На основу ових примера и изабраног алгоритма обучавања, ученик треба да оптимизује параметре да би усвојени критеријум перформансе (оптималности) био задовољен. За потребе оптимизације параметара вештачке неуронске мреже on line поступком анализирани су следећи алгоритми:  Линеаризовани Калманов филтар (ЛКФ);  Линеаризовани информациони филтар (ЛИФ);  Алгоритам специфичне апроксимације момената (АСАМ). Примена ЛКФ алгоритма за потребе оптимизације одговарајућих параметара вештачке неуронске мреже је спроведена у [164,190] и представља (скоро) „стандардни” поступак. Међутим, основна разлика поменутих резултата у односу на алгоритам приказан у овом поглављу огледа се у секвенцијалној обради података који је примењен у овој дисертацији (on line режим), као и различитом типу активационих функција. По сазнањима аутора, примена линеаризованог информационог филтра за ове потребе није уобичајени поступак и претраживањем референтних извора нису пронађени одговарајући резултати. Алгоритам специфичне апроксимације момената примењен је у неколико референтних извора у циљу оптимизације одговарајућих параметара, међутим с обзиром на то да АСАМ представља релативно нов концепт у теорији оцењивања (потпуно заокружен на теоретском нивоу почетком 2000. године) његова примена за различите инжењерске проблеме није довољно анализирана и истражена. Претходна чињеница представља основну идеју због које је изабран развој алгоритма обучавања на бази специфичне апроксимације момената. - 64 - Пре него што уведемо изабране алгоритме неопходно је формирати вектор стања с обзиром на то да сва три алгоритма почивају на оваквој формулацији. На основу једначине (4.1) вештачка неуронска мрежа са радијалним активациним функцијама је дата као: 10 11 1 20 21 2 1 1 1 0 1 1 ( , , ) ( , , ) J J i i i i ij Ј i J J w w w w w w w w w µ σ µ σ             =               f x y f x … …      … (4.6) односно, записано у матричном облику 1i i j J× ×=y W G (4.7) где i j×W представља матрицу свих тежинских параметара, а 1J×G вектор активације кога чине све активационе функције. Вектор стања система чине сви параметри вештачке неуронске мреже које је потребно оптимизовати у односу на задати критеријум. Знајући да је свака врста матрице тежинских параметара i j×W посебан вектор, полазна матрица се може написати и у следећем облику: 10 11 1 1 20 21 2 2 0 1 T J T J ij T i i ij i w w w w w w w w w w w W w             = =               … …      … (4.8) Да би се формирао вектор стања неопходно је написати тежинске параметре у векторском облику: 1 2 TT T T i  =  w w w w… (4.9) Преостали елементи вектора стања чине прототип вектори Jµ и све радијалне дистанце Jσ које одређују припадност j -том прототип вектору, односно: - 65 - 1 2 1 2 TT T T T T T J Jσ σ σ =  t µ µ µ… … (4.10) Дакле, вектор стања чине сви тежински параметри вештачке неуронске мреже i j×W и параметри свих активационих функција t 1 2 1 2 1 2 TT T TT T T T T T T T T i J Jσ σ σ  = =   =   λ w t w w w µ µ µ… … … (4.11) Укупан број параметара pN вештачке неуронске мреже, а тиме и број димензија вектора стања система λ је: ( )dim (dim( ) 1) dim( )p neurona neuronaN n n= = + +λ x y (4.12) Функција dim( )⋅ одређује број димензија одговарајућег аргумента, x и y представљају улазни и излазни вектор вештачке неуронске мреже респективно, а neuronan је укупан број неурона. Након дефинисања вектора стања система могуће је наставити увођење линеаризованог Калмановог филтра, линеаризованог информационог филтра и алгоритма специфичне апроксимације момената, као изабраних алгоритама за оптимизацију параметара вештачке неуронске мреже са радијалним активационим функцијама Гаусовог типа у on line режиму. Линеарни динамички систем у дискретном облику је: ( ) 1| 1 | 1 , k k k k k k k − − − = + = + λ λ ε y g λ x ω (4.13) ( )| 1 ,k k k−g λ x је вештачка неуронска мрежа. ε и ω су одговарајући бели шумови ( ( )~ ,Nε ε Q и ( )~ ,Nω ω R ); ky је жељени излазни вектор. Као што се може видети, оптимизација параметара подразумева линеаран систем, што је представљено идентичним пресликавањем 1| 1k k k− − →λ λ . Уводе се следеће претпоставке: - 66 - ( )( ) [ ] [ ] 0|0 0|0 0|0 0|0 0|0 0|0 0|0 1 , 1 1 , 1 ˆ ˆ ˆE ; E E ; E E ; T T k k k k k T k k k k kE δ δ + + + +    = − − =      = =   = =  λ λ λ λ λ λ P ε 0 ε ε Q ω 0 ω ω R (4.14) где је , 1k kδ + Кронекеров делта симбол. 4.2.1. Машинско учење применом линеаризованог Калмановог филтра Алгоритам оптимизације параметара на бази ЛКФ алгоритма приказан је у табели 4.1. Табела 4.1: Псеудокод линеаризованог Калмановог филтра за оптимизацију параметара вештачке неуронске мреже. ( ) ( ) ( )( ) ( )( ) ( )( ) ( )( ) 1| 1 1| 1 0|0 0|0 0|0 0|0 0|0 0|0 0|0 min | 1 1| 1 | 1 1| 1 | 1 ˆ1. ( , , , ) ˆ ˆ ˆ2. E ; E 3. dim ; dim 4. ˆ ˆ5. 6. ˆˆ7. , ˆ8. k k k k T k k k k k k k k k k k k k k k k diag diag whileEr Er k λ Алгоритам ЛКФ_РГАФ λ P x y λ λ λ λ λ λ P Q λ R y λ λ P P Q y g λ x H y − − − − − − − − − − −    = − − =     = = > = = + = = ∇ ( ) ( )( ) ( )( ) 1 | 1 | 1 | | 1 | | 1 | | | | ( , ) ( , ) ( , ) 9. ( ) ˆ ˆ ˆ10. ( ) 11. ( ) 1 ˆ ˆ12. , , 2 13. ˆ14. , i T T k k k k k k k k k k k k k k k k k k k k T k k k k k k k k k Er I endwhile return w µg g g K P H H P H R λ λ K y y P I K H P y g λ x y g λ x λ P σ − − − − − ∇ ∇ ∇ = ⋅ ⋅ ⋅ ⋅ ⋅ ⋅  = + = + − = − = − − Почетне вредности вектора стања система 0|0λˆ и матрице коваријанси 0|0P , као и коваријансе шумова система Q и мерења R потребно је усвојити на основу познатих карактеристика анализираног проблема. - 67 - Улазне величине у алгоритам су оцена вектора стања система 1| 1 ˆ k k− −λ , матрица коваријанси вектора стања 1| 1k k− −P у тренутку 1| 1k k− − и жељена излазна вредност као пример из скупа за оптимизацију ( )ky . Може се приметити да у оваквој поставци Калмановог филтра жељена вредност ( )ky из скупа за оптимизацију представља „мерење”, концепт који је познат у основној поставци ЛКФ алгоритма (треће поглавље). Дакле, за задате почетне услове и усвојену очекивану грешку оптимизације minEr алгоритам рекурзивно оцењује вектор стања сходно информацији ( )ky . У реду бр. 5 и реду бр. 6 се врши предикција вектора стања | 1ˆ −k kλ и матрице коваријанси | 1k k−P . Ред бр. 7 дефинише предвиђање мерења, што представља излазни вектор вештачке неуронске мреже. Јакобијан вештачке неуронске мреже ( )( )| 1ˆˆ ,k k k k−=y g λ x у односу на елементе вектора стања ˆλ је дат у реду бр. 8. Матрица појачања филтра је дата у реду бр. 9. Корак корекције алгоритма спроводи се у реду бр. 10 за вектор стања система и реду бр.11 за матрицу коваријанси. Вектор иновације ( )( )ˆ kk −y y представља разлику између стварне излазне вредности ( )ky и предвиђања вештачке неуронске мреже ( )( )| 1ˆˆ ,k k k k−=y g λ x , које је функција оцене вектора стања система | 1ˆ −k kλ и улазног вектора ( )kx . Потребно је обратити пажњу да временски индекс k означава да се у једној итерацији користи један и само један елемент из скупа улазно-излазних парова који се користе за оптимизацију параметара вештачке неуронске мреже. Након спроведене корекције, израчунава се нова вредност грешке оптимизације за нову оцену вектора стања ( )|ˆ ,k kg λ x и свих улазних - 68 - вектора из скупа за оптимизацију. Обратити пажњу да вредност грешке minEr представља средњу вредност. 4.2.2. Машинско учење применом линеаризованог информационог филтра За разлику од Калмановог филтра који Гаусову расподелу моделира првим и другом моментом, информациони филтар у рекурзивну естимациону форму уводи инверзију матрице коваријанси P која се назива информациона матрица и дефинише се као: 1− =Ι P (4.15) Матрица P представља меру неодређености стања система, а велике вредности нам указују на то да постоји значајна неодређеност/несигурност у погледу оцене вектора стања. Уколико → ∞P то нам говори да немамо никакво предзнање о систему. Наравно, када →P 0 имамо „идеалну” ситуацију, знамо све потребне информације о систему. Проблем који се јавља приликом оцењивања у случају када немамо довољно информација о систему је када → ∞P . У практичним применама Калмановог филтра немогуће је рачунару предочити ову ситуацију на оптималан начин. Због тога се уводи оцењивање у информационом простору, који подразумева информациони вектор и информациону матрицу (канонска форма). Инверзијом матрице коваријанси могуће је рачунару „представити” количину нашег знања/незнања о систему на следећи начин: = ⇒ = ∞ = ∞ ⇒ = P 0 Ι P Ι 0 (4.16) - 69 - Дакле, имајући у виду (4.15), случај када је наше незнање о систему велико ( → ∞P ) преласком у информациони простор се веома једноставно алгебарски дефинише као =Ι 0 . Линеарни динамички систем у дискретном облику је формулисан једначином (4.13). Основне претпоставке које су усвојене том приликом важе и у овом случају. Псеудокод линеаризованог информационог филтра је дат у Табели 4.2. Табела 4.2: Псеудокод линеаризованог информационог филтра за оптимизацију параметара вештачке неуронске мреже. ( ) ( ) ( )( ){ } ( )( ) ( )( ) ( )( ) ( )( ) 1| 1 1| 1 1 0|0 0|0 0|0 0|0 0|0 0|0 0|0 min | 1 1| 1 11 | 1 1| 1 | 1 ˆ1. ( , , , ) ˆ ˆ ˆ2. E ; E 3. dim ; dim 4. ˆ ˆ5. 6. ˆˆ7. , 8. k k k k T k k k k k k k k k k k k k k k diag diag whileEr Er k Алгоритам ЛИФ_РАФ λ P x y λ λ λ λ λ λ Ι Q λ R y λ λ Ι Ι Q y g λ x H − − − − − − − − − − − − − −    = − − =     = = > = = + = = ( ) ( )( ) ( )( ) ( )( ) 1 | | 1 1 1 | | | 1 | | | | ˆ ( ) ( ) ( ) 9. 10. ˆ ˆ ˆ11. 1 ˆ ˆ12. , , 2 13. ˆ14. , i k T k k k k k k k T k k k k k k k k k k k T k k k k k k k k k Er I endwhile return λ w µy g g g Ι Ι H R H K Ι H R λ λ K y y y g λ x y g λ x λ Ι σ − − − − − ∇ ∇ ∇ ∇ = ⋅ ⋅ ⋅  = + = = + − = − − Иницијализација алгоритма започиње у реду бр. 2 и реду бр. 3, где се одређују почетне вредности вектора стања 0|0λˆ и почетне матрице коваријанси 0|0P , као и коваријансе шума система Q и шума мерењаR . Предикција стања система се обавља у редовима бр. 5 и бр. 6. Предикција вектора стања је идентична као и приликом примене алгоритма - 70 - линеаризованог Калмановог филтра. Прва разлика се може видети у реду бр. 6, где се предвиђа нова вредност информационе матрице. Треба обратити пажњу да ова операција подразумева двоструку инверзију одговарајућих матрица. Јакобијан вештачке неуронске мреже са радијалним активационим функцијама Гаусовог типа у односу на елементе вектора стања је дат у реду бр. 8. Корак корекције алгоритма започиње одређивањем информационе матрице |k kΙ у тренутку |k k и појачања филтра kK . На крају, у реду бр. 11 се врши модификација вектора стања система на основу вектора иновације ( )( )ˆ kk −y y . Одређивање тренутне грешке оптимизације (учења) је дато у реду бр. 12. Као и код ЛКФ алгоритма оптимизације параметара вештачке неуронске мреже, грешка оптимизације представља средњу вредност свих грешака, срачунате за све примере који су елементи скупа за оптимизацију. 4.2.3. Машинско учење применом алгоритма специфичне апроксимације момената Алгоритам специфичне апроксимације момената представља поступак оцењивања вектора стања нелинеарног динамичког система. Линеаризација нелинеарних једначина модела система и сензорског модела развијањем у Тејлоров ред резултира увођењем грешака у процес оцењивања, с обзиром на то да одговарајући Јакобијани не могу са довољном тачношћу да изврше предикцију стања нелинеарног система. Ове грешке могу да доведу до нарушавања оптималности филтра (значајно утиче на његову оптималност), а тиме и на тачност. Грешке могу резултирати и дивергенцијом филтра. Алгоритам специфичне апроксимације момената (АСАМ) не врши линеаризацију нелинеарног система развијањем једначина модела система - 71 - и сензорског модела у Тејлоров ред. Основна идеја АСАМ почива на интуицији да је једноставније апроксимирати познату густину расподеле стохастичке променљиве него полазне нелинеарне моделе [84,85,202]. Алгоритам почива на специфичној трансформацији нелинеарне функције стохастичке променљиве. Нека је дата произвољна нелинеарна функција ( )=y f x и нека аргумент функције x подлеже Гаусовој расподели са познатим статистикама x и P . Потребно је израчунати непознате статистике променљиве yнакон што је примењена нелинеарна функција ( )⋅f на аргумент x . Прво је потребно формирати матрицу која има Σ на следећи начин: ( )( )( ) ( ) ( )( )( ) ( ) ( ) ( ) 0 dim dim , 1,...,dim dim , dim 1,.., 2 dim i i i i i i γ γ − = = + + = = − + = + ⋅ x Σ x Σ x x P x Σ x x P x x (4.17) ( )dim x је функција која одређује број димензија вектора x , а γ је скаларни параметар који одређује ширину опсега тачака iΣ и израчунава се као ( )( ) ( )2 dim dimγ α κ= + −x x (4.18) Остали скаларни параметри су 410 ,1α − ∈   ; ( ){ }0,dimκ ∈ x . Вектори колоне помоћу којих се врши апроксимација нелинеарне функције називају се сигма тачке. Дакле, матрицу Σ чини ( )2dim 1+x сигма тачака. Након формирања матрице сигма тачака iΣ , на њене вектор колоне се примењује нелинеарна функција ( )⋅f , односно: ( ) ( ), 0,..., 2dimi i i= =Ψ f Σ x (4.19) Матрица iΨ је матрица свих могућих вредности које променљива ( )=y f x може да има на основу претходног знања да променљива x - 72 - подлеже Гаусовој расподели са очекиваном вредношћу x и коваријансом P . Очекивана вредност (први момент) и коваријанса (други момент) променљиве y су: ( ) ( ) ( ) ( ) 2dim 0 2dim 0 m i i i Tk i i i i W W = = ≈ ≈ − − ∑ ∑ x x y Ψ P Ψ y Ψ y (4.20) а константни тежински коефицијенти су ( )( ) ( )( ) ( ) ( )( )( ) ( ) 0 2 0 dim dim 1 1 2 dim , 1,..., 2dim m k m k i i W W W W i γ γ γ γ α β γ = + = + + − + = = + = x x x x (4.21) Оптимална вредност константног параметра β за Гаусову расподелу је 2β = [84,85,202]. Применом овог поступка елиминисана је потреба за линеаризацијом полазне нелинеарне функције ( )⋅f развијањем у Тејлоров ред. Приказана апроксимација момената променљиве y , која је нелинеарна функција неких других стохастичких променљивих, вишег је реда тачности од линеаризације остварене развијањем у Тејлоров ред. Након увођења основне трансформације на којој почива и алгоритам специфичне апроксимације момената, могуће је показати како се овај алгоритам оцењивања може применити на проблем оптимизације параметара вештачке неуронске мреже. Алгоритам оптимизације базиран је на основној рекурзивној формулацији линеаризованог Калмановог филтра. Разлика настаје у линеаризацији, с обзиром на то да нема потребе за израчунавањем Јакобијана. Алгоритам је приказан у табели 4.3. - 73 - Табела 4.3: Псеудокод алгоритма оцењивања параметара вештачке неуронске мреже базиран на специфичној апроксимацији момената. ( ) ( ) ( )( ) ( )( ) ( )( ) 1| 1 1| 1 0|0 0|0 0|0 0|0 0|0 0|0 0|0 min | 1 1| 1 | 1 1| 1 | 1 | 1 | ˆ1. ( , , , ) ˆ ˆ ˆ2. E ; E 3. dim ; dim 4. ˆ ˆ5. 6. ˆ ˆ ˆ7. k k k k T k k k k k k k k k i k k k k k k k k diag diag whileEr Er Алгоритам АСАМ_РАФ λ P x y λ λ λ λ λ λ P Q λ R y λ λ P P Q Σ λ λ P λγ − − − − − − − − − − − −    = − − =     = = > = = + = + ( )( ) ( ) ( ) ( ) ( )( ) ( )( )( ) ( ) 1 , | 1 2dim , | 1 | 1 1 2dim ˆ ˆ , | 1 , | 1 1 2dim ˆ , | 1ˆ 1 1 ˆ ˆ ˆˆ | | 1 8. , ˆˆ9. E , ˆ ˆ10. ˆ ˆ11. 12. ˆ ˆ13. k k k k k kk k i k k i m k i i k k k k k i T k i i k k k i k k k i T k i i k i k k k i k k k k k k W x W W x x y y x λ y y yλ y P Ψ g Σ x y Ψ g λ P Ψ y Ψ y R P Σ λ Ψ y K P P λ λ γ − − − − = − − = − = − −   −  =   = ≈   = − − + = − − = = + ∑ ∑ ∑ ( ) ( )( ) ( )( ) ˆ ˆ| | 1 | | | | ˆ( ) 14. 1 ˆ ˆ15. , , 2 16. ˆ17. , k k k k T k k k k k k T k k k k k k k k k Er I endwhile return y y K y y P P K P K y g λ x y g λ x λ P − − = − = − − Алгоритам започиње иницијализацијом у реду бр. 2 и реду бр. 3, где се дефинишу почетне вредности вектора стања 0|0λˆ , почетне матрице коваријанси 0|0P , коваријансе шума система Q и шума мерења R . У редовима бр. 5 и бр. 6 врши се предикција оцене вектора стања | 1 ˆ k k−λ и матрице коваријанси | 1k k−P . Прва разлика у односу на ЛКФ може се видети у реду бр. 7 где се одређује матрица iΣ , чије су колоне сигма тачке. Као што се може видети, у реду бр.8 се одређује излазна вредност вештачке неуронске мреже, на основу могућих вредности које могу имати параметри мреже (вредности - 74 - одређене сигма тачкама) и последњег улазног вектора kx . У реду бр. 9 се одређује (условно) математичко очекивање излазне вредности вештачке неуронске мреже на основу израчунатих свих излазних вредности увођењем сигма тачака. Оцењивање параметара се наставља одређивањем коваријансе ˆ ˆk ky yP у реду бр. 10 и кросковаријансе ˆ ˆk kλ yP реду бр. 11, као и израчунавањем Калмановог појачања kK у реду бр. 12. Након свих спроведених корака, корекција вектора стања и грешке оцене је дата у реду бр. 13 и реду бр. 14. Одређивање тренутне вредности грешке оптимизације је дато у последњем реду. 4.3. Експериментални резултати примене развијених алгоритама машинског учења вештачке неуронске мреже са радијалним активационим функцијама Гаусовог типа У овом делу су дати експериментални резултати који су добијени током тестирања карактеристика развијених алгоритама за оптимизацију параметара вештачке неуронске мреже са Гаусовим активационим функцијама. За све алгоритме машинског учења развијен је одговарајући софтверски код у MATLAB® програмском окружењу [207]. Експериментални резултати су добијени на лаптоп рачунару Pentium 4 2,0 GHz CPU са 2 GB оперативне меморије, као и на десктоп конфигурацији 2,20 GHz (AMD Athlon) са 1 GB оперативне меморије. Оцена перформанси развијених алгоритама машинског учења извршена је применом вештачке неуронске мреже за моделирање следећих проблема: 1) Скупови (реалних) података за проверу алгоритама машинског учења; 2) Моделирање „Фридманових” функција; 3) Моделирање топологије обрађене површине. - 75 - 4.3.1. Скупови реалних података за проверу алгоритама машинског учења Помоћу ових (уобичајених) скупова за проверу алгоритама машинског учења проверавају се конвергенција, тачност и прецизност нових алгоритама [69,70,71]. На овај начин се нови алгоритми могу директно упоредити са постојећим алгоритмима који су добро познати научној заједници. Од великог броја постојећих скупова података изабрана су три карактеристична скупа, чије основне су карактеристике дате у табели 4.4. Табела 4.4: Карактеристике изабраних тест скупова. РБ Назив скупа Укупан број примера Број примера за учење Број примера за тестирање Број димензија улазног вектора Број димензија излазног параметра 1. „Abalone” 4177 2089 2088 8 1 2. „Weather Ankara” 1609 805 804 10 1 3. „Auto-mpg” 398 199 199 8 1 Од полазног скупа података 50% је употребљено за процес оптимизације параметара вештачке неуронске мреже, а преосталих 50% за верификацију резултата и оцену квалитета спроведеног процеса машинског учења (тест скуп података). За сва три развијена алгоритма тестиране су архитектуре са пет, десет, 15 и 20 неурона у скривеном слоју: 1) Тест скуп бр. 1: 8-[5]1-1; 8-[10]1-1; 8-[15]1-1; 8-[20]1-1; 2) Тест скуп бр. 2: 10-[5]1-1; 10-[10]1-1; 10-[15]1-1; 10-[20]1-1: 3) Тест скуп бр. 3: 8-[5]1-1; 8-[10]1-1; 8-[15]1-1; 8-[20]1-1. Тачност вештачке неуронске мреже оцењена је на основу одређивања статистике квадратног корена средње квадратне грешке (ККСКГ): ( ) ( ) 1 21 , , , , , , T s N σ σ = − −          y g w µ x y g w µ x (4.22) - 76 - Оцена тачности је израчуната за три скупа података: 1) tests - ККСКГ за тест скуп података помоћу којих се оцењује квалитет спроведеног процеса машинског учења; 2) opts - ККСКГ за примере који су коришћени током процеса оптимизације; 3) svis - ККСКГ за све примере елементе скупа за оптимизацију. Улазни скуп је скалиран у домен [ ]1,1− , а излазни скуп у домен [ ]0,1 . Приликом иницијализације почетних параметара, прототип вектори су случајним избором бирани из одговарајућег скупа за оптимимизацију. Прототип вектори изабрани на овај начин прослеђују се развијеним алгоритмима оптимизације. Процес оптимизације је спроведен 20 пута за све тестиране архитектуре, а приликом сваког понављања процеса вршена је нова иницијализација почетних протип вектора вештачке неуронске мреже. У табелама 4.5, 4.6 и 4.7 су приказани резултати (средња вредност и стандардна девијације статиситке s за 20 понављања). Табела 4.5: Експериментални резултати за тест скуп – „Abalone”. Број неурона у скривеном слоју Алг s 5 10 15 20 tests 0,0996±0,0039 0,1015±0,0061 0,1015±0,0034 0,1025±0,0030 opts 0,1009±0,0009 0,0991±0,0029 0,1004±0,0018 0,1013±0,0017 Л К Ф svis 0,1002±0,0019 0,1003±0,0037 0,1010±0,0021 0,1019±0,0018 tests 0,1014±0,0046 0,1001±0,0038 0,0999±0,0068 0,1011±0,0052 opts 0,1004±0,0024 0,0990±0,0035 0,0992±0,0031 0,0991±0,002 Л И Ф svis 0,1009±0,0034 0,0996±0,0035 0,0996±0,004 0,1001±0,0036 tests 0,0997±0,0040 0,0994±0,0048 0,0993±0,0045 0,1006±0,0034 opts 0,0990±0,0016 0,0981±0,0020 0,0997±0,0026 0,1004±0,0014 А С А М svis 0,0994±0,0021 0,0987±0,0031 0,0995±0,0031 0,1005±0,0020 - 77 - Табела 4.6: Експериментални резултати за тест скуп – „Weather Ankara”. Број неурона у скривеном слоју Алг s 5 10 15 20 tests 0,0415±0,0027 0,0416±0,0042 0,0419±0,0034 0,0402±0,0032 opts 0,0398±0,0010 0,0403±0,0006 0,0395±0,0009 0,0397±0,0009 Л К Ф svis 0,0407±0,0015 0,0410±0,0022 0,0407±0,0020 0,0400±0,0017 tests 0,0409±0,0029 0,0411±0,0030 0,0403±0,0026 0,0405±0,0032 opts 0,0398±0,0008 0,0397±0,0012 0,0395±0,0011 0,0398±0,0008 Л И Ф svis 0,0404±0,0016 0,0404±0,0017 0,0399±0,0017 0,0402±0,0019 tests 0,0405±0,0028 0,0393±0,0031 0,0404±0,0027 0,0395±0,0028 opts 0,0398±0,0009 0,0387±0,0018 0,0393±0,0013 0,0388±0,0017 А С А М svis 0,0402±0,0016 0,0390±0,0022 0,0399±0,0017 0,0392±0,0019 Табела 4.7: Експериментални резултати за тест скуп – „Auto-mpg”. Број неурона у скривеном слоју Алг s 5 10 15 20 tests 0,0923±0,0074 0,0945±0,0105 0,0977±0,0095 0,0856±0,0095 opts 0,0872±0,00117 0,0871±0,0022 0,0872±0,0021 0,0756±0,0010 Л К Ф svis 0,0898±0,0043 0,0910±0,0057 0,0927±0,0053 0,0809±0,0049 tests 0,0932±0,0074 0,0946±0,0096 0,0933±0,0092 0,0860±0,0099 opts 0,0869±0,0032 0,0872±0,0022 0,0870±0,0024 0,0752±0,0010 Л И Ф svis 0,0902±,0,0041 0,0911±0,0053 0,0904±0,0048 0,0809±0,0055 tests 0,0887±0,0080 0,0968±0,0073 0,0917±0,0060 0,0846±0,0065 opts 0,0871±0,0015 0,0871±0,0019 0,0868±0,0024 0,0759±0,0011 А С А М svis 0,0921±0,0039 0,0921±0,0039 0,0893±0,0031 0,0804±0,0033 - 78 - Први изабрани тест скуп улазно-излазних вредности за оптимизацију параметара и проверу тачности алгоритма је изразито комплексан и нелинеаран. На основу експерименталних резултата (табела 4.5) се може закључити да је очекивана тачност реда величине око 0,1tests = . Најмању вредност тест статистике има АСАМ алгоритам и износи 0,0993 за вештачку неуронску мрежу са 15 процесирајућих јединица у скривеном слоју. Резултати указују и да је стандардна девијација статистике s мала, на основу чега се може закључити да је поновљивост резултата велика. Требало би нагласити да референтни извори наводе вредност тест статистике [ ]0,08 , 0,09tests ≈ . Вредности добијене у овом истраживању су за нијансу (~0,01) веће од алгоритама оптимизације параметара вештачке неуронске мреже који су приказани у [27]. У другом примеру се може видети да тест статистика има вредност око 0,04tests = , као и да стандардна девијација статистике срачуната за 20 понављања има малу вредност. Најмања вредност тест статистике tests је 0,0393tests = коју генерише вештачка неуронска мрежа са 20 процесирајућих јединица у скривеном слоју чији параметри су оптимазирани АСАМ алгоритмом. Референтни извори [27] наводе вредности око 0,06tests = , што је значајно већа вредност од вредности тест статистике добијене у овом истраживању. Последњи изабрани тест скуп има вредност тест статистике око 0,09tests = . С обзиром на то да други истраживачи пријављују вредности 0,1165tests = , закључује се да предложени алгоритми имају бољу тачност и прецизност. На крају ове анализе би требало нагласити, да се у истраживањима углавном узима 70% улазно-излазних примера почетног скупа за оптимизацију параметара, а 30% за верификацију резултата. У истраживањима спроведеним у оквиру ове дисертације усвојено је 50% примера који су коришћени за оптимизацију, а преосталих 50% за - 79 - тестирање (верификацију резултата). Експериментални резултати (табеле 4.5, 4.6 и 4.7) тест статистике израчунате за све скупове (сви примери из почетног скупа за оптимизацију svis , тест примера tests и примера који су коришћени током оптимизације параметара opts ) показују да тест статистика s има исти ред величине за све поменуте скупове, што указује да су сви алгоритми конвергирали ка оптимални вредностима. 4.3.2. Ирис тест скуп Ирис тест скуп је предложен још 30-тих година прошлог века за оцену тачности предикције класификације естиматора [55]. Ирис тест скуп садржи 150 примера, који су класификовани у једну у од три класе. Свака класа је представљена са 50 примера. Примере чине четири карактеристике одговарајуће класе које су представљене улазним вектором 4∈x  . Ирис тест скуп је приказан на слици 4.4. Слика 4.4 Улазни скуп података за Ирис тест скуп. Дуж главне дијагонале су наведени елементи вектора 4∈x  ,који представљају основне карактеристике три класе. Сваки дијаграм показује зависност једног елемента улазног вектора ix у односу на други jx . - 80 - Улазни скуп података је нормализован користећи очекивану вредност xµ и стандардну девијацију xσ података у улазном скупу ( )i i x xσ= −x x µ . Излазни скуп података (тј. одговарајуће класе) трансформисан је у векторску форму 3∈y  ,тако да сваки елемент овог вектора представља бинарну променљиву која одређује припадност k -тог улазног вектора j - тој класи 1 0 k i i j i j ∀ = =  ∀ ≠ y (4.23) На овај начин је излазни скуп већ нормализован. У проблемима класификације није уобичајено да се наводи средња квадратна грешка или њен квадратни корен, али се ипак могу наћи и такви примери. Проблем класификације омогућава директну оцену тачности предикције естиматора изражену у процентима. 70 % примера из полазног скупа је употребљено за оптимизацију параметара вештачке неуронске мреже, а преосталих 30% за тестирање. У табели 4.8 су дати експериментални резултати за 20 понављања (грешка класификације и проценат успешности класификације). Табела 4.8: Експериментални резултати за тест скуп – „Iris”. Број неурона у скривеном слоју Алг. s 5 10 15 20 Er 0,3635±0,0105 0,3611±0,0120 0,3619±0,0127 0,3645±0,0178 ЛКФ % 94,8519±0,0105 95,3913±0,0120 94,5965±0,0127 95,1579±0,0178 Er 0,3662±0,0168 0,3683±0,0132 0,3635±0,0186 0,3603±0,0138 ЛИФ % 94,6667±0,0168 95,1014±0,0132 94,7018±0,0186 95,6491±0,0138 Er 0,3582±0,0138 0,3713±0,0192 0,3627±0,0175 0,3571±0,0132 АСА М % 94,3333±0,0138 94,7246±0,0192 95,3333±0,0175 96,1053±0,0132 - 81 - На слици је 4.5 дат графички приказ процента успешности класификације вештачке неуронске мреже за тест скуп на основу експерименталних резултата који су приказани у табели 4.8. Слика 4.5 Промена успешности класификације вештачке неуронске мреже за тест скуп у зависности од броја неурона. С обзиром на дужину периода рада истраживачке заједнице на Ирис скупу података, он представља један од најпознатијих тест скупова, због чега је и најдуже изучаван. Од ефикасног естиматора се очекује да достигне тачност од 95% у погледу класификације улазног вектора у једну од три класе. Са дијаграма на слици 4.5 се види да сва три развијена алгоритма остварују циљани резултат. АСАМ алгоритам достиже максимум од 96,1053%, ЛКФ 95,3913%, док ЛИФ 95,6491%. Занимљиво је да тачност класификације вештачке неуронске мреже расте са порастом броја неурона. У поређењу са осталим истраживачким резултатима [164] експериментални резултати добијени применом три нова алгоритма машинског учења вештачких неуронских мрежа са Гаусовим активационим функцијама постижу за нијансу вишу тачност. - 82 - 4.3.3. Моделирање „Фридманових” функција У следећем примеру је приказана примена вештачке неуронске мреже за моделирање Фридманових функција [57]. Прва функција је: 2 1 2 3 4 5( ) 10sin( ) 20( 1 2) 10 5f x x x x x xpi= + − + + (4.24) Улазне променљиве су равномерно распоређене у домену [ ]0,1 , 1,..., 5ix i∈ = . Друга и трећа „Фридманова” функција су: 1 2 2 12 1 ( , , , ) ( 1 ) ; ( , , , ) tan f L f C Z R f L C R f L f C R f L C R ϕ − −  = + − =      (4.25) и представљају електричну импедансу и фазни угао респективно, па су стога R отпор, f фреквенција, L индуктивност и C капацитативност. Домени улазних променљивих су: [ ] [ ] [ ] [ ]0,100 ,[O] ; 20, 280 , [Hz] ; 0,1 ,[H] ; 0,11 ,[mF]R f L C∈ ∈ ∈ ∈ Као и у претходном случају у коме је анализарана регресија, улазни скуп је скалиран у домен [ ]1,1− , а излазни у домен [ ]0,1 . Из скалираног улазног скупа и скалираног излазног скупа изабрано је 2000 примера, од којих је 50% употребљено за машинско учење, а преосталих 50% за оцену квалитета спроведеног процеса учења (тест скуп). Тестиране су вештачке неуронске мреже са пет, десет, 15 и 20 неурона у скривеном слоју. s статистика (квадратни корен средње квадратне грешке) је коришћена као тест статистика. У табелама 4.9, 4.10 и 4.11 су приказани експериментални резултати (средња вредност и стандардна девијација s статистике за 20 понављања) за тест скуп, скуп парова који је коришћен за оптимизацију параметара вештачке неуронске мреже и полазни скуп са свим паровима ( tests , opts и svis ). - 83 - Табела 4.9: Експериментални резултати за Фридманову функцију #1. Број неурона у скривеном слоју Алг s 5 10 15 20 tests 0,0185±0,0015 0,0179±0,0026 0,0184±0,0025 0,0189±0,0024 opts 0,0187±0,0015 0,0175±0,0022 0,0182±0,0020 0,0181±0,0018 Л К Ф svis 0,0186±0,0015 0,0177±0,0024 0,0183±0,0022 0,0185±0,0020 tests 0,0177±0,0022 0,0186±0,0013 0,01790,0026 0,0186±0,0018 opts 0,0176±0,0022 0,0186±0,0011 0,0178±0,0023 0,0187±0,0012 Л И Ф svis 0,0176v0,0021 0,0186±0,0011 0,0179±0,0025 0,0187±0,0015 tests 0,0171±0,0028 0,0176±0,0021 0,0181±0,0026 0,0185±0,0017 opts 0,0168±0,0023 0,0176±0,0021 0,0174±0,0021 0,0186±0,0012 А С А М svis 0,0169±0,0025 0,0176±0,0020 0,0178±0,0023 0,0186±0,0014 Табела 4.10: Експериментални резултати за Фридманову функцију #2. Број неурона у скривеном слоју Алг s 5 10 15 20 tests 0,0190±0,0016 0,0193±0,0018 0,0189±0,0016 0,0200±0,0014 opts 0,0184±0,0011 0,0189±0,0012 0,0188v0,0014 0,0191±0,008 Л К Ф svis 0,0187±0,0012 0,0191±0,0014 0,0189±0,0014 0,0196±0,0010 tests 0,0191±0,0019 0,0184±0,0013 0,0190±0,0020 0,0183±0,0016 opts 0,0188±0,0008 0,0185±0,0012 0,0190±0,0018 0,0183±0,0012 Л И Ф svis 0,0190±0,0012 0,0184±0,0011 0,0190±0,0018 0,0183±0,0013 tests 0,0188±0,0015 0,0187±0,0016 0,0184±0,0017 0,0185±0,0017 opts 0,0185±0,0011 0,0182±0,0014 0,0184±0,0013 0,0185±0,0011 А С А М svis 0,0187±0,0012 0,0185±0,0015 0,0184±0,0013 0,0185±0,0012 - 84 - Табела 4.11: Експериментални резултати за Фридманову функцију #3. Број неурона у скривеном слоју Алг s 5 10 15 20 tests 0,0409±0,0167 0,0367±0,0167 0,0393±0,0162 0,0389±0,0174 opts 0,0373±0,0036 0,0381±0,0033 0,0380±0,0030 0,0393±0,0017 Л К Ф svis 0,0403±0,0069 0,0386±0,0071 0,0397±0,0071 0,0402±0,0077 tests 0,0380±0,0172 0,0339±0,0163 0,0410±0,0415 0,0349±0,0157 opts 0,0383±0,0027 0,0373±0,0043 0,0366±0,0047 0,0388±0,0016 Л И Ф svis 0,0394±0,0073 0,0369±0,0065 0,0398±0,0063 0,0379±0,0068 tests 0,0282±0,0152 0,0377±0,0166 0,0384±0,0164 0,0303±0,0164 opts 0,0368±0,0052 0,0369±0,0037 0,0370±0,0037 0,0380±0,0035 А С А М svis 0,0342±0,0052 0,0385±0,0069 0,0389±0,0066 0,0357±0,0066 Експериментални резултати за све три тест функције указују да вештачка неуронска мрежа чији су параметри оптимизирани применом АСАМ алгоритма оцењивања има мању вредност тест статистике у поређењу са ЛКФ и ЛИФ алгоритмима. Овај резултат је директна последица основне идеје АСАМ алгоритма која почива на елиминацији линеаризације нелинеарног модела. Познато је да АСАМ моделује Гаусову расподелу до величина другог реда, за разлику од ЛКФ-а и ЛИФ-а који због линеаризације остварују тачност првог реда. Највећа разлика у тест статистици tests је остварено приликом моделирања треће функционалне зависности, где АСАМ генерише за ~0,01 бољу вредност од остала два алгоритма, што представља за ред величине бољу тачност. Потребно је обратити пажњу и на вредност стандардне девијације статистике s за сва три скупа података. За функције #1 и #2 (табеле 4.9 и 4.10) се може видети да стандардна девијација има за ред величине мању вредност у поређењу са средњом вредношћу s за сва три скупа. Међутим, у трећем примеру - 85 - (табела 4.11) за тест статистику tests стандардна девијација је реда величине средње вредности, што говори у прилог изразите нелинеарности саме тест функције. Ни већи број понављања експеримента (тестирано је и 30, 40 и 50 понављања) нису резултирали смањењем стандардне девијације. У наставку је показано како почетна коваријанса вектора стања 0|0P матрица Q матрица R утичу на конвергенцију развијених алгоритама машинског учења. За анализу овог сегмента коришћена је прва Фридманова функција. а) 1 ; 1 ; 10;p q r= = = б) 1 ; 1 ; 1;p q r= = = в) 100 ; 10 ; 10;p q r= = = г) 100 ; 100 ; 10;p q r= = = Слика 4.6 Конвергенција грешке Er у функцији од броја итерација у логаритамским координатама за различите почетне вредности параметара. ( ) ( )0|0 dim dimp ×= λ λP Ε , ( ) ( )dim dimq ×= λ λQ Ε и ( ) ( )dim dimr ×= y yR Ε , где је Ε јединична матрица одговарајућих димензија. - 86 - д) 100 ; 100 ; 100;p q r= = = ђ) 510 ; 100 ; 10;p q r−= = = е) 510 ; 100 ; 1;p q r= = = ж) 510 ; 100 ; 10;p q r= = = з) 310 ; 100 ; 10;p q r= = = и) 310 ; 10 ; 10;p q r= = = Слика 4.6 (наставак) Конвергенција грешке Er у функцији од броја итерација у логаритамским координатама за различите почетне вредности параметара. ( ) ( )0|0 dim dimp ×= λ λP Ε , ( ) ( )dim dimq ×= λ λQ Ε и ( ) ( )dim dimr ×= y yR Ε , где је Ε јединична матрица одговарајућих димензија. - 87 - С обзиром на то да се приликом сваке иницијализације процеса машинског учења случајним избором бирају почетни прототип вектори из улазног скупа података, сваки процес учења има другачији број итерација. На слици 4.6 су приказани типични примери промене грешке учења у функцији од броја итерације потребних за достизање вредности minEr . Као основни закључак ове анализе може се навести да за исте почетне вредности, АСАМ алгоритам брже конвергира од ЛКФ-а и ЛИФ-а, тј. потребан је мањи број итерација за достизање жељене циљне вредности minEr . Други закључак се односи на број итерација потребних за конвергенцију ЛКФ-а и ЛИФ-а. ЛКФ-у је потребан већи број итерација од ЛИФ-а за достизање жељене вредности грешке учења minEr . Поред овог закључка, требало би указати и на утицај параметара развијених алгоритама машинског учења. Може се уочити и да смањење почетне коваријансе 0|0P вектора стања λ резултира повећањем броја итерација потребних за успешну конвергенцију. Дијаграми указују и на то да повећање почетне коваријансе 0|0P вектора стања λ смањује број потребних итерација за достизање грешке учења minEr . На основу дијаграмских приказа (слика 4.6 (a-и)) уочава се да повећање почетне коваријансе система 0|0P за резултат има смањење броја потребних итерација за ред величине. Овај резултат је од великог значаја, с обзиром на то да се на овај начин уводи интерпретација почетне коваријансе, као и њен утицај на конвергенцију развијених алгоритама машинског учења. Повећање матрице коваријанси шума система Q утиче на смањење броја итерација. Овај резултат је логична последица корака предикције Калмановог филтра, с обзиром на то да предикција коваријансе система представља збир тренутне најбоље оцене коваријансе стања система и матрице шума система. - 88 - Веће вредности матрице коваријанси шума мерења R такође повећавају број итерација. Коваријанса вектора иновације зависи од матрице коваријанси шума мерења R , а њено повећање смањује појачање K , што директно утиче на корак корекције филтра. Као што се на дијаграмима може видети, сва три развијена алгоритма су конвергирала без обзира на вредности параметара. На крају ове анализе би требало извршити поређење параметара развијених алгоритама машинског учења са познатим параметрима приликом употребе Левенберг-Маркеовог алгоритма оптимизације или алгоритма најмањег градијента. У поменутим алгоритмима се уводе константни параметри познатији као параметри учења (нпр. константа момента). Усвајањем одговарајућих нумеричких вредности помоћу ових параметара се може контролисати брзина оптимизације (учења). Аналогно овим параметрима, одговарајуће матрице Калмановог филтра имају сличну улогу. Матрица шума система Q директно утиче на оцену коваријансе система. Повећавањем матрице шума система можемо контролисати дужину инкременталних корака, односно брзину конвергенције филтра. Повећање матрице шума мерења R директно утиче на „поверење” филтра у мерење. Уколико је R велико, филтар ће више веровати кораку предикције ( | 1 1| 1 | 1 1| 1 ˆ ˆ ,k k k k k k k k− − − − − −= = +λ λ P P Q ) и те вредности „сматрати” за оптималне. Као и сви итеративни поступци одређивања минимума функције циља, и Каламанов филтар може одредити један од могућих вишеструких локалних минимума уместо одређивања глобалног минимума. Међутим, у поређењу са „стандардним” алгоритмима оптимизације, Калманов филтар је алгоритам другог реда, с обзиром на то да узима у обзир и локалну закривљеност функције циља. Ова чињеница је од важности за избегавање локалног минимума. На крају, треба нагласити да су матрице - 89 - 0|0P , Q и R уведене као параметри који одређују понашање система, па стога имају дубоку математичко-физичку интерпретацију. 4.3.4. Примена вештачких неуронских мрежа са радијалним активационим функцијама Гаусовог типа на моделирање топологије обрађене површине У овом делу су приказани експериментални резултати моделирања обрађене површине применом вештачких неуронских мрежа са радијалним активационим функцијама Гаусовог типа [196]. Основни циљ овог експерименталног процеса и приказа експерименталних резултата није указивање на недостатке постојећих метода, већ жеља да се покажу могућности примене развијених алгоритама машинског учења за моделирање комплексних инжењерских проблема применом анализираних вештачких неуронских мрежа. Експериментални подаци храпавости обрађене површине добијени су на атомском микроскопу и дати су у виду матрице типа 512 х 512 (што значи да је укупан број примера 262,144). Због изразито великог броја примера, из скупа улазно-излазних парова случајним избором су изабрани подскупови типа 30 х 30. Сви улазни подаци су скалирани у домен [-1,1], а излазни у домен [0,1]. 50% полазног скупа је коришћено за оптимизацију параметара вештачке неуронске мреже. Тестиране су архитектуре са 30 и 50 неурона у скривеном слоју. Експериментални резултати изгледа изабраног сегмента обрађене површине након оптимизације параметара вештачке неуронске мреже дат је на слици 4.7. - 90 - а) б) Слика 4.7 Предикције изгледа сегмента обрађене површине: а) вештачка неуронска мрежа са 30 неурона у скривеном слоју; б) вештачка неуронска мрежа са 50 неурона у скривеном слоју. - 91 - У табели 4.12 је приказана ККСКГ ( s статистика за све примере) за тестиране вештачке неуронске мреже са 30 и 50 неурона у скривеном слоју за 10 понаваљања. Табела 4.12: Експериментални резултати моделирања обрађене површине. Број неурона у скривеном слоју Алгоритам ККСКГ 30 50 ЛКФ tests 0,0560±0,0017 0,0594±0,0022 ЛИФ opts 0,0556±0,0003 0,0579±0,0030 АСАМ svis 0,0550±0,0004 0,0594±0,0061 На основу графичког приказа предикције изгледа изабраног сегмента обрађене површине (слика 4.7 (а,б)), може се закључити да сва три развијена алгоритма машинског учења имају проблем са неравномерном променом излазне величине, односно са изразитом нелинеарношћу. Сва три развијена алгоритма генеришу глатку површ, што се може оправдати с обзиром на основну формулацију Калмановог филтра. Занимљиво је да вештачка неуронска мрежа са мањим бројем неурона у скривеном слоју има мању вредност тест статистике од вештачке неуронске мреже са већим бројем неурона у скривеном слоју. Међутим, овај закључак не може бити генерализован, с обзиром на то да таква оцена захтева теоријску и експерименталну анализу која вишеструко превазилази намеру овог потпоглавља дисертације. Може се уочити и да је стандардна девијација тест статистике за 10 понављања вештачке неуронске мреже са 30 неурона за ред величине мања код ЛИФ-а и АСАМ- а у односу на ЛКФ алгоритам. Такође, занимљиво је да ЛКФ и АСАМ алгоритми машинског учења имају већу вредност тест статистике за архитектуру са 50 неурона од вредности тест статистике ЛИФ алгоритма. - 92 - Развој теоријско-експерименталног модела топологије обрађене површине захтева посебно истраживање, а резултати приказани у овом примеру представљају само проверу перформанси развијених алгоритама машинског учења вештачких неуронских мрежа са радијалним активационим функцијама Гаусовог типа на овом комплексном инжењерском проблему. 4.4. Дискусија Могућности инжењерске примене вештачких неуронских мрежа са радијалним активационим функцијама Гаусовог типа протежу се од апроксимације функционалних зависности, класификације улазних података, процесирања сигнала, идентификације система до моделирања процеса. У том смислу, важно је још једном нагласити предности развијених алгоритама машинског учења, али и навести недостатке. Експериментални резултати развијених алгоритама машинског учења показују довољан ниво тачности неопходних за примену у циљу моделирања инжењерских проблема. Да би се оценила употребна вредност развијених алгоритама машинског учења, изабране вештачке неуронске мреже су тестиране на „стандардним” скуповима података који представљају реалне проблеме регресије/класификације из различитих домена. Директним поређењем са различитим алгоритмима машинског учења, констатовано је да развијени алгоритми генеришу исти ред величине статистике за тест скупове података (у неким случајевима и знатно боље резултате) као и конвенционални приступи. Овај резултат је од изузетне важности за оцену квалитета предикције изабраних вештачких неуронских мрежа након оптимизације параметара применом развијених алгоритама. Параметри ЛКФ-а, ЛИФ-а и АСАМ-а (почетни вектор стања 0|0λ , почетна матрица коваријанси 0|0P , матрица шума система Q и матрица - 93 - шума мерења R ) одређују почетну тачку процеса оцењивања, почетно знање/незнање о систему, промену система током времена и поверење у информације које систем прима из окружења. У поређењу са параметрима детерминистичких алгоритама машинског учења, параметри ЛКФ-а, ЛИФ-а и АСАМ-а имају дубљу физичко-математичку интерпретацију. На овај начин се омогућава примена изабраног типа вештачких неуронских мрежа за различите врсте проблема. Алгоритми су секвенцијалног типа чиме је омогућено и on line машинско учење. Ова предност је искоришћена током решавања проблема симултаног оцењивања положаја мобилног робота и карактеристичних објеката у окружењу (наредно поглавље). Уобичајени приступ у тој области базиран је на оцењивању применом линеаризованог Калмановог филтра. Да би компензовали непознате стохастичке утицаје извршена је интеграција ЛКФ алгоритма оцењивања вектора стања и вештачке неуронске мреже. Експериментални резултати и закључци изведени током развоја нових алгоритама машинског учења (ЛКФ, ЛИФ и АСАМ) представљају основу идеје о интеграцији ЛКФ алгоритма симултаног оцењивања положаја мобилног робота и карактеристичних објеката са вештачким неуронским мрежама. Међутим, поред предности у погледу могућности моделирања комплексних динамичких система, требало би нагласити и недостатке који су запажени током спровођења експерименталног процеса. Један од главних недостатака односи се на нумеричке нестабилности током процеса оцењивања. Често се дешавало да услед нелинеарности проблема инверзија матрица постане немогућа због нумеричких непрецизности. Разлог за појаву нестабилности ове врсте је пре свега у „грубој” примени изведених једнакости без узимања у обзир поступака за побољшање рачунарске стабилности. Овај проблем се веома једноставно може отклонити вештачким повећавањем или смањивањем матрице - 94 - коваријанси |k kP . Примећен је и још један проблем који је директно везан за конвергенцију очекиване грешке учења. Уколико је проблем нелинеаран, а сви реални проблеми то и јесу (тест скупови: Abalone, Wether Ankara, Auto-mpg, Iris и топологија обрађене површине), проблем конвергенције грешке постаје значајан. Уочено је да алгоритам конвергира ка једној вредности грешке учења, што резултира или завршетком процеса или значајним повећањем броја итерација. Конвергенција алгоритма машинског учења (или алгоритма оптимизације у општем случају) ка локалном минимуму није тако редак случај. У случају примене ЛКФ-а, ЛИФ-а и АСАМ-а поменути проблем се може решити директном променом матрице коваријанси у реалном времену током трајања процеса учења. На тај начин би се избегло повремено заробљавање алгоритма у локалном минимуму. Даљи развој ЛКФ, ЛИФ и АСАМ алгоритама машинског учења ће бити посвећен способности промене архитектуре вештачке неуронске мреже (тј. броја неурона) у реалном времену. Оваква способност адаптације би значајно допринела смањењу броја параметара потребних за кодирање улазне информације, а тиме и повећању брзине учења. Занимљиво би било видети да ли би интеграција ненадгледаног са постојећим надгледаним видом машинског учења резултирала бољим резултатима (нпр. одговарајући алгоритам ненадгледаног машинског учења генерише почетне вредности вектора стања 0|0λ и почетне матрица коваријанси 0|0P ) . На овај начин би се искористио максимум расположивих информација потребних за иницијализацију алгоритма надгледаног машинског учења. Сва наведена побољшања ће бити у фокусу у будућим истраживањима. - 95 - 5. СИМУЛТАНО ОЦЕЊИВАЊЕ ПОЛОЖАЈА МОБИЛНОГ РОБОТА И ПОЛОЖАЈА КАРАКТЕРИСТИЧНИХ ОБЈЕКАТА У ОКРУЖЕЊУ Интелигентни унутрашњи транспорт у технолошком окружењу подразумева аутономност у погледу сталног надзора од стране оператера. Уколико би за сваки наредни транспортни план и задатак оператер ручно уносио почетне координате положаја мобилног робота, положаје свих карактеристичних објеката у окружењу, положаје машина алатки и међускладишта, као и планирану путању кретања, неминовно би дошло до грешке приликом уноса. С друге стране, унутрашњи транспорт базиран на оваквом типу мобилних робота се не би значајно разликовао од аутоматски вођених робоколица (у конвенционалном погледу). Концепт интелигентног унутрашњег транспорта, заснован на примени мобилних робота, подразумева да мобилни робот у сваком тренутку током кретања може да одреди свој положај у односу на произвољно изабран спољашњи референтни координатни систем [12,128,193,197,198]. Проблем симултаног оцењивања положаја мобилног робота и положаја карактеристичних објеката у окружењу се може представити следећим питањем:„Да ли је могуће поставити мобилни робот у потпуно непознато окружење, на непознату позицију са непознатом оријентацијом, а да робот самостално започне постепено оцењивање положаја карактеристичних објеката у окружењу, на основу чега ће истовремено и вршити одређивање сопственог положаја?” [14,50]. Већ се у оваквој формулацији полазног проблема назире комплексност основног задатка: развити такав алгоритам оцењивања, који би симултано оцењивао положај мобилног робота на основу непознатог положаја карактеристичних објеката и положај карактеристичних објеката - 96 - на основу непознатог положаја мобилног робота. Решење овог проблема би допринело подизању нивоа аутономности мобилног робота у погледу потребе за сталним надзором од стране оператера. Крајем 90-тих година прошлог века неколико истраживачких институција се издвојило у погледу значаја и броја остварених резултата – Група за мобилну роботику Универзитета у Сарагоси, Аустралијски центар за мобилне роботе (Универзитет у Сиднеју), Институт за технологију у Масачусетсу, Универзитет у Бону (Одељење за рачунарске науке). Након почетног успеха у истраживачкој области придружили су се и реномиране институције као што су Универзитет у Стенфорду, Универзитет у Оксфорду и Универзитет Карнеги Мелон. Током наредног периода, концепт симултаног оцењивања положаја мобилног робота и карактеристичних објеката у окружењу је успешно примењен у различитим типовима окружења. 5.1. Оцењивање положаја карактеристичних објеката у окружењу (изградња мапе окружења) - основни проблеми Основни проблеми који се испољавају су [184]: 1) Статистичка зависност шумова мерења - изградња мапе окружења се може дефинисати као изградња тродимензионалног модела окружења мобилног робота на основу мерења. Сензори нису апсолутно тачни и постојање шума (грешке мерења) је неминовност. Уколико се претпостави да су шумови различитих мерења статистички независни онда би се овај проблем могао решити повишењем фреквенције мерења. Мобилни робот би са више мерења могао да реши почетни проблем. Међутим, у реалним условима, шумови мерења нису статистички независни, па ће повишење фреквенције мерења довести до повећања - 97 - неодређености мобилног робота у погледу познавања свог положаја и својих акција, а на крају и несигурности у погледу изгледа окружења. Грешке приликом извршења управљачких команди акумулирају се током времена и на тај начин се интерпретација сензорске информације значајно мења. 2) Број независних параметара окружења (димензионалност полазног проблема) – број непознатих величина које је потребно одредити приликом изградње мапе окружења је изузетно велики. Оцењивање положаја карактеристичних објеката у реалном времену представља проблем чак и за данашње рачунаре високих перформанси и меморијских капацитета. 3) Препознавање објеката у окружењу – проблем успешног препознавања објеката у окружењу може се дефинисати на следећи начин: Да ли примљена информација о постојању неког објекта заиста одговара реалној позицији тог објекта, односно, да ли та информација одговара чињеничном стању о распореду објеката у окружењу? Успешна идентификација објеката у окружењу је један од основних проблема чије решавање може допринети изградњи поуздане мапе окружења. Важно је напоменути да број хипотеза којима се претпоставља идентификација неког објекта расте експоненцијално са временом. 4) Реално окружење је динамичко – променљива природа окружења представља једну од највећих препрека у процесу мапирања окружења. Објекти у окружењу могу да буду статични и непроменљиви током времена, па се овакви објекти успешно могу имплементирати у оквиру мапе. Наиме, полази се од чињенице да је окружење мобилног робота статичко и да је сам робот једини објекат који може да промени свој положај у простору, а да се сви остали објекти који се крећу обичан шум мерења. - 98 - Апсолутно је јасно да овакав приступ има своје недостатке, тако да проблем успешног моделирања динамичког окружења остаје и даље један од проблема за будућа истраживања. 5) Дефинисање путање кретања – приликом кретања кроз потпуно непознато окружење мобилни робот треба да изврши неки задатак. Међутим, с обзиром на то да се овом приликом робот у потпуности ослања на сензорске информације као и информације о управљању, степен несигурности о позицији, оријентацији и изгледу објеката у окружењу расте током времена. Ако се овој чињеници дода и потреба за дефинисањем трајекторије, целокупан проблем почиње да личи на дечију пошалицу:„Шта је старије, кокошка или јаје?”. Да би путања кретања била успешно одређена неопходне су информације о положају робота и објеката. С друге стране, управо те величине представљају непознате величине које треба одредити. Решења описаног проблема варирају од примене метода оптималног управљања, где се дефинише функција циља и на тај начин одређују време и енергија потребни за спровођење покрета, до примене вештачке интелигенције [36,185]. Претходна анализа основних проблема изградње мапе окружења показује зашто овај проблем представља један од компликованијих проблема са којим се мобилна роботика као научно-техничка дисциплина сусрела. - 99 - 5.2. Математичка формулација проблема Симултано оцењивање положаја мобилног робота и карактеристичних објеката у окружењу представља процес у коме се од робота очекује да изгради мапу окружења (положај карактеристичних објеката) и да истовремено одреди сопствени положај. Проблем подразумева да се мобилни робот налази у непознатом окружењу и да не постоје априорне информације о изгледу окружења. Слика 5.1 приказује стварни положај мобилног робота, стварни положај карактеристичних објеката, оцену положаја мобилног робота на основу примене одговарајућег алгоритма оцењивања и оцену положаја карактеристичних објеката. Мобилни робот у произвољном тренутку 1k − уз примену сензорског система идентификује карактеристичне објекте im и jm . Након идентификације карактеристичних објеката мобилни робот је променио свој положај и у првом наредном тренутку k врши предикцију положаја карактеристичног објекта jm . Слика 5.1 Мобилни робот и карактеристични објекти у окружењу. Треба обратити пажњу да се аквизиција сензорске информације врши између робота и карактеристичног објекта, а да стварни положај карактеристичног објекта није познат. У смислу теорије вероватноће, проблем симултаног оцењивања положаја мобилног робота и карактеристичних објеката у окружењу подразумева одређивање следеће расподеле: - 100 - 0: : 0( , | , , )k k o kp xx m z u (5.1) где су: kx вектор положаја мобилног робота у тренутку k m вектор положаја карактеристичних објеката 0:kz вектор свих прикупљених мерења од почетка кретања до тренутка k 0:ku вектор свих управљања од почетка кретања до тренутка k Расподела два случајна вектора ( , )kp x m треба да буде одређена у сваком временском тренутку k ако су познате тренутне вредности вектора мерења и вектора управљања. Сам проблем оцењивања положаја може бити класификован преко два основна приступа. Први приступ је непотпуно (парцијално) симултано оцењивање положаја – целокупан процес се извршава у реалном времену па се из тог разлога и назива on line приступ: 0: 0:( , | , )k k kp ux m z (5.2) Као што се може видети, једнакост је дата у виду рекурзивног алгоритма оцењивања, у коме се од робота очекује да одреди положај свих карактеристичних објеката m и свој тренутни положај kx . Други приступ представља општији проблем пошто је потребно одредити положај свих карактеристичних објеката m на основу свих локација на којима је мобилни робот у току експлоатације био 0:kx . Математичка формулација је дата преко следеће једнакости 0: 0: 0:( , | , )k k kp x m z u (5.3) Тумачење једначине је: на основу свих познатих мерења 0:kz и свих управљања 0:ku , одредити све положаје 0:kx мобилног робота и истовремено изградити мапу окружења m . Уобичајено је да се овај приступ назива off line приступ, пошто је немогуће спровести га у реалном - 101 - времену са високом фреквенцијом пристизања сензорских информација. Основни разлог је велики број степени слободе проблема (број димензија). С обзиром на разматрани проблем примене интелигентних мобилних робота у унутрашњем транспорту у технолошком окружењу, у овој дисертацији је акценат дат на рекурзивној формулацији, односно на on line приступу. У том смислу, полазећи од почетне оцене 1 0: 1 : 1( , | , )k k o kp − − −x m z u у тренутку 1k − треба одредити 0: : 0( , | , , )k k o kp xx m z u на основу мерења kz и управљања ku у тренутку k . Рекурзивна форма одређује се применом Бајесове теореме. Корак предикције је: 0: 1 0: 0 1 1 0: 1 0: 1 1( , | , , ) ( | , ) ( , | , )k k k k k k k k k kp p p d− − − − − −= ∫x m z u x x x u x m z u x (5.4) Док је корак корекције 0: 1 0: 0 0: 0: 0 0: 1 0: ( | , ) ( , | , , ) ( , | , , ) ( | , ) k k k k k k k k k k k p p p p − − = z x m x m z u x x m z u x z z u (5.5) где ( | , )k kp z x m - представља модел сензора (модел перцепције) мобилног робота, а 1( | , )k k kp u−x x модел кретања мобилног робота. Дакле, рекурзивна форма је једнозначно дефинисана познавањем модела кретања и модела перцепције. Занимљиво је нагласити да уколико се полазна расподела ( , )kp x m распрегне и формулише као 0: : 0( | , , , )k k o kp xx m z u или 0: : 0( | , , , )k k o kp xm x z u , добијају се два основна проблема која су потпуно различита. У првом случају треба одредити вектор положаја мобилног робота на основу познатог положаја карактеристичних објеката, што представља проблем оцењивања положаја – локализације мобилног робота [12,24,128,197,198,204]. У другом случају је потребно одредити искључиво положај карактеристичних објеката на основу познатог положаја мобилног робота – изградња мапе окружења. Оба ова проблема су добро позната и може се констатовати да парцијално представљају потпуно заокружене целине у форми одговарајућих алгоритама - 102 - оцењивања [185]. Међутим, симултано решавање поменутих проблема изискује знатно компликованију математичку формулацију. Грешка у оцени положаја и стварног положаја карактеристичног објекта настаје услед грешке у оцени положаја мобилног робота у коме је карактеристични објекат примећен по први пут. Ова чињеница имплицира да оцене положаја карактеристичних објеката током времена постају корелисанe. На основу претходног се може закључити да релативни положај једног карактеристичног објекта у односу на положај другог карактеристичног објекта може да буде одређен са високом тачношћу, иако је њихов глобални положај недовољно познат или потпуно непознат. Управо ова корелација представља основу самог полазног проблема: након поновне детекције једног карактеристичног објекта, ова информација се преноси до оцена положаја свих осталих карактеристичних објеката. Први истраживачки напори били су посвећени распрезању корелација између карактеристичних објеката што је очигледно био погрешан приступ. Релативни положај једног карактеристичног објекта у односу на положај другог карактеристичног објекта је независан од положаја мобилног робота, што је искоришћено за оцењивање [137] релативног положаја једног карактеристичног објекта у односу на положај другог карактеристичног објекта, а глобална мапа свих положаја је одређивана тек на самом крају процеса. Поред корелације карактеристичних објеката могуће је идентификовати и корелацију између оцењеног положаја мобилног робота и оцењеног положаја карактеристичних објеката. Логично је очекивати да ће већи број мерења једног карактеристичног објекта допринети бољој оцени положаја самог објекта. Као и у претходном случају, и ова информација се, захваљујући корелацији између одоговарајућих параметара, преноси до оцена положаја свих карактеристичних објеката. Занимљиво је да ће оцена положаја једног карактеристичног објекта бити побољшана иако из тог - 103 - положаја мобилни робот не може да идентификује поменути карактеристични објекат. 5.3. Преглед стања у области симултаног оцењивања положаја мобилног робота и карактеристичних објеката Проблем симултаног оцењивања положаја мобилног робота и карактеристичних објеката у окружењу у фокус истраживачке јавности је доспео крајем 80-тих и почетком 90-тих година прошлог века. У првим истраживачким резултатима [167] је успостављена основна веза између теорије оцена и проблема примене спољашњих сензора мобилног робота у циљу одређивања положаја карактеристичних објеката у окружењу. У радовима се уводи математичка композиција трансформације случајног вектора и показује како матрица коваријанси мора да расте након извршене трансформације. Први следећи резултати су дати у [49,108] где су приказане прве примене линеаризованог Калмановог филтра за оцену здруженог вектора стања уз примену ултразвучног сензора као спољашњег сензора. Међутим, тек након ових резултата, научно-стручна јавност је схватила сву комплексност проблема: на основу информације са шумом, добијене од спољашњег сензора, треба извршити оцену положаја карактеристичног објекта и мобилног робота. Истраживачи су покушавали да распрегну иницијалну поставку проблема елиминацијом корелација између карактеристичних објеката. Међутим, истраживачки резултати објављени у [43] доказују да је полазни проблем конвергентан, као и да су корелације између карактеристичних објеката од изузетне важности за процес оцењивања. Први доказ конвергенције проблема симултаног оцењивања положаја мобилног робота и карактеристичних објеката је дат у [47]. Аутори наводе - 104 - да детерминанта матрице коваријанси карактеристичног објекта опада уколико се број мерења повећава, а инфинум представља почетну вредност детерминанте матрице коваријанси срачунате у положају мобилног робота одакле је објекат први пут идентификован. Три најважнија теоретска резултата у смислу конвергенције су: 1) Детерминанта једног блока матрице коваријанси, везан за један и само један карактеристични објекат, смањује се са повећањем броја мерења; 2) Са повећањем броја мерења корелација између оцена положаја карактеристичних објеката расте; 3) Матрица коваријанси вектора положаја карактеристичног објекта одређена је почетном коваријансом положаја мобилног робота. Линеаризовани Калманов филтар је постао „популаран” алгоритам за оцењивање пложаја мобилног робота и карактеристичних објеката у окружењу. Основни разлог због кога велики број истраживача примењује ЛКФ или сличан алгоритам (нпр. алгоритам специфичне апроксимације момената за избегавање линеаризације нелинеарних модела кретања и перцепције) је пре свега у интуитивном приступу и једноставности примене [34]. Неки истраживачи су предложили да се уместо формулације решења применом линеаризованог Калмановог филтра примени информациони филтар [189,201], који је дуал Калмановом филтру. За разлику од Калмановог филтра информациони филтар корелације између елемената вектора стања моделира информационом матрицом, која представља инверзију матрице коваријанси 1−=Ι P , а сходно томе и формулација вектора стања је прилагођена =ξ Ι x . Оцењивање положаја мобилног робота и карактеристичних објеката применом линеаризованог - 105 - информационог филтра (ЛИФ) базирана је на повећању корелације између суседних карактеристичних објеката, посебно након померања мобилног робота. Међутим, примена ЛИФ приступа у информационом простору резултира мањом коначном матрицом коваријанси од очекиване, што није прихватљиво. У [201] је приказан начин маргинализације полазне расподеле који не доводи до вештачки смањене коваријансе коначног положаја карактеристичних објеката. Занимљив приступ је приказан у [32], где је ЛКФ коришћен за оцењивање положаја у локалним координатним системима, док је ЛИФ примењен за трансформацију ове информације у глобални координатни систем. Показује се да комбиновани филтар може да буде примењен са редом величине рачунске комплексности од ( log )O n n за разлику од „стандардног” Калмана код кога је укупна рачунска комплексност 3( )O n . Примена ЛКФ алгоритма оцењивања у глобалном координатном систему неизбежно доводи до неконзистентних оцена. Неконзистентност настаје као резултат несавршености у управљачком и мерном систему мобилног робота услед чега матрица коваријанси расте, посебно посматрано из глобалног координатног система. Решење овог проблема је дато у [33] где се предлаже да се цео процес оцењивања обавља у локалном координатном систему везаном за мобилни робот. Као генерални резултат наводи се да се грешка линеаризације смањује, као и да је побољшана конзистентност процеса оцењивања. С друге стране, у циљу очувања конзистентности, постоје предлози раздвајања глобалне мапе коју формирају оцене положаја карактеристичних објеката на више локалних мапа [32,182]. У овом приступу мобилни робот моделира окружење одговарајућим бројем локалних мапа, а одговарајућа координатна трансформација може да информације из локалних координатних система пребаци у глобални координатни систем. Применом овог метода коваријанса - 106 - карактеристичних објеката је мања, с обзиром на то да је одређена у локалном координатном систему. Међутим, иако постоје развијене методе избора локалних координатних система поставља се питање потребног броја у циљу одржања конзистентности. Конзистентност проблема симултаног оцењивања положаја мобилног робота и карактеристичних објеката је анализирана у [15,77,79,81,153]. Показано је да конзистентност ЛКФ алгоритма зависи од оцене грешке оријентације мобилног робота, с обзиром на то да уколико она пређе граничну вредност филтар постаје неконзистентан [15]. Приказани aлгоритми развијени су на бази повећања конзистетности. Јакобијан модела кретања израчунава се у положају мобилног робота пре увођења мерења, а прва оцена положаја карактеристичних објеката се користи за Јакобијан сензорског модела. Као коначни закључак спроведене анализе аутори наводе да су предложени алгоритми бољи (у смислу конзистентности) од ЛКФ-а. Математички доказ конвергенције полазног нелинеарног проблема процеса оцењивања је дат у [79] где су анализарани различити случајеви. Неконзистентност настаје услед: 1) Линеаризације нелинарних модела кретања и сензорског модела. Јакобијани ( , )∇ ⋅ ⋅xf (Јакобијан модела кретања) и ( , )∇ ⋅ ⋅xh (Јакобијан сензорског модела) израчунавају се у тренутној оцени положаја мобилног робота па се тиме уводи грешка у апроксимацију; 2) Велике стандардне девијације оцене грешке оријентације мобилног робота. Иако је и теоретски и експериментално доказано да ЛКФ постаје неконзистентан у проблемима у којима постоји велики број карактеристичних објеката, ЛКФ је и даље најпопуларнији алгоритам за решавање проблема симултаног оцењивања положаја мобилног робота и карактеристичних објеката. Међутим, неки истраживачи су развили друге - 107 - алгоритме оцењивања који су базирани на секвенцијалним Монте Карло методама [186]. Ови алгоритми представљају напредну статистичку технику, која на основу познате расподеле случајним избором одређује произвољан број референтних стања мобилног робота, која симулирају кретање и перцепцију мобилног робота на основу нелинеарних модела. Основни проблем који се појављује везан је за помоћну расподелу на основу које треба случајним избором изабрати одговарајући број референтних стања. Постоје разни предлози решења овог проблема базирани на „семпловању” полазних нелинеарних модела кретања/перцепције или напредној интеграцији секвенцијалних Монте Карло метода са линеаризованим Калмановим филтром или алгоритмом специфичне апроксимације момената (АСАМ) на бази Калмановог филтра [94]. Поред приступа моделирању радног окружења који је заснован на карактеристичним објектима које мобилни робот идентификује уз примену одговарајућих сензора, могуће је моделирати радно окружење мрежом пиксела произвољних димензија који садрже информацију о томе да ли је посматрни пиксел заузет или не [188]. Поједини истраживачи су применили секвенцијалне Монте Карло методе за моделирање мрежног типа окружења [61,64]. Већина поменутих резултата остварена је применом сензора растојања у виду ласерских или ултразвучних давача. Овакав приступ је био доминантан у поменутим резултатима, али закључци изведени на основу спроведене анализе о карактеристикама проблема имају општи карактер и не зависе од врсте сензора. Примена система препознавања на бази калибрисане камере је приказана у [44]. Развијени систем моделира окружење применом карактеристичних објеката идентификованих на слици након пријема информација од камере. Иако поменути приступ не врши изградњу мапе окружења у изворном смислу, оцена положаја - 108 - карактеристичних објеката се користи за оцену положаја мобилног робота (енг. ego motion estimation). Оригинални приступ представљен у [44], проширен је увођењем суме Гаусијана за моделирање „дубине слике” (удаљеност карактеристичних објеката) [168,169] и увођење модела реципрочне удаљености идентификованих карактеристичних објеката на слици [37,38]. У интервјуу са двојицом водећих истраживача у области се наводи да је сам полазни проблем оцењивања положаја мобилног робота и карактеристичних објеката решен, као и да су физичке и математичке основе проблема познате [56]. Међутим, као коначни закључак се наводи потреба за наставком развоја парадигме у динамичким окружењима, као и развоја система који би омогућио оцењивање параметара без ограничања у времену трајања процеса. 5.4. Примена линеаризованог Калмановог филтра за симултано оцењивање положаја мобилног робота и карактеристичних објеката у окружењу Примена ЛКФ алгоритма подразумева следеће претпоставке: 1) шум је адитиван, што значи да се његов утицај може додати процесу; 2) шум је бео (некорелисан и подлеже Гаусовој расподели ~ ( ; , )k k kNε ε 0 А ) Након увођења основних претпоставки о шумовима могуће је дефинисати модел кретања мобилног робота као: 1 1( | , ) ( , )k k k k k k kp − −→ = +x x u x f x u w (5.6) док је сензорски модел - 109 - ( | , ) ( , )k k k k kp → = +z x m z h x m v (5.7) где сходно претпоставкама о шумовима важи да је ~ ( ; , )k k kNw w 0 Q и ~ ( ; , )k k kNv v 0 R ; матрице kQ и kR представљају матрице коваријанси шума система и шума мерења респективно. Вектор стања система kx је дефинисан као TT T k r  =  x x m . Дакле, елементе вектора стања система чине оцена положаја мобилног робота rx и оцене положаја свих карактеристичних објеката m . Применом познатог поступка теорије оцењивања [17,47] може се одредити очекивана вредност: | 0: ˆ |k k k kE     =        x x z m m (5.8) и матрица коваријанси | 0: | ˆ ˆ | ˆ ˆ( ) T xx xm k k k k k k kT xm mm k kk k E   − −     = =      − −       P P x x x x P z P P m m m m (5.9) условне расподеле 0: : 0( , | , , )k k o kp xx m z u . Предикција очекиване вредности и коваријансе расподеле су дефинисане једначинам (3.39) и ( 3.43): | 1 1| 1 , | 1 , | 1 ˆ ˆ( , )k k k k k T xx k k xx k k − − − − − − = = ∇ ∇ +x x x f x u P fP f Q (5.10) ∇f је Јакобијан функције ( , )⋅ ⋅f срачунат у тренутној оцени положаја мобилног робота 1| 1ˆ k k− −x . Модификација вредности момената првог и другог реда након новог мерења kz z је дата као: | | 1 | 1 1 1 | | 1 ˆ ˆ ˆ ˆ( , ) ˆ ˆ k k k k k k k k k k k T k k k k k k k − − − − −      = + −          = − x x W z h x m m m P P W S W (5.11) а матрица иновације kS и тежинска матрица kW су: - 110 - | 1 1 | 1 T k k k k T k k k k − − − = ∇ ∇ + = ∇ S hP h R W P h S (5.12) Јакобијан функције мерења ( , )⋅ ⋅h срачунат је са тренутно најбољим оценама положаја мобилног робота | 1ˆ k k−x и положаја карактеристичних објеката 1ˆ k−m . Применом приказаног поступка могуће је извршити оцењивање положаја мобилног робота и положаја карактеристичних објеката у сваком тренутку k . Међутим, претходне једнакости су валидне само уколико вектор управљања није стохастичка величина. Као инжењери знамо да роботски управљачки систем није идеалан, па је потребно моделирати несавршености које доводе до неодређености. Ако је управљање стохастичка векторска величина онда је корак предикције линеаризованог Калмановог филтра: , | 1 | 1 1| 1 1 , | 1 , 1| 1 ˆ ˆ ˆ( , ) ˆ r k k k k k k k k T T xx k k xx k k u u u x x f x u m P fP f f C f − − − − − − − −   = =     = ∇ ∇ + ∇ ∇ (5.13) где је са uC обележена матрица коваријанси вектора управљања ,~ ( , )k k u kNu u C . Треба обратити пажњу да се предикција положаја мобилног робота одређује на основу познатог положаја у тренутку 1| 1k k− − и познавања закона кретања мобилног робота 1| 1ˆ( , )k k k− −f x u . С друге стране, оцене положаја карактеристичних објеката остају константне услед чињенице да су карактеристични објекти стационарни (претпоставка о статичком окружењу). Увођење нових оцена положаја карактеристичних објеката у алгоритам врши се повећавањем броја елемента вектора стања ( x x mn n n+→  )након детекције новог карактеристичног објекта. Проширивање вектора стања је крајње тривијално: - 111 - TT T T k r n  =  x x m m (5.14) nm је положај новог карактеристичног објекта задат у спољашњем координатном систему и представља функцију положаја мобилног робота и мерења kz , односно: , ˆ( , )n n r k k=m m x z (5.15) Поред модификације вектора стања, потребно је извршити и модификацију матрице коваријанси: ( ) ( ) ( ) T xx xm xm x n T T k xm mm mm x n T T T T T T xm x n mm x n x n mm x n z n z n  ∇   = ∇   ∇ ∇ ∇ ∇ + ∇ ∇  P P P m P P P P m P m P m m P m m Q m (5.16) што представља уобичајени поступак увођења неодређености након спроведене линеарне трансформације стохастичке променљиве [14,17,50,83,141,165]. Као што се види, једначина (5.16) има општу структуру дефинисану са (5.9). У наставку ће бити приказан начин примене алгоритма линеаризованог Калмановог филтра. Претпоставља се да се робот креће у равни, па ће стога кретање бити моделирано као раванско кретање. Систем има три степена слободе који чине вектор стања: [ ]Tr r r rx y θ=x (5.17) где ,r rx y представљају координате тежишта мобилног робота у односу на спољашњи координатни систем, а угао rθ одређује оријентацију мобилног робота. Модел промене стања је представљен следећом релацијом: 1 1( | , ) ( , )k k k k k k kp − −→ = +x x u x f x u w (5.18) Иако је термин модел промене стања погоднији, није грешка ни да се модел промене стања назове модел кретања. Мобилни робот из стања које је - 112 - дефинисано вектором 1k−x у тренутку 1k − управљањем ku прелази у стање које је одређено вектором kx у тренутку k . С обзиром на то да мобилни робот мора да промени и позицију и оријентацију да би променио стање, сасвим је јасно да то може бити остварено једино кретањем. За потребе симулације усвојен је брзински модел кретања мобилног робота, где су транслаторна и угаона брзина усвојена за управљања. Вектор управљања је: [ ]Tk k kv ω=u (5.19) док је модел кретања дат у следећем облику: , , 1 , 1 , | 1 , , 1 , 1 , , 1 cos( ) sin( ) ) r k r k k r k r k k r k r k k r k r k r k k x x v t y y v t t θ θ θ θ ω − − − − − − + ∆        = = + ∆       + ∆    x (5.20) Где су: ,r kx - x координата мобилног робота у тренутку k , ,r ky - y координата мобилног робота у тренутку k , ,r kθ - оријентација мобилног робота у тренутку k , kv - транслаторна брзина мобилног робота, kω - угаона брзина мобилног робота, t∆ - инкремент промене времена. Основни кинематички модели кретања мобилних робота који се могу наћи у литератури углавном су детерминистичке природе и почивају на „апсолутно” тачним вредностима познатих и непознатих величина. Међутим, у реалним условима, више је него изражена стохастичка природа процеса па самим тим детерминистичке кинематичке једначине - 113 - морају да се прошире додатним члановима ради сагледавања целокупног проблема. Узроци настајања шума у систему приликом експлоатације варирају од трења између конструктивних елемената система, трења и проклизавања између точкова мобилног робота и подлоге, па до грешака приликом извршавања команди управљања. На слици 5.2 приказан је мобилни робот који се креће у равни (три степена слободе) и који треба да из тачке А дође у тачку В сходно управљањима. Слика 5.2 Приказ последица постојања шума у управљачком систему мобилног робота. Резултат је одређен симулацијом модела кретања мобилног робота (5.20) у MATLAB® програмском окружењу. Црном бојом означена је трајекторија кретања без шума док је црвеном означено реална трајекторија приликом кретања мобилног робота. Приметно је да у крајњем положају мобилног робота у тачки В постоји грешка у оба транслаторна правца (грешка у позицији), као и грешка у оријентацији. Положај p1 представља онај положај мобилног робота који је дефинисан детерминистичким кинематичким једначинама, док је положај p2 резултат постојања шума у самом систему. На основу слике 5.2 и претходних ставова веома лако се може закључити о потреби увођења стохастичких једначина у анализу кретања које, за разлику од - 114 - детерминистичких кинематичких једначина могу, са довољном тачношћу да моделирају шум који настаје. Потребно је нагласити да осе координатног система на слици 5.2 нису с разлогом обележене с обзиром на то да тренутно не играју значајнију улогу у овом илустративном примеру. За потребе симулације усвојен је сензорски модел мобилног робота који се базира на идентификацији карактеристичних објеката у окружењу. Основна идеја, која је уједно и претпоставка да се, за сваки објекат у окружењу мобилног робота који је идентификован сензорским подсистемом, може одредити растојање и оријентација објекта у односу на тренутни положај мобилног робота. Такође, претпоставља се да робот може да идентификује сваку класу карактеристичних објеката помоћу величине која се назива параметар идентификације iks . Вектором идентификације се може дефинисати боја објекта, висина, ширина, дебљина итд. Функција идентификације карактеристичних објеката је дата као: 1 2 1 2 1 2 1 2 ( ) { , , ... } , ..., n k k k n n k k k k k k k n k k k r r r s s s ϕ ϕ ϕ               = =                      f z f f f (5.21) где су ikr и i kϕ растојање и оријентација објекта респективно у односу на мобилни робот, док је n број карактеристичних објеката у једном мерењу и у општем случају је променљива величина. Ако са ,jx jym m обележимо х и у координате положаја карактеристичних објеката, онда је сензорски модел: 2 2 2 2 2( ) ( ) tan 2( , ) n jx r jy rk r n k jy r jx r r n k j s m x m yr a m y m x s s σ σϕ σ ε ϕ θ ε ε    − + −        = − − − +               (5.22) - 115 - где су са 2 r σ ε , 2φσ ε и 2 s σ ε дати шумови мерења за које се претпоставља да су међусобно независни. Након увођења модела кретања и модела сензора мобилног робота, могуће је представити ЛКФ алгоритам за симултано оцењивање положаја мобилног робота и карактеристичних објеката у окружењу. Алгоритам је дат у табели 5.1. Табела 5.1: Псеудокод линеаризованог Калмановог филтра за симултано оцењивање положаја мобилног робота и карактеристичних објеката. 2 2 2 2 2 1| 1 1| 1 , , | 1 1 , , , , | 1 , | 1 1. ( , , , ) cos( ) ˆ2. ( , ) sin( ) 3. ( , ) ; ( , , ) 4. v r s k k k k k k r k k r k k k k k k r k k r k k r k k u T xx k k xx k k x v t t y v t t t diag diag x x u Алгоритам ЛКФ x P u z x f x u C R P fP f f ω ϕσ σ σ σ σ θ ω θ ω θ ω ε ε ε ε ε − − − − − − − − + ∆ + ∆    = = + ∆ + ∆   + ∆  = = = ∇ ∇ + ∇ 2 2 , , , , , 1 | 1 | 1 | | 5. 6. ( ) ( ) ˆ ˆ7. ; tan 2( , ) 8. ( ) ˆ ˆ9. T u Ti i i k k k jx r k jy r ki i i k k k jy r k jx r k r k i T i iT t k k k k k k k k k k for all observed features r do if landmark hasbeenseen before m x m y a m y m x u x C f z z H z K P H H P H R x x ϕ θ − − − ∇  =     − + −  = = ∇   − − −  = + = 1 | | 1 , , , | 1 , | 1 , , , | 1 ˆ( ) 10. ( ) 11. ˆ cos( ) ˆ ˆ ˆ12. ( , ) sin( ) ˆ 0 13. i i i k k k k i i k k k k k k i i j x k k r k i i n n r k k k j y k k k k r k j s x xx k k aug else augment state vector with new feature r r K z z P I K H P x m m m x z m x m P P J ϕ θ ϕ θ − − − − − + − = −    +    = = = + +         = , | 1 | | 14. 15. 16. 17. ˆ18. , x k k T aug aug n n k k k k end if end for return x z 0 J 0 R I 0 0 J 0 I 0 m 0 m x P −           =    ∇ ∇  Улазне величине су вектор стања 1| 1ˆ k k− −x и коваријанса 1| 1k k− −P у тренутку 1k − , управљање ku у тренутку k и вектор мерења kz у тренутку k (ред бр.1). У реду бр.2 се врши предикција положаја мобилног робота након - 116 - спроведеног управљања ku . Приликом предикције мењају се само позиција и оријентација мобилног робота, а положај карактеристичних објеката остаје исти (претпоставка статичког окружења). У реду бр.4 се врши предикција коваријансе након спроведеног инкременталног кретања. Након предикције првог и другог момента вектора стања мобилног робота потребно је за све објекте који су идентификовани и који се већ налазе у вектору стања извршити корак корекције њиховог оцењеног положаја на основу сензорске информације kz . У реду бр.7 се врши предикција положаја карактеристичног објекта на основу последње информације kz и израчунава Јакобијан нелинеарне трансформације сензорског модела ˆi ik k= ∇xH z . Алгоритам се наставља кораком модификације оцена положаја мобилног робота и карактеристичних објеката и коваријансе. Прво се израчунава тежинска матрица ( Калманово појачање) ikK , а након тога вектор стања |ˆ k kx и коваријанса |k kP у тренутку k . Уколико је идентификован нови карактеристични објекат, прво се оцена његове позиције придружује вектору стања |ˆ k kx , а затим се и коваријанса објекта придружује коваријанси |k kP . Корак корекције алгоритма може бити спроведен на два начина. Први начин је приказан у оквиру табеле 5.1 и назива се инкрементална корекција. Корекција оцене положаја се спроводи увођењем једног по једног мерења у алгоритам (for петља у оквиру алгоритма). Други начин корекције се заснива на формирању здруженог вектора свих мерења у тренутку k : ( ) ( ) ( )1 2 TT T Ta nk k k k =   z z z z… (5.23) а након тога и Јакобијана сензорског модела ( ) ( ) ( )1 2 TT T Ta nk k k k =   H H H H… (5.24) - 117 - где је са n обележен укупан број идентификованих карактеристичних објеката у тренутку k . Избор начина корекције није од пресудног значаја, али треба нагласити да у првом случају није потребно формирати додатне променљиве већ искључиво користити оне које се већ налазе у меморији филтра, док је у другом случају неопходно увести akz и a kH чиме се успорава брзина извршавања корака корекције. 5.5. Примена линеаризованог Калмановог филтра у MATLAB® програмском окружењу – резултати симулације За потребе симулације проблема симултаног оцењивања положаја мобилног робота и карактеристичних објеката у окружењу развијен је посебан код у MATLAB® програмском окружењу. Усвојено је да се мобилни робот креће по затвореној путању правоугаоног облика укупне дужине ~7 [m]. Дуж путање је постављен 21 карактеристични објекат које мобилни робот идентифукује применом сензора растојања. За анализу перформанси филтра није од важности да ли су у питању ласерски давачи растојања или ултразвучни давачи растојања. Усвојено је да сензор обезбеђује информацију о релативном растојању и релативном углу идентификованог карактеристичног објекта у односу на локални координатни систем везан за робот. Сензорска информација i -тог карактеристичног објекта је дата као: Ti i i k k kr ϕ =  z . У спроведеним експериментима усвојене су следеће вредности параметара: брзина кретања мобилног робота је [ ]2v m s= , а угаона брзина зависи од жељене промене оријентације. Стандардне девијације управљања ku су [ ]0,01v v m sσ = , [ ]1 sωσ = ° . Максимални домет сензора растојања који се налазе на предњој страни мобилног робота је max 0,3 [ ]R m= , а стандардне девијације мерења су [ ]0,01r mσ = , [ ]5φσ = ° . - 118 - На сваких 0,01[ ]s одређује се нови вектор управљања и врши аквизиција сензорске информације. Почетни положаја мобилног робота је [ ]0|0 0,1[ ] 0,1[ ] 0 [ ] Tm m= − − °x , коваријанса је ( )0|0 0,0,0diag=P . Анимација симулације је приказана на слици 5.3 (а-к). Из почетног положаја 0|0x мобилни робот треба да прати унапред задату путању и да током кретања континуално оцењује свој положај и положај карактеристичних објеката. Након детектовања карактеристичног објекта, оцена његовог положаја се придружује вектору стања |k kx и матрици коваријанси |k kP . На слици 5.3 се може видети да током кретања, коваријанса детектованих карактеристичних објеката расте услед шумова у управљачком систему ( vσ и ωσ ). Сваки следећи детектовани карактеристични објекат има већу почетну коваријансу него претходни, с обзиром на то да се „поверење” у оцену положаја мобилног робота током времена смањује пошто , |r r k kx xP расте. На слици 5.3 се може уочити и да са повећањем броја мерења једног карактеристичног објекта поверење робота у положај детектованог објекта расте. Ова чињеница представља теоретски резултат који је и експериментално потврђен [47]. Основна карактеристика проблема симултаног оцењивања положаја мобилног робота и карактеристичних објеката је да поновна идентификација објеката, чија је оцена положаја већ део вектора стања |k kx , резултира смањењем несигурности у положај самог мобилног робота али и свих карактеристичних објеката. Поменута карактеристика је приказана на слици 5.3 з)-к), где се може видети како коваријансе свих карактеристичних објеката значајно опадну након идентификације објекта који је већ на самом почетку кретања детектован, услед постојања корелација између свих карактеристичних објеката. Стварна путања симулираног мобилног робота и ЛКФ оцена путање су дати на слици 5.4. - 119 - а) б) в) г) д) ђ) е) ж) з) и) ј) к) Слика 5.3 Резултати симулације примене ЛКФ алгоритма. Приказ положаја мобилног робота и карактеристичних објеката. Услед постојања грешке кретања коваријанса расте (а-к). Након идентификације првог објекта, матрица коваријанси се смањује м). Важно је нагласити да су главне осе елипси коваријанси карактеристичних објеката увећане ради бољег графичког приказа током симулације. - 120 - Слика 5.4 Стварна путања означена црвеном и ЛКФ оцена путање мобилног робота представљена плавом бојом. На овом илустративном примеру се уочава како неодређености управљачког и сензорског система мобилног робота утичу на оцену положаја. Са повећањем грешака управљачког и сензорског система мобилног робота и ЛКФ оцена положаја (а тиме и путање) више одступа од стварне. Да би у потпуности приказали перфромансе ЛКФ-а претпоставиће се да се приликом извршавања управљачке команде дефинисане вектором управљања ku појављује додатни елемент управљачке команде, која настаје као резултат конструктивних карактеристика и несавршености приликом израде компонената мобилног робота. Један од примера који појашњава појаву ових величина је пречник точка мобилног робота, који је променљив дуж обода точка (аналогно точковима и пнеуматицима код аутомобила). Ова променљива вредност највише зависи од физичких и механичких карактеристика материјала точка. Управљање ku је дато у следећој форми: s k k bias= +u u u (5.25) - 121 - Односно: s k biask s k biask v vv ω ωω       = +           (5.26) где biasv и biasω представљају унапред одређене константне величине. Ови параметри могу да буду одређени након спровођења off line калибрационе процедуре [26] или применом неког од метода оцењивања ових параметара у реалном времену [89,118]. За потребе спровођења симулације сматраће се да је нумеричка вредност параметара biasv и biasω позната. Усвојене вредности су: 3 510 10 T bias − − = − u (5.27) Да би анализирали утицај ове нежељене појаве на перформансе ЛКФ-а алгоритма усвојено је да се робот креће по истој затвореној правоугаоној путањи. За разлику од претходног случаја, где након повратка у почетни положај мобилни робот прекида кретање, у овој симулацији робот наставља кретање по истој путањи све док опет не дође у почетни положај. На овај начин, мобилни робот ће два пута да пређе исту путању и два пута да „затвори” петљу. Оригинални термин у референтној литератури је closing the loop (видети [14,15,47,50,185]). На сликама 5.5 и 5.6 је приказана грешка оцене и 2σ границе оцењене линеаризованим Калмановим филтром. На дијаграмским приказима се може видети веома занимљива ситуација. У просеку је потребно ~340 итерација за завршетак првог сегмента кретања (долазак по први пут у почетни положај након праћења задате трајекторије). Види се да се управо након 340-те итерације појављује пад вредности оцењених 2σ граница, услед идентификације карактеристичних објеката који се већ налазе у оквиру вектора стања и матрице коваријансе. Након овог догађаја, стандардна девијација наставља да расте, па се око ~715-те итерације опет понавља затварање путање кретања мобилног робота. - 122 - Као што је познато [17], да би филтар био конзистентан неопходно је да оцена грешке (положаја) буде унутар региона ограниченог 2σ границама. Као што се може видети, у случају када се усвоји да нема додатног управљачког импулса услед конструктивних карактеристика мобилног робота, ЛКФ оцена положаја остаје у 2σ границама током трајања кретања. Слика 5.5 Оцена грешке положаја и 2σ границе за оцену грешке положаја (95% интервал поверења). На слици је приказана промена параметара када додатна управљачка команда настала као резултат несавршености конструктивних спојева нема утицај на кретање мобилног робота. Међутим, када постоји додатни управљачки импулс резултат је потпуно другачији (слика 5.6). У неколико наврата грешка оцене је већа од „дозвољене”. Претходна констатација је посебно видљива за грешку оцене r y координате и оријентације мобилног робота. С обзиром на то да оптималност филтра директно зависи од његове конзистентности [17], разумљиво је зашто је битно да оцена филтра остане у границама током трајања кретања мобилног робота, односно током процеса оцењивања. - 123 - Слика 5.6 Оцена грешке положаја и 2σ границе за оцену грешке положаја (95% интервал поверења). Слика представља промену параметара када је узет у обзир утицај конструктивних карактеристика на кретање мобилног робота. Када се спроводи симулација, конзистентност филтра се одређује формирањем квадратне форме која се назива нормализована грешка оцењивања: 1 1 | | | | | | ˆ ˆ( ) ( )T Tk k k k k k k k k k k k k k kε − − = − − =x x P x x x P x  (5.28) и применом следећег теста. Под претпоставком да је филтар конзистентан, као и да је линеаран и да подлеже Гаусовој расподели, kε мора да подлеже 2 xn χ расподели са xn степени слободе, где је xn број димензија вектора kx ( x n k ∈x  ): [ ]k xnεΕ = (5.29) Тест се спроводи за произвољан број Монте Карло симулационих понављања N , а тест статистика је 1 1 N i k k iN ε ε = = ∑ (5.30) - 124 - У том случају, kN ε има ( )2xnχ α расподелу са dim( ) 3N N=x степени слободе. За потребе анализе спроведено је 50N = понављања, па се на основу стандардних вредности за ( )2 xn χ α расподелу одређује интервал у коме се са вероватноћом од 95% мора налазити статистика - ограничени скуп { }min max,kε ε ε∈ , односно: [ ]( )min max 0 min max | 1 ; 2,36 ; 3,72 0,05 ; 50 kP H N ε ε ε α ε ε α ∈ = −  ⇒ = = = =  (5.31) где 0H означава полазну хипотезу да је филтар конзистентан, као и да је линеаран и да подлеже Гаусовој расподели. Уколико је вредност нормализоване грешке оцењивања значајно већа од maxε за филтар се каже да је оптимистичан, а уколико је вредност нижа од minε филтар је конзервативан. На слици 5.7 је приказана промена нормализоване грешке оцењивања одређена након 50 Монте Карло понављања задате путање. У самом почетку кретања нормализована грешка оцењивања kε се налази у границама одређеним ( )2 xn χ α тестом. Међутим, већ након 100-те итерације ЛКФ постаје оптимистичан с обзиром на то да је оцењена коваријанса мања од реалне. Нагли пад вредности се јавља након затварања прве путање у тренутку када робот успешно идентификује познате карактеристичне објекте који су већ компоненте вектора стања |k kx (~340- ти корак). Након затварања путање, филтар наставља да потцењује стварну грешку и до краја симулације остаје оптимистичан. - 125 - Слика 5.7 Нормализована грешка оцењивања (НГЕ) kε одређена након 50 Монте Карло понављања. Приметно је да током кретања мобилног робота линеаризовани Калманов филтар потцењује праву вредност коваријансе. ЛКФ-у се може „вештачки” повећати коваријанса подешавањем одговарајућих параметара свих шумова. Уколико се повећају стандардне девијације шумова вектора управљања ku ( vσ и ωσ ) и сензорског система ( Rσ и φσ ) добија се промена нормализоване грешке оцењивања као на слици 5.8. Током трајања кретања мобилног робота вредности нормализоване грешке оцењивања углавном се налазе у границама интервала { }min max,kε ε ε∈ . Међутим, као што се може видети, ЛКФ не може конзистентно да изврши затварање путање пошто том приликом постаје оптимистичан. Већа коваријанса резултира повећањем интервала у коме је ЛКФ оптималан, али се види да на самом крају кретања постаје оптимистичан. Након спровођења више симулација (различит број Монте Карло понављања и различит број понављања путање кретања) можемо закључити да је неминовно да ЛКФ потцени стварну грешку. Овај резултат је у складу са теоретским и експерименталним резултатима [15,47,77,81]. Важно је нагласити да промена нормализоване грешке оцењивања има другачији облик али идентичан тренд са резултатима који - 126 - су приказани у [15]. Разлика је настала услед различитог модела кретања, избора окружења (у смислу распореда карактеристичних објеката) и дужине путање, као и различитог начина примена ЛКФ алгоритма у виду одговарајућег софтверског кода. Ове разлике не утичу на крајњи закључак анализе спроведен у истраживањима у оквиру ове дисертације - неминовно је да ЛКФ потцени стварну грешку. Слика 5.8 Нормализована грешка оцењивања (НГЕ) kε за усвојену малу коваријансу грешке оријентације. Утицај конструктивних карактеристика на конзистентност филтра је приказан на слици 5.9. Евидентно је да конструктивне карактеристике чији утицај није моделиран у оквиру модела кретања мобилног робота значајно смањују конзистентност филтра. Као и у првом случају, филтар постаје оптимистичан након ~100 итерација. Нагли пад вредности нормализоване грешке оцењивања је у директној вези са затварањем путање кретања. Може се приметити да су вредности нормализоване грешке оцењивања веће него у случају када имамо „идеалну” конструкцију мобилног робота. Максимална вредност kε је скоро 20, а након затварања путање вредност нормализоване грешке оцењивања опада на шест, одакле наставља контиунуално да расте све до краја кретања мобилног робота. - 127 - Слика 5.9 Утицај конструктивних карактеристика на нормализовану грешку оцењивања kε . Приметно је да су вредности нормализоване грешке оцењивања kε веће него у случају када не постоји додатна грешка управљања. Потцењивање стварне коваријансе је неизбежно и само је питање времена када ће филтар постати оптимистичан. Нелинеарни модел кретања представља један од разлог због кога кога филтар постаје неконзистентан. Да би применили линеаризовани Калманов филтар неопходно је линеаризовати модел кретања и сензорски модел мобилног робота. Линеаризацијом се уводи грешка у кораку предикције коваријансе , | 1xx k k−P , с обзиром на то да је потребно израчунати Јакобијан модела кретања ∇xf срачунат у оцењеном положају мобилног робота | 1k k−x . Иста констатација важи и за Јакобијан сензорског модела ∇xh . Линеаризација неизбежно резултира увођењем додатне грешке која се рефлектује на конзистентност филтра, а тиме и на његову оптималност. На основу експерименталних резултата јасно је да примена ЛКФ у „стварном” свету подразумева моделирање свих оних грешака које не могу бити експлицитно уведене одговарајућим математичким моделом. Иако је у научно-стручној литератури могуће пронаћи резултате који се директно - 128 - односе на анализу и моделирање ових конструктивних несавршености [26,68,89,118,158], због комплексности проблема је тешко очекивати да један (и само један) математички модел представља решење. Чак и када је развој оваквог модела основни циљ, увек се приликом примене појави неки његов нови сегмент који није било могуће предвидети у иницијалној поставци. У том смислу, у наставку овог поглавља је приказан алгоритам који представља интеграцију вештачких неуронских мрежа са линеаризованим Калмановим филтром. Алгоритам је развијен за симултано оцењивање положаја мобилног робота и карактеристичних објеката у реалном времену. Током кретања мобилног робота у окружењу алгоритам модификује тежинске односе вештачке неуронске мреже, чиме се врши адаптација на нове услове у окружењу, што „стандардни” приступ оцењивању положаја мобилог робота и карактеристичних објеката у окружењу применом линеаризованог Калмановог филтра не омогућава. 5.6. Алгоритам неуронског линеаризованог Калмановог филтра Линеаризовани Калманов филтар почива на претпоставкама белог шума у моделу кретања и сензорском моделу мобилног робота. На овим основама је могуће извести ЛКФ у у облику одговарајућег математичког модела. Симулацијом је недвосмислено утврђено да након извесног времена ЛКФ постаје оптимистичан, чиме је угрожена и тачност оцене вектора стања. У реалним условима, када се ЛКФ примењује на мобилном роботу у реалном окружењу, немоделирани проблеми могу још више угрозити очекиване перформансе. Неки од примера ових немоделираних утицаја су: обојени шум у управљачком систему, проклизавање точкова мобилног робота у току кретања и грешке одометрије. Такође, с обзиром на то да су модел кретања и сензорски модел математички модели логично - 129 - је за очекивати да не могу обухватити све аспекте проблема: изразита нелинеарност или промена неких ефективних параметара мобилног робота (ефективни пречник точка или ефективни размак између точкова) значајно мењају основне претпоставке на којима почива нелинеарна верзија Калмановог филтра. Да би компензовали утицај непознатих величина на процес оцењивања у реалном времену, у наставку је приказан линеаризовани Калманов филтар спрегнут са вештачком неуронском мрежом - неуронски линеаризовани Калманов филтар (НЛКФ). Параметри вештачке неуронске мреже модификују се у реалном времену у току оцењивања и компензују утицај непознатих величина. Оваква интеграција линеаризованог Калмановог филтра и вештачких неуронских мрежа показала се као одличан избор за проблем праћења [100,101,154,175,176]. Ови резултати анализирају примену неуронског линеаризованог Калмановог филтра на проблем нелинеарног оцењивања и праћења у оквиру симулационе анализе. НЛКФ је примењен и за проблеме који се разматрају у овкиру ове дисертације, али постоје значајне разлике које би требало поменути. Први објављени резултат примене НЛКФ-а за оцењивање положаја мобилног робота и карактеристичних објеката у окружењу је приказан у [35], где је показано да НЛКФ има вишу тачност од ЛКФ-а када се уведе утицај непознатих величина у симулациони модел. Способност вештачке неуронске мреже да се прилагоди променама у реалном времену представља основни разлог примене НЛКФ-а. Након овог првог резултата, у [88] је приказана модификована верзија НЛКФ-а, где је промењена активациона функција а промењена је и намена вештачке неуронске мреже, која директно моделира непознате стохастичке утицаје управљачких команди ku . Као и у претходном случају, показано је да примена НЛКФ-а значајно доприноси побољшању процеса оцењивања. Требало би поменути и резултате приказане у [102], - 130 - али би требало и нагласити да текст поменутог рада није довољно конзистентан и да се не наводи која је тачно улога вештачке неуронске мреже, као ни који су елементи улазног вектора и излазног вектора вештачке неуронске мреже. У сваком слуачју, и поред недовољне експлицитности у погледу интеграције вештачких неуронских мрежа и линеаризованог Калмановог филтра, аутори наводе да су њихови алгоритми бољи од ЛКФ-а. У наставку овог поглавља је приказано како се врши интеграција линеаризованог Калмановог филтра и два типа вештачких неуронских мрежа: вишеслојни перцептрон и једнослојна вештачка неуронска мрежа са радијалним активационим функцијама Гаусовог типа. Да би применили алгоритам неопходно је дефинисати вектор стања ˆ kx , функцију која одређује његову промену | 1ˆ( )k kf x − и сензорски модел | 1 ˆ( )k kh x − . На основу ових информација могуће је одредити одговарајуће Јакобијане. Код неуронског линеаризованог Калмановог филтра вектор стања чине положај мобилног робота ( )vx , вектор свих параметара вештачке неуронске мреже ( )wx и позиције карактеристичних објеката ( )mx , односно: T T T T[( ) ( ) ( ) ]= v w mx x x x (5.32) Дакле, разлика у односу на „ стандардну” формулацију вектора стања у ЛКФ приступу, у НЛКФ-у приступу вектору стања су додати и параметри вештачке неуронске мреже ( )wx . Наравно, поред вектора стања, потребно је повећати и димензије коваријансе са одговарајућим варијансама и коваријансама. Основна разлика између ЛКФ и НЛКФ алгоритама оцењивања положаја је у кораку предикције, где је уведена вештачка неуронска мрежа за - 131 - моделирање оцене грешке између стварног кретања мобилног робота и математичког модела кретања: ( | 1) M | 1 ( | 1) ( | 1) ( | 1) ( | 1) ˆ ( , ) ˆ ˆ ˆ ˆ ˆ k k vnet k k k k k k k k k k v w w m m x f x x x x x x − − − − − −    ⋅ ⋅ +     = =            (5.33) где је Mf теоријски модел кретања (3.11, 3.14 или 5.20), а ( ) ( ) ˆ ˆ( , , )k-1|k-1 k-1|k-1 k=VNET v wx g x x u је оцена грешке модела кретања, односно излазна вредност вештачке неуронске мреже. Елементи улазног вектора у вештачку неуронску мрежу су оцена вектора положаја мобилног робота у тренутку 1k − и вектор управљања у тренутку k : ( ) ( )( )ˆ , TT Tnet k-1|k-1 k =   vx x u (5.34) На овај начин се свака промена у вектору управљања ku директно уводи у вештачку неуронску мрежу. Поред вектора стања неопходно је дефинисати и коваријансу вектора стања: xx xw xm wx ww wm mx mw mm     =      P P P P P P P P P P (5.35) Претпоставља се да су карактеристични објекти непокретни, те се стога корак предикције спроводи само за вектор положаја мобилног робота. Параметри вештачке неуронске мреже нису функција кретања робота, па је предикција, након извршеног кретања мобилног робота, једнака претходној вредности параметара. Јакобијан модела кретања је: ˆ ˆ ˆM ˆ ( ) ( ) ( ) ( ) ∇ ⋅ + ∇ ⋅ ∇ ⋅   ∇ ⋅ =      v v wx x x x w m f g g 0 f 0 I 0 0 0 I (5.36) - 132 - где први елемент Јакобијана ˆ ˆM ( ) ( )∇ ⋅ + ∇ ⋅v vx xf g представља збир извода модела кретања мобилног робота ( )M ⋅f и извода вештачке неуронске мреже ( )⋅g у односу на положаја мобилног робота; ˆ ( )w∇ ⋅x g је Јакобијан вештачке неуронске мреже у односу на параметре саме мреже. Остали елементи Јакобијана модела кретања мобилног робота су или нула матрица (промена положаја карактеристичних објеката не зависи од промене параметара вештачке неуронске мреже и обрнуто) или јединичне матрице одговарајућих димензија. Јакобијан модела кретања и вештачке неуронске мреже у односу на управљања је: M ( ) ( ) ( ) ∇ ⋅ + ∇ ⋅    = ∇ ⋅ =      u u u f g M f 0 0 (5.37) Сада је већ једноставно извршити предикцију коваријансе ˆ ˆ| 1 1| 1( ) ( ) ( ) ( ) T T k k k k− − −= ∇ ⋅ ∇ ⋅ + ∇ ⋅ ∇ ⋅x x u u uP f P f f C f (5.38) где uC представља коваријансу вектора управљања ku . Јакобијан сензорског модела се не разликује много од полазног (табела 5.1) с обзиром на то да функција мерења ( )⋅h не зависи од тежинских односа ( ˆ ( )∇ ⋅ = wx h 0 ). У том случају Јакобијан сензорског модела ( )∇ ⋅xh се може написати као: , , , , , , , , , , , , , , , , ( ) ( ) ( ) ( ) 0 0 0 1 0 0 r w m j k j x r k j y r k j x r k j y r k j y r k j x r k j y r k j x r k m x m y m y m x r r r r m x m y m y m x r r r r x x x xH h h h h= ∇ ∇ ∇ ∇ ⋅ = ⋅ ⋅ ⋅ =  − − − −  − −   =  − − − − − − − −    … … … … (5.3 9) где је 2 2, , , ,( ) ( )j x r k j y r kr m x m y= − + − . Алгоритам неуронског линеаризованог Калмановог филтра за проблем симултаног оцењивања положаја мобилног робота и карактеристичних објеката дат је у табели 5.2. - 133 - Табела 5.2: Алгоритам неуронског линеаризованог Калмановог филтра. ( ) 1| 1 1| 1 , , | 1 1 , , 1 1 , ˆ ˆ ˆ1 1 1 1 1 ˆ 1. ( , , , ) cos( ) ˆ2. ( , ) sin( ) , , ( , ) ( , , ) ( , , 3. ( ) k k k k k k r k k r k k k k k k r k k r k k k k k r k k k k k k k k k x v t t y v t t t v v wx x x x Алгоритам НЛКФ x P u z x f x u g w x u f x u g w x u g w x f θ ω θ ω θ ω − − − − − − − − − − − − − + ∆ + ∆    = = + ∆ + ∆ +   + ∆  ∇ + ∇ ∇ ∇ ⋅ = 2 2 2 2 2 ˆ ˆ, | 1 , | 1 ) ( ) ( ) 4. 5. ( , ) ; ( , , ) 6. 7. 8. v r s k u T T xx k k xx k k u Ti i i k k k diag diag for all observed features r do if landmark has beenseen w m u u u x x u u u 0 0 I 0 0 0 I f g f 0 0 C R P fP f fC f z ω ϕσ σ σ σ σ ε ε ε ε ε ϕ − −          ∇ ⋅ + ∇ ⋅   ∇ =      = = = ∇ ∇ + ∇ ∇  =   2 2 , , , , , , , , , , , , , , , , , , , ( ) ( ) ˆ9. ; tan 2( , ) ˆ10. ( ) ( ) ( ) 0 0 0 11. 1 0 0 r w m jx r k jy r ki k jy r k jx r k r k i i k k j x r k j y r k j x r k j y r k j y r k j x r k j y r before m x m y a m y m x m x m y m y m x r r r r m x m y m y r r x x x x z H z h h h θ ∇ ∇ ∇   − + −  =   − − −   = ∇ = ⋅ ⋅ ⋅ =  − − − − − − = − − − − − − … … … , , 1 | 1 | 1 | | 1 | | 1 , , , | 1 , | 1 , 12. ( ) ˆ ˆ ˆ13. ( ) 14. ( ) 15. ˆ cos( ) ˆ ˆ ˆ16. ( , ) si ˆ k j x r k i T i iT k k k k k k k k i i i k k k k k k k i i k k k k k k i i j x k k r k i n n r k k k j y k k k j s m x r r else r r K P H H P H R x x K z z P I K H P m m m x z m x m ϕ θ − − − − − − −        − −    = + = + − = −   +   = = = +      … , , | 1 , | 1 | | n( ) 0 17. 18. 19. 20. ˆ21. , i k r k xx k k T xx k k aug aug v w aug m n n k k k k end if end for return x z P 0 P J J 0 R I 0 0 0 0 I 0 0 J 0 0 I 0 m 0 0 m x P ϕ θ − −     +        =           =    ∇ ∇  - 134 - Основна разлика између линеаризованог Калмановог филтра и његове неуронске верзије се види већ у реду бр. 2 где се врши предикција вектора стања за вредности вектора управљања ku . Може се видети да је излазној вредности модела кретања додата оцена грешке кретања у виду излазног вектора вештачке неуронске мреже. У редовима бр. 3 и бр. 4 модификовани су Јакобијани модела кретања у односу на вектор положаја мобилног робота kx и вектор управљања ku . Уобичајени поступак предвиђања сензорске информације, након аквизиције, почиње у реду бр. 7. и завршава се у реду бр. 21. Види се да је Јакобијан сензорског модела проширен елементима ( ) w ∇ ⋅x h , који представљају промену самог сензорског модела након промене параметара вештачке неуронске мреже. С обзиром на то да вредности функције сензорског модела ( )⋅h не зависе од вредности параметара вештачке неуронске мреже, одговарајуће компоненте Јакобијана сензорског модела ( ) w ∇ ⋅x h су једнаке 0 . Корак корекције се наставља израчунавањем иновације и увођењем нове информације у систем. Последња разлика између конвенционалног ЛКФ- а и НЛКФ-а је дата у редовима бр. 17 и 18, где се врши проширивање вектора стања након детекције нових карактеристичних објеката. У реду бр. 18 је дат Јакобијан потребан за проширивање матрице коваријанси вектора стања новим корелацијама након детекције нових објеката. Алгоритам се понавља све до краја кретања мобилног робота. У самом алгоритму није наведено да ли је у питању примена вишеслојног перцептрона или вештачке неуронске мреже са радијалним активационим функцијама. Једина разлика између ова два алгоритма (оцењивање са вишеслојним перцептроном или оцењивање са радијалним активационим функцијама) је у погледу одговарајућих елемената Јакобијана модела кретања и сензорског модела. С обзиром на то да је вишеслојни перцептрон задат следећом једначином у скалараном облику: - 135 - K L N m km lk nl n k l n y a b c xξ ξ  =       ∑ ∑ ∑ (5.40) где је n број димензија улазног вектора, l број неурона у првом скривеном слоју, k број неурона у другом скривеном слоју, и m број димензија излазног слоја вештачке неуронске мреже; kma , lkb и nlc су тежински коефицијенти између одговарајућих слојева. Активациона функција ( )⋅ξ је: ( ) ( )( ) 1 exp 2 1 exp 2 − − = + − x ξ x x (5.41) где је x произвољни улазни вектор у вештачку неуронску мрежу. Може се приметити да је усвојен модел вишеслојног перцептрона који има линеарни излазни слој. Вештачка неуронска мрежа са радијалним активационим функцијама Гаусовог типа је дата са 2 2 1 1 exp 2 N i i i iσ=   = − −    ∑y w x µ (5.42) где је за i -ти неурон дат одговарајући тежински вектор iw , центар радијалне активационе функције iµ и пречник функције iσ . Основна разлика између ове две вештачке неуронске мреже огледа се у начину моделирања улазно-излазних величина (четврто поглавље). У наставку су приказани експериментални резултати за неуронски линеаризовани Калманов филтар са вишеслојним перцептроном (НЛКФ- ВП) и неуронски линеаризовани Калманов филтар са вештачком неуронском мрежом са радијалним активационим функцијама (НЛКФ- РАФ). - 136 - 5.7. Резултати примене неуронског линеаризованог Калмановог филтра у MATLAB® програмском окружењу – резултати симулације Неуронски линеаризовани Калманов филтар примењен је у MATLAB® програмском окружењу развојем посебног кода. У спроведеним експериментима усвојене су идентичне вредности параметара, које су овде поновљене ради прегледности приликом читања: брзина кретања мобилног робота је [ ]2v m s= ; стандардне девијације управљања ku су [ ]0,01v v m sσ = , [ ]1 sωσ = ° ; максимални домет сензора растојања мобилног робота је max 0,3 [ ]R m= , а стандардне девијације мерења су [ ]0,01r mσ = , [ ]5φσ = ° . На сваких 0,01[ ]s одређује се нови вектор управљања и врши аквизиција сензорске информације. Почетни положаја мобилног робота је [ ]0|0 0,1[ ] 0,1[ ] 0 [ ] Tm m= − − °x , коваријанса је ( )0|0 0,0,0diag=P . Усвојене вредности додатних управљачких команди услед конструктивних карактеристика мобилног робота су 3 510 10 T bias − − = − u . Поред ових параметара, приликом иницијализације неуронског линеаризованог Калмановог филтра потребно је усвојити и следеће параметре: почетну вредност и почетну коваријансу параметара изабране вештачке неуронске мреже 0( , )w w0x P , као и њихову промену wQ . Усвојене су следеће вредности:  Вишеслојни перцептрон (НЛКФ-ВП) - почетне вредности параметара: 6 5 3 0( ) 0( ) 0( )10 ; 10 ; 10ulazni skriveni izlazni − − − = = =w w wx x x ; - почетна коваријанса параметара: 16( ) ( ) ( ) 10ulazni skriveni izlazni − = = =w0 w0 w0P P P ; - 137 - -инкрементална промена параметара: 6 5 7 ( ) ( ) ( )10 ; 10 ; 10ulazni skriveni izlazni − − − = = =w w wQ Q Q .  Вештачка неуронска мрежа са радијалним активационим функцијама (НЛКФ-РАФ) - почетне вредности центара: 1 1 5 0 510 10 10 10 10 Tcentri − − − − =  wx ; - почетне вредности пречника: 110pwx = ; - почетна коваријанса параметара: 16 16 010 ; 10 ; 10w c p − − = = =P P P ; - инкрементална промена параметара: 16 3 210 ; 10 ; 10w c p − − − = = =Q Q Q . Изабрана је идентична путања као и приликом провере линеаризованог Калмановог филтра. Као што је већ наглашено, путања је правоугаоног облика дужине ~7[m]. Дуж путање је постављен 21 карактеристични објекат чије присуство мобилни робот детектује применом сензора растојања. Да би у потпуности сагледали могућности неуронског линеаризованог Калмановог филтра тестиране су следеће архитектуре:  Вишеслојни перцептрон (НЛКФ-ВП) - Једнослојне архитектуре: 5-[1]1-3; 5-[2]1-3 ; 5-[3]1-3 ; 5-[4]1-3 ; 5-[5]1-3; - Двослојне архитектуре: 5-[1-1]2-3; 5-[2-1]2-3; 5-[2-2]2-3; 5-[3-1]2-3; 5-[3- 2]2-3; 5-[3-3]2-3;  Вештачка неуронска мрежа са радијалним активационим функцијама (НЛКФ-РАФ): 5-[1]1-3; 5-[2]1-3; 5-[3]1-3; 5-[4]1-3; На крају ове анализе би требало поменути и број параметара оба типа НЛКФ-а који се симултано оцењују са положајем мобилног робота и положајем карактеристичних објеката. Укупан број параметара код НЛКФ-ВП је - 138 - 1 1 1 dim( ) sN i vp w i i i N − + = = ∑∏ x (5.43) Функција ( )dim ⋅ одређује број димензија одговарајућег аргумента, sN је укупан број слојева укључујући и улазни и злазни слој, а ix је одговарајући вектор који означава број елемената посматраног слоја. Број параметара код НЛКФ-РАФ алгоритма је (dim( ) 1) dim( )rafw neurona ulaz neurona izlazN n n= + +x y (5.44) Функција ( )dim ⋅ је већ дефинисана, ulazx и ulazy представљјају улазни и излазни вектор вештачке неуронске мреже респективно, а neuronan је укупан број процесирајућих јединица (неурона). У табели 5.3 је дат упоредни приказ броја параметара за све изабране архитектуре. Табела 5.3: Број параметара вештачких неуронских мрежа које филтар у реалном времену оцењује. Приказаним вредностима потребно је додати још три димензије које једнозначно дефинишу положај мобилног робота у равни. НЛКФ-ВП Једнослојни Двослојни НЛКФ-РАФ Арх. Бр. парам. Арх. Бр. пар. Арх. Бр. пар. 5-[1]1-3 8 5-[1-1]2-3 9 5-[1]1-3 9 5-[2]1-3 16 5-[2-1]2-3 15 5-[2]1-3 18 5-[3]1-3 24 5-[2-2]2-3 20 5-[3]1-3 27 5-[4]1-3 32 5-[3-1]2-3 21 5-[4]1-3 36 5-[5]1-3 40 5-[3-2]2-3 27 - - 5-[3-3]2-3 33 - За оцену перформанси коришћена је нормализована грешка оцењивања одређена након 50 независних Монте Карло понављања. Експериментални резултати су приказани на слици 5.10 за једнослојне - 139 - архитектуре перцептрон вештачке неуронске мреже, на слици 5.11 за двослојне архитектуре перцептрон вештачке неуронске мреже, a на слици 5.12 за вештачку неуронску мрежу са радијалним активационим функцијама Гаусовог типа. Слика 5.10 Нормализована грешка оцењивања неуронског Линеаризованог Калмановог филтра са једнслојним перцептроном (НЛКФ-ВП). На слици је приказана промена нормализоване грешке оцењивања за 50 независних Монте Карло понављања са одговарајућим бројем неурона у скривеном слоју. У горњем десном углу дијаграмског приказа означен је број неурона у скривеном слоју. Приликом затварања петље све верзије овог типа НЛКФ-а генеришу приближно исту вредност нормализоване грешке оцењивања kε (~15). Након затварања петље вредности kε настављају да расту. - 140 - Слика 5.11 Нормализована грешка оцењивања неуронског Линеаризованог Калмановог филтра са двослојним перцептроном (НЛКФ-ВП). На слици је приказана промена нормализоване грешке оцењивања након 50 независних Монте Карло понављања за одговарајући број неурона у скривеним слојевима. Број скривених слојева, као и број неурона у њима је приказан у десном горњем углу (означени су само неурони у скривеним слојевима, с обзиром на то да се број улазних и излазних неурона не мења). Већи број скривених слојева и већи број процесирајућих јединица значајно побољшавају квалитет оцењивања у погледу конзистентности, с обзиром на то да је оцењена грешка у теоретским границама. Нормализована грешка оцењивања неуронског линеаризованог Калмановог филтра има сличан тренд промене као и приликом симулације проблема оцењивања положаја мобилног робота и карактеристичних објеката у окружењу применом „стандардног” линеаризованог Калмановог филтра. Све три верзије НЛКФ-а (без обзира на изабрану вештачку неуронску мрежу, као и број слојева и број процесирајућих јединица у њима) потцењују стварну грешку већ након 100-те итерације. Затварање петље резултира изразитим скоком вредности нормализоване грешке оцењивања kε , што је у складу са теоретским и експерименталним резултатима ЛКФ-а (упоредити са резултатима за ЛКФ - 141 - (слике 5.7, 5.8 и 5.9), као и резултатима објављеним у референцама [15,79]). Примећује се да нормализована грешка оцењивања kε свих типова НЛКФ- а наставља да расте након затварања петље (слике 5.10, 5.11 и 5.12). Слика 5.12 Нормализована грешка оцењивања неуронског Линеаризованог Калмановог филтра итегрисан са вештачком неуронском мрежом са радијалним активационим функцијама (НЛКФ-РАФ). Слика приказује промену нормализоване грешке оцењивања за 50 независних Монте Карло понављања. Број процесирајућих јединица је дат у горњем десном углу. У директном поређењу са једнослојним перцептроном НЛКФ-РАФ генерише боље резултате. Међутим, упоређивањем нормализоване грешке оцењивања ЛКФ-а и свих типова НЛКФ-а приметно је да НЛКФ мање потцењује стварну грешку од ЛКФ-а, што се закључује на основу максималне вредности нормализоване грешке естимације kε у току затварања петље. Приликом оцењивања положаја мобилног робота применом ЛКФ-а највећа вредност kε је ~19, док НЛКФ генерише вредност kε ~16. Поредећи све типове НЛКФ-а, може се приметити да највећу вредност kε генерише двослојни перцептрон (~16), док НЛКФ-РАФ и једнослојни перцептрон оцењују kε на мање од 15. С друге стране, приметно је да вредности нормализоване грешке оцењивања kε приликом затварања петље значајно варирају у - 142 - зависности од броја скривених слојева и броја неурона у њима. Код једнослојног НЛКФ-ВП вредност нормализоване грешке оцењивања kε углавном тежи вредности 15. У случају двослојног НЛКФ-ВП може се уочити да већи број скривених слојева и већи број неурона генеришу мању вредност kε за исте почетне услове. Вредности нормализоване грешке оцењивања код НЛКФ-РАФ приликом затварања петље су приближно исте као и код једнослојног НЛКФ-ВП. Промена нормализоване грешке оцењивања kε након затварања петље показује веома заимљив тренд, код сва три типа НЛКФ-а. Приметно је да НЛКФ-ВП са двослојним перцептроном (слика 5.11) и већим бројем процесирајућих јединица у скривеним слојевима (архитектуре 5-[3-1]2-3, 5- [3-2]2-3 и посебно 5-[3-3]2-3) оцењују грешку која је много ближа стварној грешки, па на основу тога нормализована грешка оцењивања дуже остаје у интервалу одређеним границама { }min max,kε ε ε∈ . Овај резултат представља посебну предност приликом оцењивања положаја мобилног робота, с обзиром на то да конзистентност филтра директно утиче на његову оптималност. 5.8. Дискусија Да би се применио интелигентни унутрашњи транспорт сировина, полуфабриката, материјала и готових делова применом мобилних робота, неопходно је омогућити аутономну навигацију која неће зависити од оператера на било ком нивоу функционисања. Способност мобилног робота да самостално одређује свој положај, као и положај карактеристичних објеката у технолошком окружењу, представља први корак ка његовом аутономном понашању, што и јесте један од основних захтева интелигентног унутрашњег транспорта. У овом поглављу анализиран је проблем симултаног оцењивања положаја мобилног робота и карактеристичних објеката у окружењу - 143 - применом линеаризованог Калмановог филтра. Констатовано је да након одређеног броја корака оцењивања (тј. одређеног броја итерација), неизбежно је да ЛКФ потцени праву грешку, услед чега постаје оптимистичан. Међутим, већи проблем представљају конструктивне карактеристике мобилног робота које значајно могу да утичу на управљачку команду. Симулација је показала да перформансе ЛКФ-а у овом случају нису задовољавајуће, што је и било очекивано с обзиром на то да усвојени модел кретања мобилног робота не обухвата утицај ових непознатих величина. Да би компензовали овај утицај конструкције на процес оцењивања положаја током кретања, развијен је нови вид линеаризованог Калмановог филтра интегрисан са вештачком неуронском мрежом. Развијени алгоритам неуронског линеаризованог Калмановог филтра омогућава моделирање применом вештачке неуронске мреже на бази вишеслојног перцептрона или вештачке неуронске мреже са радијалним активационим функцијама Гаусовог типа. Експериментални резултати добијени симулацијом кретања мобилног робота указују да предложени концепт интеграције линеаризованог Калмановог филтра са вештачким неуронским мрежама генерише боље оцене положаја мобилног робота. Монте Карло симулација је показала да је нормализована грешка оцењивања мања код НЛКФ оцена (без обзира на тип филтра – НЛКФ-ВП или НЛКФ-РАФ). Приликом поновне детекције карактеристичних објеката који се већ налазе у оквиру вектора стања (затварање петље), НЛКФ-ВП генерише боље оцене грешке, па самим тим и остаје у оквиру граница одређених бројем независних Монте Карло понављања. Ова чињеница је од изузетне важности за оцењивање положаја мобилног робота која подразумева вишеструка затварања петљи, као и кретање мобилног робота у дужем временском интервалу. Претходна предност се директно односи на основни проблем који је - 144 - предмет анализе, а то је интелигентни унутрашњи транспорт на бази мобилних робота. Перформансе НЛКФ-а показују да нови филтар може бити примењен за проблем симултаног оцењивања положаја мобилног робота и карактеристичних објеката у окружењу. На основу свих закључака и спроведене анализе остварених резултата, неуронски линеаризовани Калманов филтар је примењен као модул за оцењивање положаја мобилног робота Khepera у лабораторијском моделу технолошког окружења, уз примену система препознавања на бази калибрисане камере. У следећем поглављу су приказани експериментални резултати примене НЛКФ-а. - 145 - 6. СИМУЛТАНО ОЦЕЊИВАЊЕ ПОЛОЖАЈА МОБИЛНОГ РОБОТА И КАРАКТЕРИСТИЧНИХ ОБЈЕКАТА УЗ ПРИМЕНУ СИСТЕМА ПРЕПОЗНАВАЊА НА БАЗИ КАЛИБРИСАНЕ КАМЕРЕ Проблем симултаног оцењивања положаја мобилног робота и положаја карактеристичних објеката представља комплексан проблем у домену роботике као научно-техничке дисциплине. Од самог почетка истраживања у овој области [49,108,167] па до последњих значајних резултата [32,33,34,47,61,64,182,186,187] проблем се показао као изразито комплексан, али након 20 година истраживања може се констатовати да је основа проблема у математичком смислу постављена [56]. На самом почетку истраживања и током 1990-тих већина истраживача је била сконцентрисана на примену сензора растојања (ултразвучни сензори или ласери) као спољашњих сензора за аквизицију сензорске информације из окружења [47,182]. Иако је у овом периоду постигнут завидан ниво аутономности мобилних робота у погледу способности самосталног оцењивања положаја, неки сегменти полазног проблема су и даље остали недовољно истражени. Један од разлога споријег напретка представља и употреба сензора растојања због ограничења у виду количине информација и типа расположивих информација. Међутим, у последњих неколико година приметна је тенденција да je све више истраживачких резултата базирано на примени камере као спољашњег сензора. Захваљујући напретку науке и технологије могуће је извршити аквизицију и процесирање сензорске информације у реалном времену. У односу на сензоре растојања, количина и врста сензорских информација које могу да - 146 - буду употребљене након аквизиције и процесирања већа је код система препознавања базираних на камери [168,169]. У овом поглављу је представљен нови алгоритам оцењивања положаја мобилног робота и карактеристичних објеката применом неуронског линеаризованог Калмановог филтра (НЛКФ), уз коришћење система препознавања на бази камере. Интеграција вештачке неуронске мреже са линеаризованим Калмановим филтром омогућава моделирање непознатих недетерминистичких утицаја у реалном времену модификацијом параметара вештачке неуронске мреже. Основна идеја НЛКФ-а употребљена је за моделирање кретања мобилног робота, односно побољшање полазног математичког модела. 6.1. Преглед стања у области Оцењивање положаја објекта применом система препознавања базираних на аквизиције информација од камере може бити остварена уз примену једне камере [37,133,206], две камере [20,40,142] или омнидирекционих камера [159]. Међутим, ослањање искључиво на информације од камере без увођења „унутрашње” информације, није погодно за примену у домену развоја система интелигентног унутрашњег транспорта. Примена мобилних робота подразумева интеграцију система препознавања на бази камере са унутрашњим сензорима мобилног робота, односно интеграција камере и енкодера [38] или на интеграцији камере и инерцијалних сензора [97,136,177]. Применом концепта интеграције две врсте сензорске информације може се успоставити основни проблем, разматран у овом поглављу. Грешке које настају услед одометријске оцене значајно утичу на тачност процеса оцењивања. Методе калибрације системских грешака, као што је метод представљен у [26], могу одредити ред величине ових грешака. Међутим, с обзиром на то да је у питању тест који се спроводи у off-line - 147 - режиму, неопходно је за сваку могућу промену конфигурације мобилног робота спровести процедуру калибрације параметара. Транспорт различитих типова радних предмета подразумева калибрисање системских параметара мобилног робота за сваку од могућих конфигурација. У том смислу, да би се мобилни роботи применили за унутрашњи танспорт материјала, сировина, полуфабриката и готових делова неопходно је применити методе које врше оцењивање грешака у реалном времену током кретања. Примери оваквих метода су [104,118] где је основни проблем оцењивања положаја мобилног робота (локализације) моделиран уз примену уобичајене процедуре теорије оцењивања у виду проширивања вектора стања додатним параметрима. Методе су базиране на линеаризованом Калмановом филтру чији вектор стања формирају положај мобилног робота и параметри системских одометријских грешака. Предлог инкременталне примене методе максималне веродостојности је дат у [158]. Овај приступ је касније искоришћен за примену вештачке неуронске мреже [68] чиме је системска грешка смањена за 80%. Поред системских грешака потребно је моделирати и несистемске грешке, што ниједна од понуђених метода не омогућава. Један од првих истраживачких резултата је дат у [118], где је приказан ЛКФ алгоритам који симултано, у реалном времену, оцењује и системске и несистемске грешака. Међутим, поред оцењивања положаја мобилног робота и параметара одометријског модела (тј. оцене грешака) неопходно је отићи корак даље, односно увести и положаје карактеристичних објеката у анализу. ЛКФ алгоритам у коме елементи вектора стања чине: положај мобилног робота, положај карактеристичних објеката и параметри одометрије приказан у је [89]. Релевантни истраживачки извори у којима су развијене методе које у реалном времену оцењују грешку одометрије пријављују боље резултате од уобичајених приступа. Претходна анализа стања у области показује да усвојени математички модел кретања - 148 - мобилног робота може бити побољшан у погледу више тачности када се вектору стања додају одговарајући одометријски параметри. У том смислу, примена вештачких неуронских мрежа за оцену грешака полазног математичког модела у реалном времену представља нови корак у побољшању постојећег стања. Основна идеја примене вештачке неуронске мреже огледа се у чињеници да је могуће успоставити везу између кретања мобилног робота и непознатих утицаја преко функционалне зависности. Неуронски линеаризовани Калманов филтар је први пут предложен као могуће решење проблема симултаног оцењивања положаја мобилног робота и карактеристичних објеката у [35]. НЛКФ је примењен за моделирање системских грешака и на основу резултата симулације аутори закључују да НЛКФ може да се флексибилно прилагоди променама у окружењу. С друге стране, модификована верзија претходног приступа је приказана у [88], где се уз примену НЛКФ-а моделирају параметри управљачког система. У оба рада је наглашено да, захваљујући модификацији параметара вештачке неуронске мреже у реалном времену, НЛКФ омогућава флексибилно прилагођавање новим околностима. Важно је уочити основну разлику између представљених истраживачких резултата и приступа базираног на примени НЛКФ алгоритма за симултано оцењивање положаја мобилног робота и карактеристичних објеката, представљеног у оквиру овог поглавља. С обзиром на то да свака усвојена апроксимација неминовно резултира појавом грешке у систему, НЛКФ треба да моделира полазни модел кретања мобилног робота. Остали истраживачки резултати [37,38,40,97,133,136,139,159,177,206] концентрисани су на друге аспекте полазног проблема. Претрагом релевантних литературних извора установљено је да резултати, остварени у оквиру спроведених истраживања, представљају први покушај решавања проблема симултаног оцењивања положаја мобилног робота и карактеристичних објеката у окружењу применом неуронског - 149 - линеаризованог Калмановог филтра уз аквизицију сензорске информације од камере. 6.2. Процесирање слике Пре него што уведемо нови алгоритам одређивања положаја мобилног робота, базиран на концепту симултаног оцењивања положаја мобилног робота и позиције карактеристичних објеката, неопходно је увести основне појмове. У том смислу, у наставку су дате основне информације. 6.2.1. Координатни системи За потребе овог истраживања усвојена су три основна координатна система у односу на које се посматра промена величина и параметара:  Спољашњи координатни систем – апсолутни систем референције у односу на који се посматра кретање робота у окружењу. Претпоставља се да је стационаран. Спољашњи координатни систем обележава се са W.  Локални координатни системи објеката – ови координатни системи омогућавају одређивање положаја посматраног објекта у односу на усвојени спољашњи координатни систем. Објекти мобилни робот и камера имају један и само један локални координатни систем. Локални координатни систем робота ће се обележавати са Or , а камере Ok.  Сензорски координатни систем – специфични локални координатни систем у односу на који се дефинише сензорска информација. Сензорски координатни систем једнозначно дефинише позиције карактеристичних објеката на слици – S. Основни коришћени координатни системи су приказани на слици 6.1. - 150 - Слика 6.1 Илустративни приказ основних координатних система. У општем случају, оријентацију тела у простору је могуће једнозначно одредити са три Ојлерова угла. Постоји велики број конвенција по којима се одређује редослед ротација од којих зависи и коначна матрица ротације [46]. У овој дисертацији је усвојено да се прва ротација врши око Z осе за угао θ , након тога око Y осе за угао ψ и на крају око X координатне осе за угао φ (ZYX редослед). Матрица ротације локалног координантог система посматраног у односу на усвојени координатни систем посматрача је дата у следећем облику: c( )c( ) s( )s( )c( ) c( )s( ) c( )s( )c( ) s( )s( ) c( )s( ) s( )s( )s( ) c( )c( ) c( )s( )s( ) s( )c( ) s( ) s( )c( ) c( )c( ) P LR θ ψ φ θ ψ φ ψ φ θ ψ φ ψ θ ψ φ θ ψ φ ψ φ θ ψ φ ψ θ φ θ φ θ  − +   = + −   −  (6.1) Са PLR је обележена матрица ротације локалног координатног система L у односу на координатни систем P из кога посматрамо промену (тј. координатног система у коме се налази посматрач). - 151 - Приликом дефинисања и одређивања ротација објекта у простору помоћу Ојлерових углова потребно је обратити пажњу да овај концепт има своје недостатке у виду дисконтинуитета репрезентације ротација с обзиром на то да је: [ ] [ ] [ ], 2 2 , 0 2φ pi pi ψ pi pi θ pi∈ − ∈ − ∈ (6.2) 6.2.2. Модел камере Модел који је коришћен за дефинисање прикупљања информација од камере је модел инфинитезимално малог отвора бленде1. Постоји велики број литературних извора који детаљно приказују овај модел, па ће стога овде бити наглашене само основне информације неопходне за праћење текста. За детаљан приказ овог модела (као и осталих) погледати [178]2. На слици 6.2 је дат графички приказ модела инфинитезимално малог отвора бленде. Модел чине:  оптичка оса – замишљена оса која се поклапа са Х осом локалног координатног система камере. Оптичка оса представља Z осу сензорског координатног система камере;  раван слике – раван на којој је кодирана информација о тродимензионалном простору. Паралелна је равни која је одређена са друге две координатне осе X и Y сензорског координатног система камере. Тачка пресека оптичке осе и равни слике назива се оптички центар камере ( 0 0,u v );  фокална дужина f – раздаљина од сензорског координатног система до равни слике. У зависности од произвођача камере, наводи се у пикселима [pxl] или метрима [m]. 1 Валидан термин заснован на потуној аналогији би био модел кључаонице. 2 И Википедија нуди одличан чланак у коме читалац упознаје основну идеју и терминологију http://en.wikipedia.org/wiki/Pinhole_camera_model. - 152 - Због једноставнијег приказа раван слике је постављена испред камере иако би требало да буде лоцирана иза камере. Међутим, померање равни слике не мења основну идеју, а тиме ни међусобне зависности одговарајућих величина. Нека је дата произвољна тачка P испред камере, која је једнозначно дефинисана координатама ( , , )X Y Z у S . Тачка продора праве која спаја координатни почетак S и тачку P и равни слике одређује тачку p . Тачка p представља пројекцију P која се налази у тродимензионалном простору испред камере на раван слике. Уобичајена конвенција је да се координатне осе равни слике усвајају у горњем левом углу, тако да је јединични вектор хоризонталне осе усмерен са леве на десну страну, док је јединични вектор вертикалне осе усмерен на доле (u и vосе). Слика 6.2 Модел инфинитезимално малог отвора бленде камере. Успостављање основних геометријских релација. Координате тачке P су: T Px Py Pzh h hPh  =    (6.3) - 153 - Координате тачке [ ]Tc cx y fp= продора праве p кроз раван слике се једноставо одређује на основу Талесове теореме: ; Py cPx c Pz Pz h yh x h f h f = = (6.4) Односно, вектор p је смањен за фактор Pz f h Pz f h Pp h= (6.5) Координате вектора p у равни слике су дате у координатном систему слике: 0 0;u c v cu u k x v v k y= − = − (6.6) где uk и vk означавају број пиксела по јединици дужине [pxl/m]. Претходна једнакост може бити написана и у матричној форми: 0 0 0 0 1 0 0 1 u Px Px v Py Py Pz Pz u f k u h h v f k v h h h h C        −               = − =                        (6.7) где матрица C представља калибрациону матрицу и одређује се посебно за сваку камеру. Параметри калибрационе матрице C су:  фокална дужина f ,  број пиксела по јединици дужине uk и vk  позиција оптичког центра камере ( 0 0,u v ). Ови параметри се називају унутрашњи параметри камере и представљају јединствен скуп за сваку појединачну камеру. Примена модела инфинитезимално малог отвора бленде омогућава успостављање зависности између параметара камере и произвољне тачке испред камере. - 154 - 6.2.3. Модел радијалне дисторзије слике Унутрашњи параметри камере нису довољни за моделирање свих појава које се јављају током аквизиције и процесирања информације. Поред увођења модела инфинитезимално малог отвора бленде потребно је увести математички модел радијалне дисторзије слике. Уколико се посматра раван слике, дисторзија слике може бити конкавна (испупчена), конвексна (удубљена) и у виду модела видног поља код риба (слика 6.3). Слика 6.3 Примери радијалне дисторзије слике камере: а) конкавна, б) конвексна и в) у виду рибљег ока [178]. Уобичајни поступак моделирања овог проблема је применом одговарајућег полинома, а одређивање параметара овог модела је уобичајени поступак током калибрације камере. Ако су познате кординате произвољне тачке ( , )d du v у равни слике за коју се зна да има одговарајући степен дисторзије, координате исте тачке ( , )u uu v након елиминације појаве дисторзије су: 2 4 0 0 1 2 2 4 0 0 1 2 2 2 0 0 ( )(1 ) ( )(1 ) ( ( )) ( ( )) u d d d d u u d d d d d x d y d u u u u u r r h v v v v v r r r d u u d v v κ κ κ κ        − + +     = = +       − + +       = − + − (6.8) где xd и yd представљају димензије пиксела, а dr је нумеричка вредност радијуса када нема дисторзије. Параметри 1κ и 2κ коефицијенти степеног реда развијеног по парним члановима dr и називају се коефицијенти - 155 - радијалне дисторзије. У супротном случају, када за познате координате без дисторзије ( , )u uu v желимо да одредимо координате након компензације постојања дисторзије ( , )d du v , једначине су: 0 2 4 0 1 2 0 0 2 4 1 2 2 4 1 2 2 2 0 0 ( ) (1 ) ( ) (1 ) (1 ) ( ( )) ( ( )) u d u d d d d u u d d u d d d u x u y u u u u u u r r h v v v v v r r r r r r r d u u d v v κ κ κ κ κ κ  −          + +     = = +       −        + +  = + + = − + − (6.9) где су сви параметри већ дефинисани. Треба напоменути да параметар dr треба одредити одговарајућим итеративним поступком (нпр. Њутн- Рафсон). 6.2.4. Модел реципрочне удаљености карактеристичних објеката Нека је дата тачка P у тродимензионалном простору и нека се налази у видном пољу камере. На слици 6.4 је приказана основна идеја модела реципрочне удаљености. Слика 6.4 Дефинисање модела реципрочне удаљености карактеристичног објекта. - 156 - Применом модела реципрочне удаљености позиција тачке P у сензорском координатном систему S је ( ( ) )S S SP Wh R p r mρ= − + (6.10) Где су:  S Ph вектор позиције тачке дефинисан у сензорском координатном систему S ,  S WR представља матрицу ротације из спољашњег апсолутног координатног система W у сензорски координатни систем S ,  Sr представља позицију сензорског координатног система у односу на спољашњи координатни систем W ,  p је вектор позиције 'P сензорског координатног система одакле је карактеристични објекат идентификован по први пут,  ρ је реципрочна удаљеност; 1 dρ= где је d удаљеност;  m јединични вектор осе одређен у спољашњем координатном систему W који једнозначно дефинише правац и смер вектора позиције идентификованог карактеристичног објекта у тренутном положају сензорског координатног система S . Основне особине модела реципрочне удаљености су [37]:  за разлику од метода које се базиране на одложеној иницијализацији карактеристичних објеката модел реципрочне удаљености омогућава тренутну иницијализацију карактеристичних објеката након идентификације. На овај начин сви карактеристични објекти дају свој допринос у оцењивању положаја робота од тренутка када су идентификовани;  Модел реципрочне удаљености служи за карактеризацију карактеристичних објеката непознате почетне удаљености, али током процеса оцењивања није потребно прецизно знати удаљеност. - 157 - Ова особина представља предност у односу на представљање са три параметра у Декартовом координатном систему;  Применом овог модела могуће је представити карактеристичне објекте који се налазе непосредно испред камере, али и оне објекте који се налазе бесконачно далеко од камере (тј. у „бесконачности”). Декартов модел не обезбеђује ову могућност;  Паралакса је угао између вектора тренутне позиције карактеристичног објекта и вектора који одређује његову позицију након идентификације и иницијализације (угао τ на слици 6.4). Мала вредност паралаксе представља величину помоћу које се може одредити промена оријентације робота; велика вредност омогућава оцену транслације;  Мана модела реципрочне удаљености је већи број параметара који је потребан за једнозначно дефинисање карактеристичних објеката. Међутим, с обзиром на то да тачност оцене положаја робота не зависи од изабраног вида репрезентације карактеристичних објеката, једини недостатак је у броју рачунских операција које треба извршити. Показано је и да модел може бити примењен у реалном времену са фреквенцијом аквизиције информација од 30[Hz] [37,38]. 6.2.5. Дефинисање и препознавање карактеристичних објеката У последњих 20 година приметно је да су системи препознавања на бази камере достигли висок ниво развоја који обезбеђује препознавање различитих објеката. Познати су примери препознавања пешака, лица људи, итд. и логично би било закључити да је могуће развити такав систем препознавања који би са унапред дефинисаном тачношћу идентификовао одговарајуће објекте. По мишљењу аутора ове дисертације, приликом препознавања требало би разликовати: - 158 -  - статичко препознавање – начин препознавања у коме се врши поређење и утврђује сличност тренутне слике са реперном сликом (еталоном). У овом случају време неопходно за процесирање информација није од важности: препознавање лица људи, регистарских ознака на таблицама аутомобила, типских технолошких форми итд. Као што се већ може закључити, овај вид препознавања обавља се у off line режиму.  - динамичко препознавање – вид препознавања у коме развијени систем треба да, у реалном времену, идентификује карактеристични објекат. Ови системи се углавном базирају на праћењу објекта, тако што се на основу претпостављеног модела кретања објекта издвоји део слике у коме се очекује да ће се објекат налазити у следећем тренутку, па се у тој области и врши претрага за објектом. Међутим, ни један од ових приступа не обезбеђује решавање проблема унутрашњег транспорта применом мобилног робота. Процесирање сензорске информације треба да буде урађено у реалном времену, па статичко препознавање објеката не представља решење проблема. Динамичко препознавање је концентрисано на објекат праћења и оцену његовог стања, а не на оцену стања мобилног робота. Самим тим неопходно је осмислити начин примене камере у реалном времену за потребе навигације мобилног робота током извршавања транспортног задатка. Приликом увођења концепта симултаног оцењивања положаја мобилног робота и карактеристичних објеката у окружењу наглашено је да се поменути концепт може применити у on line или off line поступку. Могуће је развити такав систем препознавања на бази камере који би на вишем нивоу апстракције препознавао објекте у окружењу (нпр. машине алатке) али такав систем не би могао да буде примењен у реалном времену због ограничених хардверских могућности. С друге стране, развој таквог - 159 - апстрактног модела подразумева изузетно комплексан математичко- софтверски апарат, па се поставља и питање сврсисходности таквог приступа (посматрано са инжењерске тачке гледишта). На основу претходне анализе у оквиру овог истраживања коришћени су специфични карактеристични објекти који су дефинисани одговарајућим алгоритмом препознавања. У том смислу, карактеристични објекат се дефинише на самој слици као тачка која представља пројекцију неког објекта у тродимензионалном простору на раван слике. Карактеристични објекат представља објекат у равни слике који се на неки оптималан начин разликује од осталих; нпр. већина алгоритама који се користе за препознавање карактеристичних објеката одређују промену осветљења (или осенчености) на слици у некој инфинитезимално малој области. Места на којима постоји изражена промена градијента (минимум или максимум) представљају карактеристичне објекте. У наставку ће бити представљен само начин примене изабраног алгоритма који је коришћен у оквиру дисертације3. Математички апарат потребан за дефинисање алгоритама препознавања карактеристичних објеката далеко превазилази димензије ове дисертације, па се читалац упућује на референтну литературу из ове области4 [18,114,156,157,162]. Алгоритам који је коришћен за препознавања карактеристичних објеката на слици је тзв. препознавање карактеристичних објеката применом убрзаног теста сегментације – (FAST - Features from Accelerated Segment Test [156,157]). Пример примене изабраног алгоритма је дат на слици 6.5. Након аквизиције, слика се процесира и као излазне вредности добијају се позиције карактеристичних тачака на слици дефинисане у 3 Коришћење алгоритама препознавања карактеристичних објеката на слици постао је уобичајени поступак у истраживањима посвећеним развоју мобилних робота, па се у извештајима чак и не помиње који од алгоритама је примењен (нпр. ни у једном од радова [37,38,44] није наведено који је алгоритам у питању). 4 Важно је нагласити да примена неких од наведених алгоритама подразумева и одговарајућу новчану надокнаду ауторима алгоритма, с обзиром да су развијени алгоритми пријављени као патенти. - 160 - равни слике. Број карактеристичних објеката зависи од параметра под називом праг активације, чију вредност корисник усваја на основу искуства и карактеристика окружења (нпр. интензитет осветљености просторије). Веће вредности прага активације за резултат дају мањи број објеката (наравно, за мање вредности важи супротан случај). Међутим, одређивање прага активације алгоритма зависи пре свега од крајњег циља. Алгоритам може идентификовати велики број недовољно квалитетних објеката (квалитетних у смислу препознавања) које након малог помераја камере неће више бити могуће препознати. С друге стране, мањи број квалитетних објекта може за коначан исход имати недовољан број објеката због чега неће бити спроведен корака корекције изабраног алгоритма оцењивања положаја, пошто не постоји вектор иновације. - 161 - а) б) в) г) Слика 6.5 Пример примене алгоритма идентификације карактеристичних објеката. Након процесирања изабране слике (а) алгоритам одређује карактеристичне објекте и лоцира њихову позицију (б,в,г). Треба обратити пажњу на број карактеристичних објеката који директно зависи од прага активације. Избором нижег прага активације алгоритам идентификује већи број објеката (б), док се његовим повећавањем смањује број објеката али повећава њихов квалитет у смислу могућности препознавања након помераја камере (слике в) и г)). Слика је преузета са званичне интернет презентације Машинског факултета у Београду: www.mas.bg.ac.rs Међутим, идентификација карактеристичних објеката и одређивање њихове позиције на слици није довољна за примену алгоритма оцењивања положаја, а тиме ни за навигацију мобилног робота у технолошком окружењу. С обзиром на то да је позиција објекта дефинисана са два - 162 - параметра ( ,u v ), неопходно је омогућити препознавање посматраног објекта и након померања камере, што се са позицијом не може спровести. Да би се применио алгоритам оцењивања потребно је усвојити више параметара, а тиме и проширити полазни појам карактеристичног објекта. У том смислу, уводи се део слике око идентификованог објекта произвољних димензија (ширина [pxl] х висина [pxl]) као додатни параметар (слика 6.6). На овај начин, изабрани део слике постаје јединствено обележје карактеристичног објекта које га раздваја од осталих идентификованих објеката на слици (потпуно аналогно увођењу параметра идентификације приликом анализе ЛКФ алгоритма за симултано оцењивање положаја мобилног робота и карактеристичних објеката – погледати поглавље пет). Димензије делова слике одређује корисник. Оптимална површина зависи од потреба и представља емпиријски утврђен параметар: већа површина обезбеђује прецизнију формулацију карактеристичног објекта али захтева више параметара што се одражава на перформансе система у реалном времену. У оквиру овог истраживања усвојено је да су делови слике димензија (20 [pxl] х 20 [pxl]). - 163 - а) Идентификовани карактеристични објекти. б) #2 в) #5 г) #7 д) #17 ђ) #18 е) #22 Слика 6.6 Илустративни приказ одређивања делова слике за меморисање у интерној меморији филтра у циљу препознавања карактеристичног објекта након помераја мобилног робота. Редом од б) до е) су приказани делови слике око карактеристичног објекта под редним бројем. Дакле, сваки идентификовани објекат дефинисан је са два параметра:  позицијом у равни слике - ( ,u v ) координате (дефинисана применом алгоритма препознавања), - 164 -  делом слике димензија (20 [pxl] х 20 [pxl]), где је идентификовани објекат у центру. Односно, вектор мерења је: [ ]Ti i iu v siz = (6.11) 6.2.6. Хомографија – предикција изгледа карактеристичних објеката Пре него што се уведе алгоритам оцењивања положаја мобилног робота неопходно је прецизирати начин на који се врши предикција изгледа карактеристичног објекта након помераја. У том смислу, на слици 6.7 су приказана два узастопна положаја камере, у тренутку k и у следећем тренутку 1k+ . Веза између два положаја камере се добија на основу транслације 10Т и ротације 1 0R . Нека је део слике карактеристичног објекта обележена са pi , а вектор нормале ове површине n . Слика 6.7 Графички приказ хомографије. Два узастопна положаја камере (0 и 1) једнозначно су повезана транслацијом Т и ротацијом R. Предикција изгледа карактеристичног објекта након помераја камере се врши на следећи начин. Ако је дата тачка Px у равни слике која представља пресек вектора нормале n и посматраног дела слике pi . - 165 - Произвољна тачка x посматраног дела слике pi мора да задовољи услов припадности равни: T T Pn x n x= (6.12) Нека је дата тачка са координатама ( ,u v ) у равни слике у нултом положају: [ ]1 Tu v0u = (6.13) и нека позиција произвољне тачке x представља продор праве 0x uρ= кроз раван pi . У том случају, због услова припадности равни: 1( ) ( ,1) ( , )T T T T T T 0 P P 0 T T 0 P 0 0 n u n x n x n u u n x u n u ρ ρ ρ −= ⇒ = = (6.14) Након пројекције „на” другу камеру добија се: ( ) 1 1 T T 1 0 P 0 H u R n x I Tn u= −  (6.15) где је 1u обележен вектор положаја тачке x посматран из положаја камере 1. Матрица 1H је матрица хомографије и дефинише изглед објеката у положају 1 у тренутку 1k+ , ако се зна како објекат изгледа у положају 0 у тренутку k . На слици 6.8 је приказан један од карактеристичних објеката (сегмент слике димензија 20х20) и предикција његовог изгледа након помераја робота. - 166 - a) б) Слика 6.8 Карактеристични објекат #7 (a) и предвиђени изглед карактеристичног објекта #7 применом хомографије (б) након помераја мобилног робота за транслацију T и ротацију R. Применом хомографије једноставно се врши предикција изгледа дела слика везане за посматрани карактеристични објекат. У наставку ће бити показано како се утврђује сличност два карактеристична објекта након померања робота. Наравно, један објекат је дефинисан у положају 0 у тренутку k , а други објекат је предикција изгледа првог објекта применом хомографије у тренутку 1k+ . У оквиру овог истраживања одређивање сличности два карактеристична објекта утврђује се преко коефицијента корелације: ( , ) cov( , ) ( ) ( ) r X Y X Y X Yσ σ = (6.16) У претходној једнакости коришћена је уобичајена нотација за коваријансу и варијансу случајних променљивих векторских величина X и Y. Пример илуструје основну идеју одређивања сличности (слика 6.9). Одређивањем коефицијента корелације два дела слике одређује се сличност два посматрана објекта, а корисник усваја граничну вредност коефицијента корелације ( , ) gr X Yρ – веће вредности значе да је објекат препознат, а мање да није утврђена сличност. - 167 - 1 0,81 0,23 0,81 1 0,17 0,23 0,17 1 Слика 6.9 На слици су приказане вредности коефицијента корелације за три изабрана објекта: карактеристични објекат #7, предикција изгледа карактеристичног објекта #7 након ротације и карактеристични објекат #22. 6.3. Извођење алгоритма неуронског линеаризованог Калмановог филтра Једначине „стандардног” линеаризованог Калмановог филтра имају следећи облик: | | 1 k | 1 | | 1 1 | 1 | 1 ˆ ˆ ˆ( ( )) ( ) ( ) k k k k k k k k k k k k T T k k k k k k k k k x x K z h x P I KH P K P H H P H R − − − − − − = + − = − = + (6.17) kz представља мерења извршено у кораку k , | 1ˆ( )k kh x − је сензорски модел, kH је Јакобијан функције мерења, а kR матрица коваријанси шума мерења. Наравно, kK је појачање филтра. Да би применили алгоритам неопходно је дефинисати вектор стања ˆ kx , функцију која одређује његову промену | 1ˆ( )k k−f x и сензорски модел. На основу ових информација могуће је одредити одговарајуће Јакобијане. - 168 - Вектор стања чине положај мобилног робота ( )vx , вектор свих параметара вештачке неуронске мреже ( )wx и позиције карактеристичних објеката ( )mx , односно: T T T T[( ) ( ) ( ) ]v w mx x x x= (6.18) Овакава формулација вектора стања је већ уведена у петом поглављу. 6.3.1. Корак корекције НЛКФ алгоритма Основна разлика између ЛКФ и НЛКФ алгоритама оцењивања положаја је у кораку предикције. Вештачка неуронска мрежа у кораку предикције генерише оцену грешке између стварног кретања мобилног робота и математичког модела кретања ( | 1) M | 1 ( | 1) ( | 1) ( | 1) ( | 1) ˆ ( , ) ˆ ˆ ˆ ˆ ˆ k k vnet k k k k k k k k k k v w w m m x f x x x x x x − − − − − −    ⋅ ⋅ +     = =            (6.19) где је Mf теоријски модел кретања задат једначином на основу одометрије (3.11), а ( ) ( )ˆ ˆ( , , )vnet k-1|k-1 k-1|k-1 kv wx g x x u= је оцена грешке модела кретања, односно излазни вектор вештачке неуронске мреже. Предикција стања врши се само за положај мобилног робота, с обзиром на то да се на основу основних претпоставки о статичком окружењу усваја да су карактеристични објекти непокретни, а мобилни робот представља једини покретан објекат у окружењу. Параметри вештачке неуронске мреже нису функција кретања робота, па самим тим и њихова предикција је једнака претходној вредност након извршене модификације. Увођењем вештачке неуронске мреже неопходно је проширити Јакобијан модела кретања одговарајућим елементима: - 169 - ˆ ˆ ˆM ˆ ( ) ( ) ( ) ( ) v v wx x x x w m f g g 0 G f 0 I 0 0 0 I ∇ ⋅ + ∇ ⋅ ∇ ⋅    = ∇ ⋅ =      (6.20) где први елемент Јакобијана ˆ ˆM ( ) ( )v vx xf g∇ ⋅ + ∇ ⋅ представља извод модела кретања у односу на положај мобилног робота, а ˆ ( )wx g∇ ⋅ је Јакобијан вештачке неуронске мреже у односу на параметре саме мреже. Остали елементи Јакобијана модела кретања мобилног робота су или нула матрица или јединичне матрице одговарајућег типа. M ( ) ( ) ( ) u u u f g M f 0 0 ∇ ⋅ + ∇ ⋅    = ∇ ⋅ =      (6.21) Корак предикције НЛКФ алгоритма завршава се предикцијом матрице коваријанси: | | 1 T T k k k k uP GP G MC M−= + (6.22) где uC представља матрицу коваријанси управљања. 6.3.2. Иницијализација нових карактеристичних објеката Пре дефинисања основних величина неопходних за извођење математичког модела неуронског ЛКФ алгоритма потребно је објаснити на који начин се врши иницијализација нових карактеристичних објеката. Након идентификације новог карактеристичног објекта потребно је компензовати његову стварну позицију на слици усвојеном применом модела радијалне дисторзије (једначина (6.8)), одакле се одређују координате карактеристичног објекта у равни слике исказане у сензорском координатном систему S : - 170 - 0 0( ) ( ) 1 T S u u u vu u k v v k f f  − − =     h (6.23) Промена репрезентације у апсолутни спољашњи координатни систем W W W S S=h R h (6.24) омогућава одређивање параметара модела реципрочне удаљености: [ ] [ ] 2 2 tan 2 ; tan 2 ( ) ( ) T T i i i i W W y z W W W x x y x y z h h a a h h h α β ρ α β ρ α β = =       = =       +    λ p (6.25) α и β су углови елевације и азимута који једнозначно дефинишу правац вектора јединичног вектора m . Јединични вектор m одређује правац и смер карактеристичног објекта у положају мобилног робота одакле је објекат идентификован први пут и дат је преко углова азимута и елевације као: [ ]cos( )cos( ) sin( )cos( ) sin( ) Tα β α β β=m (6.26) Као што се види, јединични вектор m је дефинисан у спољашњем координатном систему W (погледати слику 6.4). Након успешне идентификације карактеристичног објекта, главном вектору стања се додају нови параметри реципрочне удаљености посматраног карактеристичног објекта: T T T posle pre  =   x x λ (6.27) где prex и poslex означавају вектор стања непосредно пре идентификације објекта и после придруживања вектора λ . Као што се види, ова трансформација мења број димензија вектора стања dim( ) 6preposle +∈ xx  . - 171 - Поред проширења вектора стања x потребно је проширити и матрицу коваријанси вектора стања P pre T posle aug aug ρσ      =        P 0 0 P J 0 R 0 J 0 0 (6.28) R је усвојена матрица коваријанси шума слике, ρσ коваријанса реципрочне удаљености ρ , а augJ је Јакобијан трансформације дефинисан као ... aug      ⋅   =    ∂ ∂   ∂ ∂  0 Е J 0 λ λ 0 0 x h (6.29) где је са Е обележена јединична матрица одговарајућих димензија ( ) ( ) ( ) ( ) ( ) ( )dim dim dim dim dim dimv w m v w m   + + × + +   x x x x x x . У наставку је потребно одредити све елементе Јакобијана трансформације J . Извод вектора λ по вектору стања x је v w m  ∂ ∂ ∂ ∂ =  ∂ ∂ ∂ ∂  λ λ λ λ x x x x (6.30) Извод вектора λ по вектору позиције камере vx може бити формулисан на следећи начин: ( , ) ( )v v x y v θ  ∂ ∂ ∂ =  ∂ ∂ ∂   λ λ λ x x x (6.31) где је са ( , )v x yx обележена позиција мобилног робота, а са ( )v θx оријентација мобилног робота. Односно: - 172 - [ ] ( , ) ( ) ( ) ( ) ; v x y v v vθ θ θ α β ∂ ∂ ∂ ∂ = =  ∂ ∂ ∂ ∂   λ λ Е 0 0 0 x x x x (6.32) Изводи углова азимута и елевације по оријентацији робота θ је 2 2 2 2 2 2 2 2 22 2 2 2 2 2 2 2 2 2 ; 0 ( ) ( ) W W W W y x W x y x y x yx z x x W x y zx y z x y x y z x y WW R C SR C S h h h h h h h hh h h h h h hh h h h h h h h h h α α α β θ θ β θ α β θ θ ∂ ∂ ∂ ∂ ∂ ∂ = = ∂ ∂ ∂ ∂ ∂ ∂  ∂  = − ∂ + +    +∂   =   ∂ + + + + + + + +   ∂∂ = ∂ ∂ h h h h h h Rh R R h (6.33) Промена вектора λ у односу на вектор параметара вештачке мреже не постоји тј. w ∂ = ∂ λ 0 x (нула матрица одговарајућих димензија). На крају, последњи елемент Јакобијана трансформације представља извод вектора λ по позицији карактеристичног објекта: [ ]0 ; 0 1 p T p i i i W S p p u W S u d x y z α β  ∂  ∂  = =∂ ∂    ∂ ∂ ∂∂ ∂ = ∂ ∂ ∂ ∂ ∂ λ λ λh h λ λ hh h h h h h h (6.34) У претходној једнакости непознати су следећи изводи: - 173 - ( ) ( ) ( ) 1 3 2 4 2 2 1 2 0 1 2 2 2 0 0 1 2 2 2 0 0 1 2 1 0 0 ; ; 1 0 0 1,1 (1 ) 2(( ) ) ( 2 ) 1,2 2 ( )( )( 2 ) 2,1 2 ( )( )( 2 ) S p u xW W W u v u d d d x d d u y d d d d u x d d d d u d f k f k r r u u d r d u u v v r d u u v v r α β κ κ κ κ κ κ κ κ      ∂  ∂ ∂ ∂   = =   ∂ ∂ ∂ ∂       ∂ = + + + − + ∂ ∂ = − − + ∂ ∂ = − − + ∂ ∂ ∂ λ h 0 h h h h h h h h h h h h ( ) 2 4 2 21 2 0 1 22,2 (1 ) 2(( ) ) ( 2 )d d d y dr r v v d rκ κ κ κ= + + + − + (6.35) чиме су одређени сви елементи Јакобијана трансформације augJ након придруживања параметара реципрочне удаљености λ новог карактеристичног објекта у вектор стања x . Да би се увео корак корекције филтра неопходно је извести Јакобијан сензорског модела. 6.3.3. Сензорски модел и Јакобијан сензорског модела На основу усвојеног модела реципрочне удаљености, који у исто време представља и сензорски модел ( )⋅h ( ( ) )ρ= − +S S SP Wh R p r m (6.36) могуће је одредити Јакобијан сензорског модела. За сваки од карактеристичних објеката потребно је одредити промену функције мерења у односу на вектор стања: 1 ... TTT mhhH x x  ∂∂    =    ∂ ∂      (6.37) Сваки појединачни блок може се написати у следећем облику: - 174 - TTT T i i i i v w m h h h h x x x x       ∂ ∂ ∂ ∂ =        ∂ ∂ ∂ ∂       (6.38) С обзиром на то да је усвојени сензорски модел базиран на реципрочној удаљености, Јакобијан се једноставно одређује на основу извода сложене функције (посматрано за један произвољни карактеристични објекат): ( , ) ( , ) S i d u S v x y u v x y h h h h x h h x ∂ ∂ ∂ ∂ = ∂ ∂ ∂ ∂ (6.39) где је ( , ) i v x y h x ∂ ∂ Јакобијан у односу на позицију робота у спољашњем координатном систему W ; d u h h ∂ ∂ представља Јакобијан модела радијалне дисторзије слике ( )d d uh h h= и одређује се као 1 d u u d h h h h −  ∂ ∂ =  ∂ ∂  ; u S h h ∂ ∂ је Јакобијан усвојеног модела камере; S v h x ∂ ∂ Јакобијан позиције карактеристичног објекта у тродимензионалном простору у односу на положај робота. Извод сензорског модела у односу на оријентацију робота је: ( )( ) ( ) ( ) ( ) RS S Si d u d u W CS S v u v u v h h h h h Rh R p r m x h h x h h xθ θ θ ρ∂ ∂ ∂ ∂ ∂ ∂∂= = − + ∂ ∂ ∂ ∂ ∂ ∂ ∂ (6.40) Јакобијан усвојеног модела камере u S h h ∂ ∂ има следећи облик: 2 2 0 ( ) 0 ( ) u x u z zu S y vv z z f k h f k h h h f kf k h h h h   − ∂   =  ∂ −    (6.41) - 175 - На основу свих зависности могуће је формирати први члан матрице H , тј. i v h x  ∂  ∂  . Други члан матрице H , који представља извод сензорског модела у односу на параметре вештачке неуронске мреже, i w h x  ∂  ∂  једноставно је одредити, с обзиром на то да сензорски модел не зависи од ових параметара i w h 0 x  ∂ = ∂  . На крају, треба одредити извод сензорског модела у односу на позицију карактеристичних објеката: S i d u S m u m h h h h x h h x ∂ ∂ ∂ ∂ = ∂ ∂ ∂ ∂ (6.42) С обзиром на то да је позиција карактеристичних објеката параметризована са шест независних параметара следи да је: ( ) S S S S S S S S S S W W W W m i h h h h h m m R R R R p r x p ρ α β ρ α β    ∂ ∂ ∂ ∂ ∂ ∂ ∂ = = −   ∂ ∂ ∂ ∂ ∂ ∂ ∂   (6.43) Изводи јединичног вектора правца m по угловима α и β су: [ ] [ ] sin( )cos( ) cos( )cos( ) 0 cos( )sin( ) sin( )sin( ) cos( ) m m α β α β α α β α β ββ ∂ = − ∂ ∂ = − − ∂ (6.44) Након приказа основних једнакости помоћу којих се врши иницијализација карактеристичних објеката могуће је показати основни алгоритам неуронског линеаризованог Калмановог филтра за оцењивање положаја мобилног робота и карактеристичних објеката уз аквизицију сензорске информације од камере (табела 6.1). - 176 - Табела 6.1: Псеудокод НЛКФ-а (аквизиција информације од камере). ( ) ω ϕσ σ σ σ σ σ σ σ ε ε ε ε ε ε ε ε θ θ θ − − − − − − − − − = = = ∆ + ∆ ∆ − ∆ +   ∆ + ∆ ∆  = = + +     2 2 2 2 2 2 2 2 1| 1 1| 1 0|0 , 1 | 1 1 , 1 , 1 1. ( , , , ) 2. , , ; ( , ) ; ( , , ); cos( ) 2 2 ˆ3. ( , ) sin( 2 xx ww mm v r s k k k k k k u d l d l r k d l k k k k r k r k diag diag diag s s s s bx s s y Алгоритам НЛКФ x P u z P C R x f x u ( ) ( ) ( ) − − − − − − −       − ∆  +    ∆ − ∆     ∇ + ∇ ∇   ∇ ⋅ =      ∇ ⋅ + ∇ ∇ =   1 1 3.11 6.19 ˆ ˆ ˆ1 1 1 1 1 ˆ ) , , 2 ( , ) ( , , ) ( , , ) 4. ( ) ( ) ( 5. d l k k k d l k k k k k k k k s s b s s b v v wx x x x w m u u u g w x u f x u g w x u g w x u 0 f 0 I 0 0 0 I f g f ( ) ( ) − − ⋅         = ∇ ∇ + ∇ ∇ = ⋅ =  =     =  ˆ ˆ, | 1 , | 1 ) 6. 7. _ ; _ ; 10. 11. 12. _ T T xx k k xx k k u i k Ti i i i k k k k m m m m p p p image take image find features image for all observed features u v s do for all features in do u v s predict appeаrance x x u u 0 0 P fP f fC f z z x ( ) ( ) ( ) ( ) ρ ρ ρ α β    =    > −  = = − +   ∂∂    = ∇ =    ∂ ∂      1 13. 14. _ _ _ , 15. 16 ˆ17. , ; ˆ18. ... m n n n m m m i p p p p p p k gr n n k n n n n TTT n n m k k end for u v s match predicted with seen u v s if n th featuresuscessfully identified S S S P W x x z z h R p r m hh H z x x [ ] ( ) ( ) ρ α β ρ σ − − − − − − − = + = + − = − =      = =         1 | 1 | 1 | | 1 | | 1 | 1 | | | 1 19. ( ) ˆ ˆ ˆ20. ( ) ; ( ) 21. 22. 23. ˆ ˆ24. ; n T n nT k k k k k k k k n n n n n k k k k k k k k k k k k k T i i i k kTT T k k k k k k aug a end if if featurenever seenbefore x y z K P H H P H R x x K z z P I K H P λ P 0 0 x x λ P J 0 R 0 J 0 0 | | ; 25. 26. ˆ27. , T ug k k k k end if end for return x P - 177 - 6.4. Експериментални резулати Приказани НЛКФ алгоритам је примењен у MATLAB® програмском окружењу [207], уз развој посебног софтверског кода и коришћењем Khepera II мобилног робота (техничке карактеристике су дате у табели 6.2) и WEB камере (техничке карактеристике су дате у табели 6.3). На слици 6.10 се могу видети мобилин робот и камера. Десктоп рачунар (2,20 GHz; 1 GB RAM) коришћен је као централна управљачка јединица. Комуникација између рачунара и робота се извршава путем RS232 кабла, док је USB кабл употребљен за комуникацију између рачунара и камере. Резолуција слике је 320 х 240 пиксела. Калибрација камере је је урађена коришћењем софтверског решења развијеног у MATLAB® програмском окружењу [28]. Табела 6.2: Техничке карактеристике – основна конфигурација Khepera II (KheIIBase). Назив Опис Процесор Motorola 68331, 25 [MHz] Оперативна меморија 512 Kbytes Погонски систем 2 DC серво мотора са уграђеним инкременталним енкодерима (око 12 пулсева по [mm] кретања робота) Максимална и минимална брзина кретања робота Максимална брзина кретања: 0.5 [m/s], Минимална брзина кретања: 0.02 [m/s] Основни сензори Осам infra-red сензора растојања. Домет сензора: око 0,08 [m]. Напајање Адаптер за директно напајање из мреже или батерије. Димензије робота Пречник: 70 [mm] Висина: 30 [mm] Управљачки софтвер MATLAB® преко RS232 порта - 178 - Табела 6.3: Техничке карактеристике WEB камере Prestigio PWC2. Назив Опис Резолуција сензора 2 Mpxl Димензија сензора 1/4“ CMOS Фокус 0,03 [m] - ∞ Максимална резолуција 1600x1200 Фреквенција прикупљања информација 30 fps (30[Hz]) са 640x480 резолуцијом Улаз/излаз (I/O) USB 2.0 Напајање Директно напајање преко рачунара. Комуникациони протокол USB 2.0 Слика 6.10 Мобилни робот Khepera II са WEB камером у лабораторијском моделу технолошког окружења. У сваком тренутку око 50 карактеристичних објеката су елементи здруженог вектора стања, што значи да вектор стања има ~303 параметра ( 303x∈ , N=3+6·50). У свакој итерацији филтар препознаје и додаје вектору стања три нова карактеристична објекта. Ово је хеуристички податак који за различите примене у различитим програмским окружењима може да варира (нпр. у релевантним рефернцама [37,44] чак се и не наводи експлицитан број, с обзиром на то да зависи од значајног броја фактора). Неконтролисани пораст димензија вектора стања контролише се хеуристичким приступом: ако робот предвиди карактеристични објекат n пута, а применом камере га идентификује n/2 пута, посматрани - 179 - карактеристични објекат и све његове корелације са осталим елементима вектора стања се бришу из меморије филтра. На овај начин број параметара које НЛКФ оцењује је ~300 (урачунати и параметри вишеслојног перцептрона). Перцептрон са једним скривеним слојем и једним неуроном има осам тежинских параметара 8wn = , што не доприноси значајно повећању димензија вектора стања (повећање је око 2,6%). Међутим, већ додавањем следећег неурона у скривеном слоју укупан број параметара вештачке неуронске мреже износи w p wN n n= (6.45) где је pn број неурона у скривеном слоју. Да би омогућили оцењивање у реалном времену изабран је перцептрон са једним скривеним слојем. Експерименти су спроведени за три различита броја процесирајућих јединица:  један неурон у скривеном слоју ( 8 ; 311wN N= = ),  три неурона у скривеном слоју ( 24 ; 327wN N= = )  пет неурона у скривеном слоју ( 40 ; 343wN N= = ). Наравно, претходне вредности су срачунате уз претпоставку да се у вектору стања налази 50 карактеристичних објеката. У наставку ће бити приказани експериментални резултати остварени у лабораторијском моделу технолошког окружења. Током експерименталног процеса акценат је дат на утицајима почетне коваријансе параметара вештачке неуронске мреже и броја неурона у скривеном слоју. На крају овог дела показани су упоредни експериментални резултати за симултано оцењивање положаја мобилног робота и карактеристичних објеката на бази НЛКФ-а и ЛКФ-а. Оцене положаја мобилног робота се директно пореде са оценама једноставног - 180 - модела кретања мобилног робота на основу одометрије (једначина 3.11) која не узима информацију из окружења. 6.4.1. Анализа утицаја почетне коваријансне матрице параметара вештачке неуронске мреже За свако понављање експеримента роботу су прослеђиване идентичне управљачке команде. Скуп управљачких команди је унапред дефинисан низом датим у табели 6.4: Табела 6.4: Низ управљачких команди. Т – транслација за 0,01 [m]; НР – ротација у месту у негативном математичком смеру за 5°; ПР – ротација у месту у позитивном математичком смеру за 5°. РБ 1. 2. 3. 4. 5. 6. 7. 8. 9. Врста управљачке команде Т НР Т ПР Т НР Т ПР Т Експерименти су спроведени за следеће вредности промена коваријансе тежинских односа: 1 2 3 410 ; 10 ; 10 ; 10 .w w w wP P P P − − − − = = = = Експериментални резултати су приказани на сликама 6.11 и 6.12. Као што се може видети на слици 6.11, већа вредност коваријансе резултира споријим растом улазних тежинских односа. Око корака #50 се може приметити да параметри мреже везани за очитавање енкодера нагло почињу да расту задржавајући исти тренд до краја експеримента; вредности тежинских односа за вектор положаја мобилног робота су константе. Излазне вредности тежинских односа имају континуалан раст од самог почетка експеримента и задржавају исти тренд до краја експеримента. - 181 - Као што је и очекивано, највећа промена вредности излазних тежинских односа односи се на промену позиције робота. Промена оријентације је константна и тежи нули. Промена коваријансе највише утиче на интензитет промене улазних и излазних тежинских односа, као и на периодичност промене. Када је коваријанса мања тежински односи могу постепено да се прилагоде променама у радном окружењу. Нагли скокови у процесу оцењивања нису дозвољени и могу да имају катастрофалан коначан резултат у погледу неуједначене (дисконтинуалне) промене параметара. Слика 6.11 Промена тежинских односа на улазу (колона са леве стране) и излазу из вештачке неуронске мреже (колона са десне стране) за различите вредности почетне матрице коваријанси. - 182 - Слика 6.11 (наставак) Промена тежинских односа на улазу (колона са леве стране) и излазу из вештачке неуронске мреже (колона са десне стране) за различите вредности почетне матрице коваријанси. Путања робота је приказана за сваки од експеримената на слици 6.12. Већа коваријанса подразумева и већи раст тежинских односа, што на крају резултира успостављањем веће разлике између ЛКФ-а и НЛКФ-а оцена положаја робота. Мања коваријанса има супротан резултат (мања коваријанса резултира мањим растом вредности тежинских односа чиме се омогућава уједначено „прављење корака” оцењивања). Међутим, као што се може видети са слике 6.12, чак и најмања усвојена коваријанса тежинских односа показује разлику у оценама ЛКФ-а и НЛКФ-а. - 183 - Слика 6.12 Утицај коваријансе тежинских односа на оцену путање мобилног робота. Упоредни приказ оцењених путања за линеаризовани Калманов филтар, неуронски линеаризовани Калманов филтар и одометрију. 6.4.2. Утицај броја неурона у скривеном слоју Исти скуп управљачких команди је коришћен и за оцену утицаја броја неурона у скривеном слоју. Сваки од експеримената је поновљен пет пута, а резултати су приказани у Табели 6.5. Експериментални резултати приказани у табели 6.5 указују на то да са повећањем броја неурона у скривеном слоју НЛКФ има боље резултате (боље у смислу релативне грешке) од ЛКФ-а. Средња апсолутна грешка НЛКФ-а се смањује са повећањем броја неурона, док квадратни корен средње квадратне грешке (ККСКГ) има исти ред величине за оба филтра. За други скуп експерименталних података оба филтра имају високу вредност за релативну грешку оријентације (НЛКФ ~22.5% ; ЛКФ ~21.5%). - 184 - Табела 6.5: Релативна грешка, средња апсолутна грешка (САГ) и квадратни корен средње квадратне грешке (ККСКГ) за пет понављања. Филтар Рел. грешка % # неурона xr yr θr САГ ККСКГ 1 11.2573 9.4889 4.8293 0.0511 0.0548 3 2.7644 7.9649 22.5919 0.0500 0.0721 НЛКФ 5 3.3432 1.777 7.4776 0.0333 0.0736 8.7757 7.2888 8.4170 0.0470 0.0530 4.0774 8.3209 21.4608 0.0469 0.0700 ЛКФ 4.0476 3.4420 11.5690 0.0474 0.0824 Оваква висока вредност се појавила током експерименталног процеса када је мањи број карактеристичних објеката био идентификован, а самим тим и иницијализован као елемент вектора стања. Овакве аномалије су честе због промене интензитета осветљења у просторији. Експериментални резултати указују да је грешка позиције мања код НЛКФ оцене, а најбољи резултати су постигнути са пет неурона у скривеном слоју. Међутим, у директном поређењу са ЛКФ оценама положаја, може се закључити да повећање броја неурона у скривеном слоју резултира и већом тачношћу НЛКФ-а. - 185 - 6.4.3. Анализа перформанси неуронског линеаризованог Калмановог филтра током кретања мобилног робота по дужој путањи С обзиром на основну хипотезу ове дисертације која се односи на могућност обављања унутрашњег транспорта у технолошком окружењу уз примену интелигентних мобилних робота, потребно је проверити и оценити перформансе неуронског линеаризованог Калмановог филтра током кретања робота по дужој путањи. Експериментални поступак је спроведен тако што је мобилном роботу за сваки од понављања експеримента прослеђен одговарајући скуп управљачких команди. Експеримент је поновљен три пута. Завршна путања и завршни положај робота зависе од грешака управљачког система, па због тог разлога путање нису идентичне (као што би се очекивало). Укупна дужина путање је приближно 1,9 [m]. Тренутни положаји мобилног робота су бележени ручно током кретања. Све обележене позиције робота формирају путању, а прикупљени скуп података је коришћен за оцену квалитета оцењивања НЛКФ и ЛКФ алгоритама. За оцену перформанси изабрана је НЛКФ архитектура са три неурона у скривеном слоју. Почетни положај мобилног робота је усвојен за спољашњи координатни систем тако да је [ ]0 0 0 Tvx = . Усвојене су следеће коваријансе: почетна коваријанса положаја мобилног робота 16 16 10(10 ,10 ,10 )v diagP − − − = ; почетна коваријанса тежинских параметара вештачке неуронске мреже 410wP − = ; почетна вредност тежинских параметара за улазни слој је 160 10inw − = , а за излазни 50 10outw − = . У просеку је потребно око 165 фрејмова за завршетак путање. На слици 6.13 је приказан један од спроведених експеримената, а може се видети како број - 186 - карактеристичних објеката варира током експеримента, као и оцењену путању робота током кретања. Слика 6.13 Резултати једног понављања експеримента. Са леве стране сваког дела слике 6.13 (а-ђ) дата је тренутна слика са камере на којој се могу видети препознати карактеристични објекти; са десне стране је НЛКФ оцена положаја мобилног робота (може се видети и оцена путање). Обе поменуте слике представљају резултат рада развијене - 187 - MATLAB® апликације за управљање роботом, аквизицију слике, идентификацију карактеристичних објеката и оцењивање положаја у реалном времену коришћењем НЛКФ-а. Изабрани су следећи фрејмови: а) #10 – НЛКФ иницијализује ~25 карактеристичних објеката; б) #73 – током прве секвенце управљачких команди за ротацију. Број препознатих карактеристичних објеката је мањи од десет; в) #97 – након завршетка треће секвенце транслаторног кретања и на почетку четврте секвенце ротационог кретања. Број препознатих објеката се повећава на ~15; г) #114 – почетак четврте транслације; д) #134 – током четврте транслације; ђ) #160 – крај експеримента. Експерименти су потврдили да интензитет осветљења значајно утиче на број карактеристичних објеката. Током ротације укупан број карактеристичних објеката опада. Ова дегенерација је донекле успешно контролисана постављањем додатних објеката који се разликују од окружења у погледу карактеристичне боје, што се може видети на слици 6.13 б) и в). Грешка дуж путање је дата као Еуклидска норма: Te ( ) ( )filt stv filt stvr r r r= − − (6.46) filtr представља оцењену путању посматраног естиматора (НЛКФ, ЛКФ или одометрија), а stvr представља „стварну” путању мобилног робота одређену обележавањем положаја мобилног робота током експерименталног процеса. Обе путање су дефинисане у спољашњем коодринатном систему W . Резултати су представљени у Табели 6.6. - 188 - Табела 6.6: Грешке срачунате за оцењене путање НЛКФ-а, ЛКФ-а и одометрије. НЛКФ ЛКФ Одометрија Грешка дуж путање [m] 0.4002 0.4258 0.800 САГ [m] 0.0155 0.0166 0.0369 Максимална грешка [m] 0.0636 0.0675 0.1044 НЛКФ оцене имају мању грешку у поређењу са осталим алгоритмима. НЛКФ и ЛКФ грешке имају исти ред величине, док су грешке одометрије веће. Упоредни приказ остварене путање и оцењених путања дат је на слици 6.14. Слика 6.14 Упоредни приказ оцена путање кретања мобилног робота. На слици се могу видети оцењене путање НЛКФ-а, ЛКФ-а, одометрије и путање формиране ручним обележавањем положаја мобилног робота током кретања. НЛКФ и ЛКФ оцене знатно „одскачу” од одометријске оцене. На крају ескперимента, НЛКФ оцена положаја је ближа стварном положају (измерен на крају кретања). - 189 - У току првог сегмента кретања, НЛКФ и ЛКФ су „препознали” да робот скреће услед несавршености управљачког подсистема. Одометријска оцена путање показује праволинијско кретање иако је робот континуално мењао оријентацију. Грешка одометрије на самом почетку се увећава у наставку кретања. Прва разлика између НЛКФ/ЛКФ оцене путање је уочљива након секвенци команди за ротацију. Недовољан број објеката је препознат услед смањеног укупног броја карактеристичних објеката. То резултира смањењем димензија вектора иновације, односно мањи број објеката учествује у кораку модификације вектора стања. Са повећањем броја карактеристичних објеката током транслације и оцене положаја оба алгоритма ближи су стварној путањи. Значајнија разлика између НЛКФ и ЛКФ оцена видљива је на самом крају транслаторног сегмента и почетку последње ротације. ЛКФ оцена почиње значајно да одступа од стварне путање, док НЛКФ има знатно мање одступање. На самом крају експеримента приметно је да је завршна позиција робота оцењена НЛКФ алгоритмом боља од ЛКФ оцене. Термин боља се односи на грешку између оцене путање одговарајућим алгоритмом и стварне путање – погледати табелу 6.6. Као што се на основу експерименталних резултата може видети, потребан је већи број корака (условно говорећи већи) да би се НЛКФ прилагодио условима. Наравно, ова чињеница је директна последица усвојене матрице коваријанси параметара вештачке неуронске мреже. Међутим, коначан исход примене НЛКФ алгоритма представља „боља” оцена положаја мобилног робота (у смислу усвојеног критеријјма оптималности) од осталих тестираних алгоритама. Да би се разумела НЛКФ оцена положаја мобилног робота требало би анализирати промену излазних вредности вештачке неуронске мреже током кретања робота. Типична промена је приказана на слици 6.15: а) промена излаза током целокупног експеримента; б) излазне вредности од - 190 - првог до 70-тог корака кретања; в) 71-110; г) 111- до краја експеримента. Приметно је да се интензитет излазних вредности вештачке неуронске мреже повећава током кретања да би се компензовала грешка. Са слике 6.15 се може видети да вештачка неуронска мрежа „препознаје” скретање током првог транслаторног сегмента (упоредити са сликама 6.13 и 6.14, као и са анализом НЛКФ оцене у поређењу са ЛКФ). У том смислу, вештачка неуронска мрежа повећава rx координату позиције робота док ry смањује. Тренд „препознавања” се наставља и касније: прва секвенца ротационих команди (слика 6.15 в)); транслација и завршна ротација (слика 6.15 г)). Може се видети да је највећа промена оцене грешке на самом крају експеримента, када је приметан тренд повећавања ry координата позиције, а смањења rx координате позиције робота. Оцена оријентације је углавном константна, услед усвојених почетних вредности НЛКФ-а које не дозвољавају скоковите (нагле) промене оријентације мобилног робота током кретања. - 191 - Слика 6.15 Промена излазних вредности вештачке неуронске мреже током експеримента.. 6.5. Дискусија Математички модели кретања мобилног робота показују недостатак у реалним условима. Инжењерски приступ решавања овог проблема базира се на off line калибрацији параметара модела на основу серије спроведених експеримената. Међутим, у реалним условима експлоатације робота у технолошком окружењу не може се очекивати успешна предикција свих параметара на основу серије експеримената. Свака промена карактеристика окружења повлачи и промену одометријских параметара. Истраживачи су покушали да у on line режиму током кретања мобилног робота одреде оптималне вредности одометријских параметара. Овај поступак имплицира проширивање вектора стања одометријским - 192 - параметрима модела. Међутим, адекватно моделирање подразумева оцењивање великог броја параметара модела, што у неким случајевима није могуће. Инжењерски начин размишљања јасно повлачи границу између теоријски применљивог модела и модела који генерише оптималне резултате у пракси (оптимално у смислу усвојеног критеријума оптималности). Неуронски линеаризовани Калманов филтар омогућује on line модификацију параметара вештачке неуронске мреже (машинско учење) током експлоатације мобилног робота. Претпоставља се да вештачка неуронска мрежа може да научи (оцени) нелинеарну везу која постоји између стања мобилног робота и управљачких величина. Информације о овој функционалној зависности се „налазе” у параметрима вештачке неуронске мреже. Експериментални резултати потврђују да неуронски линеаризовани Калманов филтар у идентичним контролисаним условима генерише оцену положаја мобилног робота више тачности. Примена система препознавања на бази камере за аквизицију сензорске информације отвара потпуно нове могућности. За разлику од сензора растојања, камера пружа већу количину различитих типова информација. Примена једноставних карактеристичних објеката у виду пројекција реалних објеката на раван слике омогућава решавања проблема оцењивања положаја мобилног робота. Параметризација карактеристичних објеката применом модела реципрочне удаљености омогућава тренутно прикључивање објекта процесу оцењивања, одмах након његове детекције и инцијализације. Међутим, да би се смањио број димензија проблема, у будућности би требало омогућити прелазак и на Еуклидску параметризацију са три параметра. У наредним корацима у истраживању логично је за очекивати примену система препознавања на бази камере за проблем детекције и - 193 - препознавања препрека, као и за управљање на основу повратне информације са слике. Побољшања развијеног система оцењивања положаја на бази неуронског линеаризованог Калмановог филтра се могу сумарно приказати следећим ставкама:  Увођење двослојног перцептрона и вештачке неуронске мреже са радијалним активационим функцијама. Симулациони резултати (поглавље број пет) су показали да обе вештачке неуронске мреже позитивно утичу на смањење оптимистичности филтра, а тиме и на побољшање оптималности;  Оптимално препознавање карактеристичних објеката. У [38] је коришћен алгоритам случајног консензуса, чија је примена резултирала повишењем тачности алгоритма оцењивања положаја. Примена овог алгоритма отвара питање избора карактеристичних објеката који ће бити коришћени у кораку корекције. Ова могућност представља потпуно нови поглед на процес машинског учења;  Побољшање перформанси развијеног система, у погледу коришћеног хардвера, да би се постигло процесирање информација у реалном времену (фреквенције од 30 [Hz]). - 194 - 7. ПРИМЕНА ИНДУСТРИЈСКИХ МОБИЛНИХ РОБОТА У ИНТЕЛИГЕНТНИМ ТЕХНОЛОШКИМ СИСТЕМИМА 7.1. Приказ технолошког окружења – основне информације У овом делу је приказано реално технолошко окружење чији је диспозициони план употребљен за формирање одговарајућег лабораторијског модела. Размештај машина алатки и радних места у производњи и монтажи предузећа „Монтпројект” подразумевао је претходну анализу пројектованих технолошких процеса обраде делова, као и анализу дефинисане технологије за монтажу готових производа, како би се кроз процес оптимизације плана распореда технолошке опреме дошло до коначног решења које је у складу са прописаним нормативима за пројектовање фабричких постројења [123]. Уређење производног простора може да се изврши на два начина: 1) Размештај производне опреме према врсти процеса: машине алатке и уређаји се групишу у специјализованим одељењима према функцији коју обављају. 2) Размештај производне опреме према редоследу технолошких операција: машине алатке и уређаји се постављају у линијском распореду који зависи од редоследа извођења операција сходно пројектованом технолошком процесу. - 195 - У предузећу „Монтпројект” је примењен принцип уређења производног простора базиран на другом начину. Диспозициони план је приказан на слици 7.1. Складишни простор организован је према пројектованим технолошким процесима, односно токовима материјала, али и према расположивом простору. У овом производно-монтажном погону предвиђена су следећа складишта:  Улазно складиште полуфабриката (лима) – позиција 32 ;  Међускладиште – позиција 15;  Складиште готових делова од лима (полупроизводи) – позиција 21;  Складиште вијчане робе и компонената за монтажу – позиција 22;  Складиште готових делова од бакра – позиција 23;  Складиште готових производа – позиције 25 до 31. За складиште полуфабриката (32) је предвиђено регално складиште са полицама. Међускладиште (15), складиште полупроизвода (21) и складиште готових делова од бакра (23) су у овом пројектном решењу диспозиционог плана базирани на истом типу регалног складишта са полицама (32). Ова складишта су распоређена према токовима материјала, са циљем минимизирања и оптимизирања транспортних трошкова. Складиште вијчане робе и компонената за монтажу (22) је сандучастог типа складишта. Складиште готових производа је палетног типа (25-31) и смештено је у простору за ту намену (слика 7.1). Машине алатке које се налазе у технолошком окружењу су:  М1 – маказе за сечење лима,  М2 – компјутерски нумерички управљана (КНУ; енг. Computer Numerical Control - CNC) машина за пробијање и просецање,  М3 – CNC машина за фазонско савијање лимова (позната и као апкант преса [86]), - 196 -  М4 – машина за исецање профила,  М5 и М6 – стубна бушилица (2 ком.),  М7 – кружна тестера,  М9 – линија за обраду делова од бакра. Према пројектованом диспозиционом плану види се да су у линијском распореду кључне машине за обраду челичног лима, машине алатке М1, М2, М3 и М4, а да су издвојене машине алатке М5, М6 и М7, које су у мањој употреби. Линија за обраду бакра (М9) потпуно је дислоцирана у односу на све друге обрадне системе, јер је и технолошки процес израде делова од бакра издвојен о односу на остале технолошке процедуре. Оштрилица алата (машина М8) се највише користи за оштрење алата који се користе за машину алатку М2, тако да је позиционирана баш уз њу. Унутрашњи транспорт материјала обавља се помоћу два виљушкара: дизел виљушкара носивости до 2,5 [t] и ручног виљушкара носивости до 1,5 [t]. Постојећим пројектним решењем је предвиђено да се саобраћај унутар погона одвија у једном смеру, с тим што је остављена могућност да се у некој другој фази развоја предузећа уведе и двосмерни саобраћај. У производном делу погона материјал се креће у линијском распореду од једног до другог радног места према унапред дефинисаном технолошком поступку, док се у монтажном делу погона материјал креће кружно. На основу свих представљених информација о карактеристикама технолошког окружења, развијен је лабораторијски модел посматраног технолошког окружења у коме треба тестирати постављену хипотезу овог истраживања о могућности примене интелигентних мобилних робота за потребе унутрашњег транспорта сировина, полуфабриката, материјала и готових делова и развоју основних способности мобилног робота за ову намену. Лабораторијски модел технолошког окружења је приказан на слици 7.2. - 197 - Слика 7.1 Диспозициони план (layout) производно-монтажног погона предузећа „Монтпројект” [123]. - 198 - а) б) Слика 7.2 Лабораторијски модел технолошког окружења. 7.2. Нова хибридна управљачка архитектура за навигацију мобилног робота у технолошком окружењу Примена мобилних робота у технолошком окружењу за обављање унутрашњег транспорта сировина, полуфабриката, материјала и готових делова подразумева одговарајући степен независности у погледу надзора од стране оператера. Да би се омогућио несметан транспорт неопходно је развити такве подсистеме система мобилног робота који би вршили прикупљање информација о стању радног окружења и стању робота, процесирање ових информација, доношење одлука и на крају деловање у складу са изведеним закључцима. У уводном поглављу су наведене особине које интелигентни агент у општем случају треба да има. Увођење ових способности има за циљ обезбеђивања независности у погледу потребе за сталним надзором од стране оператера, чиме би се омогућило несметано увођење интелигентног транспорта применом мобилних робота. Међутим, увођење ових способности не значи да ће мобилни робот a priori постати интелигентан. Могуће је и развити такав концепт мобилног робота који би има поједине, или чак све потребне способности, али не би - 199 - могао да обавља технолошки задатак без директног надзора од стране оператера. Да би се оваква ситуација избегла неопходно је развити редослед тока информација у роботском систему и дефинисати међусобне зависности. Другим речима, потребно је развити управљачку архитектуру. 7.2.1. Хибридна управљачка архитектура Развој управљачких архитектура је истраживачки правац у оквиру роботике као научно-техничке дисциплине, који успоставља интеграцију специфичних алата, језика, метода и алгоритама у циљу пројектовања напредних роботских система или решења. У литератури [5] се наводи и следећа дефиниција: развој роботске управљачке архитектуре представља дисциплину која се бави развојем специфичних робота на основу скупа основних развијених математичко-софтверских решења. Управљачка архитектура једнозначно дефинише методе помоћу којих се врши аквизиција и процесирање сензорских информација и методе доношења одлука. Односно, управљачка архитектура одређује ток информација у роботском ситему. Овако уведен појам управљачке архитектуре се разликује од појма архитектуре који се користи у оквиру рачунарских наука. У овом потпоглављу је представљена хибридна управљачка архитектура развијана за потребе примене у систему мобилног робота намењеног унутрашњем транспорту, као и експериментални резултати добијени током развоја и тестирања на едукационом мобилном роботу у лабораторијском моделу технолошког окружења [12]. Архитектура је приказана на слици 7.3. - 200 - Слика 7.3 Хибридна управљачка архитектура [12,192]. Предложена хибридна управљачка архитектура (ХУА) састоји се од четири основна блока: сензорски блок, блок перцепције и планирања, блок брзих реакција и излазни блок. Сваки од уведених блокова има одговарајућу улогу у функционисању архитектуре/робота као целине и у наставку ће сваки од блокова бити представљен. Архитектура је развијана уз примену LEGO мобилног робота (LEGO Mindstorms NXT комплет [72]), па је избор сензора ограничен оним сензорима који се налазе у оквиру комплета. Сензорски блок је први блок развијене архитектуре, а формирају га следећи сензори: ултразвучни давачи растојања, инкрементални енкодери и оптички сензор (сензор за очитавање боје). Ултразвучни давачи растојања представљају сензоре који су коришћени за детекцију препреке која се налази испред робота. Ови сензори обезбеђују информацију о раздаљини између мобилног робота и препреке (информација се прослеђује у виду нумеричке вредности исказана у [cm]). Инкрементални енкодери очитавају број обртаја погонских вратила два мотора. Ова информација се користи у алгоритму оцењивања положаја за предикцију инкременталног помераја мобилног робота. Оптички сензор је коришћен - 201 - за очитавње боје подлоге технолошког окружења. Посебан модул овог блока је ЛТЗ модул (акроним од листа транспортних задатака) који обезбеђује информацију о приоритетним транспортним задацима које је неопходно обавити у складу са технолошким процесом. Блок перцепције и планирања чине три модула: модул за оцењивање положаја, модул за планирање путање и модул за избегавање препрека. Модул за оцењивање положаја мобилног робота решава проблем локализације робота у познатом технолошком окружењу. Модул је развијен на бази линеаризованог Калмановог филтра (поглавље три). Улазне величине у модул су очитавање енкодера и сензора за очитавање интензитета боје, а излазна величина је оцена положаја робота (вектор стања са одговарајућом матрицом коваријанси). Модул за планирање путање дефинише оптималну путању у складу са транспортним задатком. Модул је развијен на основу А* алгоритма претраге [36,105,173,174] који тражи најкраће растојање између две изабране позиције у окружењу. ЛТЗ модул сензорског блока прослеђује улаз за овај модул, док се излаз (оптимална путања) прослеђује ка наредним блоковима и њиховим модулима. Модул за избегавање препрека прима информације о присуству препрека од ултразвучних сензора растојања из сензорског блока и о положају мобилног робота из модула за оцењивање положаја, а излазне информације прослеђује следећем блоку. Излазне вредности овог модула представљају резултат интерпретирања примљених информација из сензорског блока применом одговарајућег алгоритма. Блок брзих реакција прима одговарајуће информације од блока перцепције и планирања. Модул за управљање скретања робота заснива се на примени вештачких неуронских мрежа које мењају оријентацију мобилног робота у складу са обрађеним информацијама. Последњи модул је модул за управљање брзином кретања робота који одређује да ли треба убрзати кретање сходно постављеном транспортном задатку који на - 202 - основу технолошког поступка секвенцијално дефинише машине алатке/међускладишта, али и времена потребна за завршетак одговарајућих технолошких операција. Излазни блок обрађене информације прослеђује роботу путем управљачких команди, а корисник у сваком тренутку има увид у функционисање система преко рачунара. 7.2.2. Приказ основних модула Модул за планирање путање ЛТЗ модул (листа технолошких задатака) у сензорском блоку одређује оптималну путању у складу са технолошким процесом. ЛТЗ модул се састоји од:  појединачних транспортних задатака дефинисаних технолошким процесом,  технолошких времена потребних за обављање одговарајућих технолошких операција. На основу ових информација главни транспортни задатак је једнозначно одређен, чиме је дефинисана и путања мобилног робота у сваком тренутку. Информације о појединачним транспортним задацима и оценама технолошких времена ЛТЗ модул прослеђује Модулу за планирање путање мобилног робота. На садашњем нивоу развоја модул за планирање путање је базиран на А* алгоритму претраге који тражи оптималну путању на основу познатих почетних и циљних положаја мобилног робота. А* алгоритам одређује оптималну путању у смислу најкраћег пређеног пута, одређујући минимум следеће функције циља: )()()( nhngnf += (7.1) где ( )g n представља цену кретања од чвора графа i до чвора графа j , а ( )h n је параметар усвојен на основу искуства (хеуристика) који одређује - 203 - растојање од чвора j до циљног чвора. Лабораторијски модел технолошког окружења дискретизован је мрежом од 100 х 150 пиксела, (димензија пиксела 0,01x0,01 [m]) и усвојено је да су пиксели осмоспојиви. А* алгоритам претраге тражи најкраћи пут између два пиксела узимајући у обзир и хеуристичку оцену растојања од посматраног пиксела до циљног пиксела, која је одређена на основу Еуклидске норме. Оптималне путање одређене применом А* алгоритам претраге за два карактеристична случаја су дате на слици 7.4. а) б) Слика 7.4 Приказ оптималне путање одређене применом А* алгоритма. У првом случају се може видети оптимална путања када постоји само један циљни чвор (а). На другом делу слике (б) је дат приказ путање срачунате на основу примене А* алгоритма када постоји низ секвенцијално задатих циљних чворова. У конкретном случају, у питању су транспортна одредишта одређена одговоарајућим транспортним задацима које робот треба да изврши. - 204 - Модул за управљање скретања Након обраде и интерпретирања одговарајућих сензорских информација, блок брзих реакција робота генерише управљачке команде. Модул за управљање скретања је развијен применом вештачких неуронских мрежа, које на улазу у модул добијају информацију о потребној инкременталној промени оријентације, а на излазу модула генеришу потребну управљачку команду (број обртаја погонских вратила оба мотора). Развој управљачког модела подразумева познавање динамичких карактеристика, а тиме и математичке формулације кретања робота. Током спровођења експерименталног процеса често је мењана конфигурација мобилног робота у циљу формирања оптималне конфигурације (смањивање масе, промена положаја сензора итд.). Овакве промене подразумевају и модификацију полазног математичког модела, а тиме и свих припадајућих параметара (нпр. позицију тежишта робота, као и различита појачања у успостављеном управљачком моделу), што за потребе реализације основног циља овог истраживања није од приоритета. Модул развијен на бази вештачких неуронских мрежа једноставно решава поменуте недостатке. Развој одговарајућег модела на бази вештачких неуронских мрежа подразумева препознавање улазних и излазних величина, формирање скупа улазно-излазних парова за обучавање и спровођење оптимизације одговарајућих параметара (машинско учење) [122,124]. Први корак у моделирању полазног проблема је формирање скупа чији су елементи улазно-излазни парови за обучавање. С обзиром на основну намену модула, улазна величина представља жељену инкременталну промену оријентације мобилног робота, док су излазне величине вредности броја обртаја погонских вратила оба мотора. Прикупљање експерименталних података је обављено на следећи начин: - 205 -  Мобилни робот је постављен у произвољни почетни положај;  Управљачка команда за промену оријентације се прослеђује мобилном роботу;  Мерење релативног угла за који је робот променио оријентацију за задату управљачку команду. Понављањем овог поступка одређују се непознате вредности броја обртаја погонских вратила за све неопходне релативне промене оријентације мобилног робота. Тестирани су следеће вештачке неуронске мреже:  Генерализована регресиона вештачка неуронска мрежа (ГРВНМ)  Вештачка неуронска мрежа са радијалним активационим функцијама (ВНМРАФ)  Вишеслојни перцептрон (ВНМВП). За обучавање и тестирање вештачких неуронских мрежа коришћени су већ развијени модели поменутих вештачких неуронских мрежа у MATLAB® окружењу у оквиру одговарајуће палете софтверских алата (Neural Network Toolbox). Обучавање изабраних вештачких неуронских мрежа извршено је на следећи начин. Од полазног скупа случајним избором је издвојено:  50% улазно-излазних парова (50% парова коришћено је за оптимизацију параметара вештачке неуронске мреже, а осталих 50% за оцену генерализације „наученог”),  70% улазно-излазних парова (аналогно претходном, однос је 70%:30% у корист скупа за оптимизацију). За обучавање вишеслојног перцептрона изабране су следеће архитектуре за тестирање:  јендослојне архитектуре: 1-[3]1-1; 1-[5]1-1; 1-[8]1-1; 1-[10]1-1; - 206 -  двослојне архитектуре: 1-[2-1]2-1;1-[3-1]2-1; 1-[3-2]2-1;1-[5-3]2-1;1-[8-4]2-1. Архитектуре са три и више скривених слојева нису разматране. Тестирана је и примена две различите сигмоидне активационе функције (tansig и logsig). За генерализовану регресиону вештачку неуронску мрежу вариран је опсег активационе функције. За вештачку неуронску мрежу са радијалним активационим фунцијама вариран је број неурона. Свака вештачка неуронска мрежа иницирана је 30 пута са случајно изабраним почетним параметрима, а квадратни корен средње квадратне грешке (једначина 4.22) коришћен је као тест статистика (s статистика). Табела 7.1 приказује средње вредности s статистике и стандардну девијацију за 30 понављања процеса обучавања. На основу табеле 7.1 и спроведеног експерименталног поступка (слика 7.5) може се закључити:  не постоји значајна разлика између тестираних архитектура у погледу избора активационе функције ВНМВП;  не постоји значајна разлика између тестираних ГРВНМ у погледу избора ширине поља покривености (опсега) радијалних функција;  Број неурона код ВНМРАФ и ГРВНМ не утиче на тачност. - 207 - Табeлa 7.1: Резултати оптимизације параметара након 30 независних понављања процеса обучавања и тестирања. 50% 70% Параметар за варирање obučs tests obučs tests tansig 0,5813±0,1154 0,5809±0,1092 0,6162±0,0504 0,6270±0,0585 3 logsig 0,6207±0,0455 0,6141±0,0398 0,5686±0,1028 0,5646±0,1076 tansig 0,6120±0,0203 0,6204±0,0190 0,6156±0,0152 0,6230±0,0339 5 logsig 0,6162±0,0264 0,6269±0,0229 0,6278±0,0149 0,6298±0,0332 tansig 0,6156±0,0236 0,6199±0,0241 0,6289±0,0137 0,6322±0,0267 8 logsig 0,6245±0,0236 0,6339±0,0214 0,6173±0,0139 0,6219±0,0281 tansig 0,6301±0,0213 0,6347±0,0232 0,6284±0,0111 0,6236±0,0270 10 logsig 0,6256±0,0201 0,6324±0,0188 0,6229±0,0147 0,6241±0,0309 tansig 0,4551±0,1687 0,4543±0,1685 0,5178±0,1256 0,5271±0,1283 2-1 logsig 0,5263±0,1687 0,5231±0,1646 0,4170±0,2008 0,4198±0,2054 tansig 0,5378±0,1878 0,5421±0,2007 0,5035±0,1808 0,5080±0,1803 3-1 logsig 0,5197±0,1685 0,5218±0,1706 0,4901±0,1536 0,4833±0,1506 tansig 0,5673±0,1194 0,5702±0,1231 0,5775±0,1049 0,5941±0,1145 3-2 logsig 0,5576±0,1308 0,5611±0,1317 0,5795±0,1190 0,5871±0,1243 tansig 0,6058±0,0515 0,6122±0,0511 0,6122±0,0584 0,6144±0,0611 5-3 logsig 0,6052±0,0588 0,6145±0,0560 0,6181±0,0140 0,6164±0,0283 tansig 0,6304±0,0247 0,6279±0,0390 0,6231±0,0149 0,6245±0,0335 ВНМВП 8-4 logsig 0,6208±0,0228 0,6288±0,0254 0,6277±0,0143 0,6324±0,0348 110− 0,5877±0,0257 0,6032±0,0143 0,6098±0,0161 0,6052±0,0252 310− 0,6219±0,0192 0,6257±0,0174 0,6197±0,0114 0,6199±0,0260 510− 0,6202±0,0199 0,6310±0,0219 0,6205±0,0109 0,6183±0,0265 ГРВНМ 710− 0,6237±0,0229 0,6187±0,0251 0,6228±0,0157 0,6140±0,0356 1 0,6175±0,0284 0,6137±0,0275 0,6178±0,0170 0,6208±0,0300 2 0,5600±0,1121 0,5651±0,1137 0,5601±0,0896 0,5570±0,0879 3 0,6364±0,0214 0,6141±0,0235 0,6020±0,0595 0,6032±0,0645 5 0,6134±0,0243 0,6107±0,0175 0,6236±0,0111 0,6267±0,0206 8 0,6315±0,0185 0,6254±0,0552 0,6220±0,0512 0,6101±0,0533 ВНМРАФ 10 0,6305±0,0322 0,6343±0,0389 0,6241±0,0127 0,6384±0,0299 - 208 - а) б) Слика 7.5 Приказ остварених резултата обучавања. Упоредни приказ генерисаних резултата све три анализиране вештачке неуронске мреже: скуп за оптимизацију (а) и тестирање (б). За спроведене експерименталне поступке са 50% и 70% улазно-излазних парова, случајно изабраних из скупа за обучавање, може се закључити да све тестиране вештачке неуронске мреже показују сличну тенденцију. Тачност свих тестираних мрежа тежи вредности блиској 0,62 без обзира на број неурона и промену параметара обучавања. С обзиром на релативно константну вредност еталона ККСКГ за оба скупа, није тешко изабрати одговарајућу вештачку неуронску мрежу која ће извршавати корекције у реалном времену. Препознавање боје подлоге Да би се применио линеаризовани Калманов филтар за решавање проблема локализације мобилног робота у лабораторијском моделу технолошког окружења потребно је увести сензорску информацију. За ове потребе је употребљен оптички сензор који се налзи у оквиру LEGO Mindstorms NXT комплета. Основна идеја примене линеаризованог Калмановог филтра за оцењивање положаја мобилног робота током кретања може се представити на следећи начин: лабораторијски модел технолошког окружења је беле боје, па свака промена боје може бити - 209 - употребљена као сензорска информација потребна за модификацију параметара. У лабораторијском моделу технолошког окружења постављен је произвољан број карактеристичних објеката црне боје квадратног облика димензија 0,03х0,03 [m] на подлогу окружења (слика 7.6). Пошто се ради о проблему локализације, позиције ових карактеристичних објеката су познате. Уколико робот током кретања у окружењу пређе преко једног од постављених објеката, сензор за препознавње боје ће детектовати ову промену (слика 7.6). Распоред карактеристичних објеката зависи од корисника и у општем случају не може се издвојити јединствен поступак чија би примена омогућила несметано обављање транспортног задатка. У литератури се наводе различити поступци позиционирања карактеристичних објеката али је коначни закључак да изабране позиције зависе од самог транспортног задатка и (искуства) пројектанта [185]. а) б) Слика 7.6 Једна од развијених конфигурација LEGO Mindstorms NXT мобилног робота током кретања. Оптички сензор је стално активан и емитује светлост црвене боје. На слици се могу видети и карактеристични објекти. Услед промене осветљења у просторији оптички сензор често не пријави адекватну промену боје, односно не изврши правилну класификацију очитане сензорске информације. Да би омогућили тачну идентификацију ове промене неопходно је развити одговарајући модел за препознавање боје подлоге лабораторијског модела технолошког окружења. - 210 - Модел је развијен применом вештачких неуронских мрежа. Проблем који ова вештачка неуронска мрежа треба да реши у реалном времену јавља се при узорковању интензитета светлости одбијене од подлогу. Приликом одређивања боје подлоге применом оптичког сензора, долази до појаве сенки услед промене амбијенталног осветљења. Директном интерпретацијом сензорске информације не могу се јасно разграничити резултати који карактеришу подлогу беле и црне боје. Сензор не поседује потребан ниво робусности, тако да се применом вештачке неуронске мреже могу постићи одговарајуће перформансе при граничним (критичним) мерењима неопходне за даље акције робота. Прикупљање експерименталних података треба да обухвати све граничне ситуације препознавања боје подлоге које могу да се појаве током аквизиције информација у реалном времену. Скуп улазно-излазних парова за обучавање вештачке неуронске мреже формиран је на следећи начин. Током кретања мобилног робота у окружењу светлосни сензор је стално вршио аквизицију информација. У току кретања мобилног робота вариран је интензитет амбијенталног осветљења наизменичним формирањем осенчених делова подлоге преко којих је робот прелазио. Након тога, робот је постављен директно изнад карактеристичног објекта црне боје и током аквизиције информација светлосног сензора наизменичним покретима симулиране су критичне ситуације приликом кретања робота. На овај начин, скуп улазно-излазних парова за обучавање вештачке неуронске мреже, обухвата све критичне ситуације. Скуп прикупљених експерименталних података је представљен на слици 7.7. - 211 - Слика 7.7 Скуп улазно-излазних парова за обучавање вештачке неуронске мреже за препознавање боје подлоге. Скуп обухвата више од 10000 примера (5000 за сваку од боја). У табели 7.2 су приказани ескпериментални резултати након спроведене оптимизације параметара вештачке неуронске мреже. Због релативно једноставног полазног проблема класификације одлучено је да се изврши упоредни тест једнослојних вештачких неуронских мрежа са tansig активационом функцијом и различитим бројем неурона. Сума квадрата грешака (СКГ) срачуната за полазни скуп за обучавање, усвојена је као еталон на основу кога ће се извршити избор. На основу резултата обучавања може се закључити да повећање броја неурона у скривеном слоју доприноси смањењу параметра СКГ. Међутим, с обзиром на основни проблем класификације боје након аквизиције информације оптичког сензора у реалном времену, неопходно је проверити способност генерализације вештачке неуронске мреже за изабрани тест скуп. - 212 - Табела 7.2: Резултати тестирања различитих архитектура. Број неурона у скривеном слоју Активациона функција СКГ (обучавање) 1 tansig 0,0323±0,0000 2 tansig 0,0317± 410− 3 tansig 0,0313± 410− 4 tansig 0,0311±5· 410− 5 tansig 0,0309±5· 410− У том смислу, формиран је улазни тест скуп са вредностима које нису садржане у 70% изабраних улазно-излазних парова од полазног скупа за обучавање. Изабране вредности у тест скупу теже ка граничним вредностима мерења, што представља вишу вредност за црну боју (очекиване вредности ~320 bit), а нижу вредност за белу боју (очекивана вредност ~640 bit). Вредности и генерисане излазне вредности вештачке неуронске мреже дате су у табели 7.3. Табела 7.3: Приказ изабраних граничних вредности и генерисаних вредности вештачке неуронске мреже. 500 0,8207 511 0,8957 498 0,8544 506 0,8957 Бела боја подлоге лабораторијског модела технолошког окружења 485 0,7805 450 -0,0006 455 -0,0073 448 0,0025 445 -0,0059 Црна боја карактеристичних објеката 460 0,0585 - 213 - Активација излазног неурона треба да буде ближа 1 уколико се ради о белој боји, а ближа 0 ако је у питању црна боја (1-бело; 0-црно). Увидом у резултате потврђује се да и за граничне вредности вештачка неуронска мрежа „препознаје” разлику између беле боје подлоге лабораторијског модела технолошког окружења и црне боје карактеристичних објеката. Модул за оцењивање положаја мобилног робота Након избора вештачке неуронске мреже која омогућава мобилном роботу да класификује сигнал оптичког сензора у одговарајућу класу може се наставити са увођењем алгоритма линеаризованог Калмановог филтра за оцењивање положаја (локализацију) током кретања. Сензорски модел развијен за локализацију базиран је на карактеристичним објектима. Вектор који једнозначно дефинише карактеристични објекат је ( ) [ ]n n n Tt t t tf z x y s= , где n tx и n ty означавају x и y координате n-тог карактеристчног објекта у спољашњем координатном систему, а nts је карактеристика објекта (у овом случају боја). Међутим, поставља се следеће питање: након детекције карактеристичног објекта, како робот „зна” који је карактеристични објекат у питању? Проблем разликовања појединачних објеката је решен применом поступка максималне веродостојности [121], односно: 1 12 1 ˆ ˆ( ) argmaxdet(2 ) exp{ ( ) [ ] ( )} 2 n i n T n i n k k k k k k n c i S z z S z zpi − −= − − − (7.2) где је n редни број карактеристичног објекта, ikz је сензорска информација, ˆnkz је предвиђена сензорска информација n-тог објекта, а n kS је одговарајућа коваријансна матрица. На овај начин, након аквизиције информације оптичког сензора и препознавања боје применом развијеног неуронског модела, могуће је применити ЛКФ алгоритам за локализацију мобилног робота пошто поступак максималне веродостојности омогућава тачно одређивање који је карактеристични објекат у питању. - 214 - 7.2.3. Експериментални резултати Предложени концепт је тестиран у лабораторијском моделу технолошког окружења. Основне техничке карактеристике мобилног робота су дате у табели 7.4 док је на слици 7.8 приказан мобилни робот у лабораторијском моделу технолошког окружења. (а) (б) Слика 7.8 Лабораторијски модел технолошког окружења и мобилни робот. Табела 7.4: Техничке карактеристике - LEGO Mindstorms NXT мобилни робот. Назив Опис Управљачки систем 32-битна управљачкa јединицa са LCD технологијом Погонски систем Три DC мотора са инкременталним енкодерима Основни сензори Ултрасонични сензор. Домет ~ 2,5 [m] Улаз/излаз (I/O) USB 2.0 и Bluetooth interface Напајање Батерије Комуникациони протокол USB 2.0 Управљачки софтвер MATLAB® преко USB порта Током експерименталног поступка тестирана је способност мобилног робота да изврши планирање путање кретања на основу појединачних - 215 - транспортних задатака, као и способност да одреди свој положај применом ЛКФ алгоритма. Главни транспортни задатак чини низ појединачних задатака које робот треба да обави. Почевши од почетног положаја, мобилни робот треба да прати одговарајућу путању која је одређена главним транспортним задатком. Модул за планирање одређује главну путању у реалном времену, секвенцијално срачунавајући најкраћи пут између тренутног положаја робота и наредног транспортног одредишта. Број карактеристичних објеката, као и позиције су произвољно изабрани. Након постављања објеката у окружење подаци о њиховој позицији су унети у главни управљачки код. Лаптоп рачунар је коришћен као главна управљачка јединица која извршава сва израчунавања у реалном времену и остварује везу са роботом путем USB кабла. Сви модули хибридне управљачке архитектуре примењени су у MATLAB® програмском окружењу развојем посебног кода. За управљање роботом помоћу рачунара коришћена је специјална MATLAB® апликација која је развијена у оквиру истраживања на Универзитету у Ахену (СР Немачка) [73]. У наредном делу су представљени експериментални резултати. Један од транспортних задатака је приказан на слици 7.9 и састоји се од транспорта делова до монтажног стола, преузимања склопова и њиховог транспорта до складишта готових производа. Почетни положај мобилног робота је непосредно испред једног од постојећих међускладишта (складиште вијчане робе). - 216 - а) б) в) г) д) ђ) е) ж) з) и) ј) к) Слика 7.9 Мобилни робот током обављања транспортног задатка. На слици је приказан мобилни робот (може се видети и USB кабл за остваривање комуникације са лаптоп рачунаром). Карактеристични објекти су представљени квадратима црне боје који се налазе непосредно испред главних транспортних одредишта у лабораторијском моделу технолошког окружења: а) почетни положај; б)-г) кретање према првом међуположају; ђ)-ж) кретање према монтажном радном месту; з)-и) прилазак ка/одлазак од монтажног радног места; ј)-к) прилазак ка складишту готових производа. - 217 - Црвена боја испод робота је светлосни сигнал који оптички сензор емитује, да би након одбијања од подлоге повратни сигнал „пренео” информацију о интензитету осветљења посматраног дела подлоге. На слици 7.9 могуће је приметити значајну промену интензитета осветљења у просторији. На слици 7.10 је приказана MATLAB® апликација сопственог развоја, која у реалном времену извршава све функције које су предвиђене хибридном управљачком архитектуром и омогућује кориснику да има увид у функционисање система мобилног робота. Слика 7.10 MATLAB® апликација која у on line режиму обезбеђује увид у фунционисање система. - 218 - На слици се могу видети:  диспозиција лабораторијског модела технолошког окружења;  мобилни робот (кружни објекат);  линијом је означена најкраћа путања од стартног положаја до циљног положаја срачуната на основу А* алгоритма;  црвеном елипсом је означена несигурност у положај мобилног робота (на слици је представљена линијом пошто је одговараујућа почетна несигурност усвојена као мала вредност). Са слике се може видети да током кретања мобилни робот коригује своју тренутну путању кретања да би био што ближе жељеној путањи. Такође, уколико се упореде слике 7.9 и 7.10 приметно је да робот наилази на један од позиционираних карактеристичних објеката, препознаје промену боје подлоге лабораторијског модела технолошког окружења и извршава други корак ЛКФ алгоритма – корак корекције. Резултат је смањена несигурност у положај мобилног робота, што се може закључити и на основу мање површине одговарајуће елипсе несигурности. Остали експериментални резултати су представљени у наставку. Први део резултата односи се на компликованији транспортни задатак, у коме је потребно да се од складишта готових производа настави кретање ка монтажном радном месту, уз обавезно заустављање код монтажне целине са четири места. - 219 - а) б) в) г) д) ђ) Слика 7.11 Графички приказ кретања мобилног робота (MATLAB® апликација сопственог развоја). Слика 7.12: Кретање мобилног робота у лабораторијском моделу технолошког окружења. Позиционирана су четири карактеристична објекта. Требало би напоменути да је овај експеримент спроведен у циљу провере перформанси када се усвоји већа несигурност у погледу почетне позиције мобилног робота. Укупна дужина путање је приближно 0,12 [m]. Са слике 7.11 се види да након препознатог карактеристичног објекта #2 несигурност у погледу положаја мобилног робота се смањује. Треба обратити пажњу да се и током овог експеримента мењао интензитет осветљења у просторији (слика 7.12). Средња вредност грешака крајњег положаја мобилног робота који је измерен и ЛКФ оцене положаја износи ∆x=0,05372 [m] и ∆y=0,06724 [m]. - 220 - Ове вредности грешака су изузетно високе али је овакав резултат био очекиван с обзиром на усвојене почетне вредности матрице коваријанси за позицију робота и коваријансне матрице за сензорски модел. Евидентно је и то, да је у већини случајева грешка мања уколико је референтни карактеристични објекат препознат. На основу овог експеримента закључено је да је већи број карактеристичних објеката да би робот успешно обавио постављени транспортни задатак. Иако не постоји општа методологија у погледу позиционирања карактеристичних објеката експериментални резултати указују да би било пожељно поставити их непосредно испред транспортних одредишта (машине алатке и међускладишта). У том смислу, спроведен је експеримент и усвојен следећи главни транспортни задатак (слика 7.1):  почетни положај мобилног робота је испред маказа за сечење лима (М1);  из почетног положаја мобилни робот треба да транспортује материјал до међускладишта;  након доласка у међускладиште, робот преузима материјал и транспортује га до монтажног радног места  транспортни задатак се завршава транспортом готових делова ка складишту готових производа. Путања мобилног робота, као и карактеристични фрејмови су приказани на сликама 7.13 и 7.14. Укупна дужина путање је приближно 2,20 [m]. Грешке између срачунатог положаја мобилног робота на основу ЛКФ алгоритма и измерених вредности је ∆x=0,05523 [m] и ∆y=0,04971 [m]. На слици је приметно да је интензитет осветљења релативно константантан што је за коначан резултат дало знатно нижу вредност грешке за дужу путању. На основу ових експерименталних резултата може се закључити да позиционирање карактеристичних објеката непосредно - 221 - испред појединачних транспортних одредишта за коначан резултат има знатно већу тачност. a) б) в) г) д) ђ) Слика 7.13 Графички приказ кретања мобилног робота. (MATLAB® апликација сопственог развоја). Слика 7.14 Кретање мобилног робота у лабораторијском моделу технолошког окружења. 7.2.4. Анализа резултата и дискусија Хибридна управљачка архитектура представља први корак који је направљен у домену примене интелигентих мобилних робота за потребе унутрашњег транспорта у оквиру посматраног технолошког окружења. Представљен је основни концепт на чијим је основама хибридна управљачка архитектура базирана. Архитектура је хибридна с обзиром на то да омогућава и планирање и брзе реакције. Уобичајени приступ углавном раздваја ова два концпета. Предложено решење једнозначно дефинише аквизицију и процесирање сензорских информација, - 222 - планирање активности мобилног робота и њихово извршавање. У потпоглављу је дат приказ основних блокова архитектуре са свим припадајућим појединачним модулима, као и информације о њиховом развоју и имплементацији на LEGO Mindstorms NXT едукационом мобилном роботу. Основне предности које пружа овакав вид успостављања главног тока информација је у модуларности. Појединачни модули могу бити развијени применом других алгоритама оцењивања положаја, планирања путање и моделирања брзих реакција робота. Међутим, основна идеја на којој су и постављене основе развоја хибридне управљачке архитектуре остаје непромењена. Ако сваки од модула боље извршава своју функцију на основу претходно усвојеног критеријума оптималности и перформансе саме архитектуре ће бити боље. С друге стране, уколико је потребно развити нови модул неопходно је дефинисати улазне и излазне величине модула узимајући у разматрање секвенцијални приступ обради информација. Другим речима, потребно је дефинисати међусобне зависности појединачних модула. Модуларност предложеног решења има посебну тежину у реалним условима рада мобилног робота где динамички карактер технолошког окружења подразумева непрестана побољшања постојећих и развој нових модула. Поред нових модула у блоку перцепције и планирања могуће је увести и нове сензоре у сензорском блоку. Међутим, том приликом је потребно развити нове модуле и анализирати узрочно-последичне односе новог/нових сензора и модула и постојећих, а затим поставити одговарајуће математичке формулације проблема. Постојећа архитектура је развијена коришћењем LEGO Mindstorms NXT едукационог мобилног робота, тако да је даљи развој ограничен постојећим сензорима у оквиру комплета. Досегнути степен развоја архитектуре је лимитиран у погледу оцењивања положаја мобилног робота, с обзиром на то да је базиран на - 223 - увођењу вештачки постављених карактеристичних објеката. Овај концепт је доминантан приступ у пројектовању унутрашњег транспорта на бази аутоматски вођених робоколица [29,30,31,96,151,210]. Вештачки постављени карактеристични објекти [155] за потребе оцењивања положаја робота током обављања транспортног задатка подразумевају да приликом промене распореда машина алатки и међускладишта (промена диспозиционог плана) морају бити промењене и позиције карактеристичних објеката. У наредном поглављу је приказано на који начин овај проблем може бити решен применом концепата управљања на бази повратних информација од калибрисане камере и симултаног оцењивања положаја мобилног робота и карактеристичних објеката у окружењу. С друге стране, није тешко уочити основну разлику између конвенционалног схватања аутоматски вођених робоколица и концепта аутоматски вођених робоколица представљеног у виду развоја и примене нове хибридне управљачке архитектуре. Важно је нагласити да ЛТЗ модул за планирање оптималне путање мобилног робота на основу главног транспортног задатка може бити унапређен на више начина. Резултати представљени у оквиру референци [143,144,145,147] могу значајно допринети побољшању основног приступа. Интеграција предложене архитектуре са опште постављеним концептом интелигентног технолошког система представља правац даљих истраживања. Требало би нагласити и улогу коју развијена архитектура има у едукацији. Након примене и спроведеног експерименталног поступка, сви модули архитектуре користе се у оквиру извођења наставе на Дипломским академским студијама Машинског факултета у Београду у оквиру предмета Интелигентни технолошки системи (http://cent.mas.bg.ac.rs/nastava/its/ITS_2011-2012.html) на Одсеку за производно машинство, где студенти активно користе развијене модуле у изради пројеката и учествују у тестирањима [146]. - 224 - Експерименти су показали да два развијена модула нису досегли неопходан ниво поузданости. Модул за управљање брзином кретања није могуће применити с обзиром на то да основна улазна информација овог модула је време трајања одговарајућих технолошких операција. Увођењем ове врсте информације у процес планирања омогућило би и развој модула за управљањем брзином кретања робота мобилног. Слично претходном, модул за избегавање препрека није детаљно тестиран током извођења експрименталног процеса. Међутим, претпоставка је да је мобилни робот једини објекат у радном окружењу који може да промени положај, а применом А* алгоритма једноставно је решен проблем познатих статичких препрека, па се тиме и изгубила потреба за овим модулом. Требало би нагласити да је поменути модул развијен на бази вештачких неуронских мрежа са радијалним активационим функцијама Гаусовог типа, које су „обучене” примењујући комбинацију ненадгледаног и надгледаног секвенцијалног машинског учења [193]. Међутим, услед честих „фантомских” мерења [185] долази до непоузданог одговора модула у виду идентификације непостојећих препрека. Овај проблем је тешко решити у постојећем лабораторијском моделу технолошког окружења због вишеструког одбијања емитованих звучних сигнала о зидове окружења у кратком временском интервалу, што је резултирало недовољном поузданошћу модула. У претходном поглављу је показано како камера као сензор може да се примени за увођење информације за потребе примене новог алгоритма за оцењивање положаја мобилног робота. На овај начин се може избећи проблем који је евидентан, а односи се на тренутан вид увођења сензорске информације у ЛКФ алгоритам. Повећање броја карактеристичних објеката не мора априори да обезбеди боље оцењивање положаја. У овом тренутку развоја архитектуре са расположивом хардверском опремом то је био једини начин увођења сензорске информације. Симултано оцењивање положаја мобилног робота и карактеристичних објеката у - 225 - технолошком окружењу представља један начин побољшања постојећег решења тока информација. Поменути концепт може знатно унапредити перформансе саме архитектуре и омогућити виши степен аутономности у погледу директног надзора од стране оператера. Резултати представљени у претходном поглављу су основа за даљи рад на развоју хибридне управљачке архитектуре. Нови алгоритми оцењивања који се тренутно развијају су базирани на секвенцијалним Монте Карло методама и њиховој интеграцији са техникама моделирања одговарајуће расподеле на бази вештачких неуронских мрежа, које у реалном времену врше модификацију параметара и на тај начин обезбеђују оптималне перформансе. Основна идеја је слична већ престављеном алгоритму неуронског линеаризованог Калмановог филтра који представља интеграцију вештачких неуронских мрежа са „стандардним” линеаризованим Калмановим филтром. 7.3. Нови хибридни алгоритам за управљање мобилним роботима на основу повратне информације од камере Унутрашњи транспорт материјала, сировина, полуфабриката и готових делова обавља се применом тракастих транспортера, виљушкара и аутоматски вођених робоколица (АВР). С обзиром на основну истраживачку хипотезу у оквиру ове дисертације, која се односи на развијање интелигентног система унутрашњег транспорта применом мобилних робота, транспорт на бази АВР представља предмет интересовања. Овај вид унутрашњег транспорта одвија се у оквиру технолошких система коришћењем транспортне инфраструктуре (магнетне траке, жице у којима протиче електрични сигнал, а у последње време је приметна примена бежичних решења), која служи за размену - 226 - информација са централном управљачком јединицом. Ова јединица надгледа функционисање транспортног подсистема и дефинише наредне транспортне задатке у складу са технолошким процесом и оценом трајања технолошких операција. Овако структуирано решење унутрашњег транспорта има два главна недостатка [195]:  технолошки недостаци - промене распореда машина алатки и локалних међускладишта подразумева и адаптацију досадашњег система унутрашњег транспорта. Након промене распореда неопходно је модификовати информације о положају локалних и главних складишта, као и времена трајања технолошких операција и транпортних задатака.  економски недостаци – промена распореда машина алатки и међускладишта повлачи и промену транспортне инфраструктуре. Адаптација транспортне инфраструктуре захтева значајна средства која некада знатно превазилазе финансијске могућности производно оријентисане компаније. Важно је нагласити да се промена распореда машина алатки и међускладишта често дешава у предузећима која немају производни простор у свом власништву него су приморана да се измештају сходно финансијским могућностима и кретањима на тржишту. Конвенционална транспортна решења на бази АВР нису флексибилна у погледу промене положаја транспортних чворова. Дакле, неопходно је развити видове унутрашњег транспорта који не зависе од додатне транспортне инфраструктуре и информације о положају транспортних чворова. Да би се обезбедила флексибилност АВР неопходно је омогућити сензорски подсистем за прикупљање информација из окружења. Сензорски подсистем је углавном базиран на унутрашњим сензорима (енкодери за очитавње броја обрта погонских вратила) и спољашњим сензорима (углавном су у питању сензори растојања). Данашња напредна - 227 - АВР ретко користе камеру за аквизицију сензорских информација из радног окружења. Могуће је идентификовати неколико основних разлога зашто камере нису заступљене у АВР. Развој унутрашњег транспорта применом АВР је почео 1960. и током наредних деценија системи препознавања нису били довољно развијени у хардверском и математичко-софтверском смислу да би били примењени у реалном времену. Као додатни разлог недовољне примене камере може се навести и конвенционална транспортна инфраструктура која елиминише потребу за аквизицијом информација из окружења. Међутим, данашњи степен развоја система препознавања на бази камере омогућује процесирање информација у реалном времену. За разлику од других сензора (нпр. ултразвучних или ласерских давача растојања) камера обезбеђује више типова информација. Уз примену специјално развијених алгоритама, информације прикупљење од камере, могуће је искористити за напредне алгоритме оцењивања, планирања путање и препознавање карактеристичних објеката/облика. Предност модерних камера је и у количини и типу информација које могу да прикупе, као и у цени коштања (знатно су јефтиније од ласера или сонара). У том смислу, примена камере као дела сензорског подсистема АВР представља један од видова елиминисања постојеће зависности АВР од транспортне инфраструктуре [129]. Тренутно стање у области развоја унутрашњег транспорта на бази робоколица показују [119,120,208] да је модерни приступ и даље базиран на примени конвенционалних сензорских подсистема (ласерски и ултразвучни давачи растојања) за прикупљање информација из окружења. Иако поменути резултати почивају на методама и алгоритмима развијеним у области развоја мобилних робота, ниједно од поменутих истраживања не разматра примену камере као примарног сензора за аквизицију информација из окружења. Међутим, резултати истраживања у областима симултаног оцењивања положаја мобилног робота и - 228 - карактеристичних објеката у окружењу применом камере [20,37,38,44,142,168,169] и управљања кретањем на основу повратне информације од камере [112,113], пружају основу за интеграцију камере у сензорски подситем АВР, што представља основну мотивацију за истраживања [129], приказана у оквиру овог потпоглавља. 7.3.1. Опис хибридног управљачког алгоритма У овом потпоглављу представљен је нови хибридни алгоритам за управљање АВР који користи камеру за аквизицију информација. Алгоритам сачињавају две петље (слика 7.15). Прва петља је активна када се робот налази далеко у односу положај дефинисан транспортним задатком и назива се управљање на основу положаја (УОП). Ова петља основног управљачког алгоритма служи за глобалну навигацију/управљање роботом од тренутног положаја до жељеног положаја, који се налази непосредно испред машине алатке или међускладишта. Овакав вид управљања је могуће спровести на глобалном нивоу када тачност у управљачком систему може бити коригована током кретања. Међутим, за кретање од транспортног чвора до машине алатке или међускладишта потребна је тачност вишег нивоа, због чега је развијена друга петља (управљање на основу повратне информације од камере - УОИК). Друга петља се активира након доласка робота у жељени положај ради наставка кретања ка машини алатки или међускладишту и базирана је на примени камере у циљу управљања кретањем и генерисања адекватних управљачких команди [129]. - 229 - Слика 7.15 а) Блок дијаграм тока информација хибридног управљачког алгоритма (ХИА); б) Блок дијаграм тока информација УОИК петље [129,195]. Након инкременталног кретања робот очитава нову слику. Уколико је активна УОИК петља очитана слика се користи за поређење детектованих позиција карактеристичних објеката и генерисање управљачких команди. Након тога, иста слика се прослеђује НЛКФ модулу ради оцене положаја робота након извршеног кретања. С друге стране, ако је УОП петља активна робот очитава нову слику која се корисити искључиво за оцену положаја применом НЛКФ алгоритма оцењивања. Пошто је НЛКФ непрестано „активан”, робот у сваком тренутку „зна” свој положај. Применом оваквог приступа транспортни задатак је раздвојен на два дела: глобално управљање (од тренутног положаја до положаја непосредно испред машине алатке или међускладишта) и локално управљање (од положаја непосредно испред машине алатке или - 230 - међускладишта до саме машине алатке или међускладипта). На овај начин је елиминисана потреба за транспортном инфраструктуром у виду жица или карактеристичних маркера, али и потреба за информацијом о положају и облику свих објеката у оквиру посматраног технолошког окружења. Предности које овај приступ има у погледу промене распореда машина алатки или међускладишта су евидентне, знајући да је основна идеја омогућавање функционисања мобилног робота у технолошком окружењу без транспортне инфраструктуре. Да би генерисали одговарајуће управљачке команде у оквиру прве петље (УОП) предложеног хибридног алгоритма, потребне је знати тренутни положај и жељени положај мобилног робота (оба положаја су дефинисана у спољашњем непокретном координатном систему). УОП петља смањује грешку између поменутих положаја (у погледу жељене позиције и жељене оријентације) генерисањем одговарајућег управљања. УОП петља је представљена у оквиру предложене управљачке архитектуре (претходно потпоглавље) и није потребно додатно појашњавати начин функционисања. Друга петља хибридног управљачког алгоритма захтева два параметра: циљну слику и тренутну слику. Циљна слика представља ону слику која једнозначно дефинише жељени положај робота ради манипулације радним предметом. Аквизиција ове слике се врши постављањем робота у жељени положај који је одређен позицијом машине алатке/међускладишта и радног предмета ради манипулације. За разлику од циљне слике, тренутна слика се очитава у сваком тренутку током кретања и представља променљиву величину. На основу разлике у позицији карактеристичних објеката на поменутим сликама, применом алгоритма управљања на бази епиполарне геометрије одређују се одговарајућа управљања. - 231 - 7.3.2. Управљање на бази епиполарне геометрије Нека су дата два произвољна положаја камере, тако да се спољашњи координатни систем поклапа са другим положајем камере [117], и нека та два положаја одговарају почетном и циљном положају (слика 7.16). Епиполарна геометрија представља директну везу између два уочена положаја камере, помоћу унутрашњих параметара камере. Епиполарна геометрија је функција унутрашњих параметара камере и релативног помераја [66]. Слика 7.16 Епиполарна геометрија између два положаја камере. Епипол представља пресек праве која спаја два локална координатна система камере (оптичка центра) са равни слике (слика 7.16). Уобичајено је да се ова права назива основна права. С обзиром на то да постоје два положаја камере, логично је очекивати да постоје и две пресечне тачке: 1) ce пресек основне праве са тренутном положајем равни слике 2) te пресек основне праве са жељеним положајем равни слике (камере) Нека је дата произвољна тачка P и нека је пресек праве која спаја оптички центар камере са одговарајућом равни слике обележена са ap , за - 232 - почетни и dp за жељени положај (слика 7.16). Позиције епипола се одређују на основу алгебарске везе епипола и основне (фундаметалне) матрице F [178] као 0 , 0Tc t= =Fe F e (7.3) Слика 7.17 Дефинисање функционалних зависности између епипола у равни. Основне геометријске везе између позиције епипола дефинисане у тренутном положају и позиције епипола дефинисане у жељеном положају, дате су на слици 7.17. С обзиром на то да се мобилни робот креће у равни, разматрају се само х координате епипола ( txe за жељени положај и cxe за тренутни положај). ( ) tan( )tx ue f k ψ=− , ( ) tan( )cx ue f k µ ψ= − (7.4) где је f фокална дужина камере, а uk и vk означавају број пиксела по јединици дужине. Са слике 7.17 се уочава и да је sin( )x d ψ= − , cos( )z d ψ= (7.5) где је са d означена раздаљина између два уочена положаја камере. Углови ψ иµ су arctan( ( )) , arctan( ( ))tx u cx ue f k e f kψ µ ψ=− = + (7.6) Управљачки закон на бази епиполарне геомтрије је базиран на [112] где је искоришћена чињеница да се управљање нелинеарног система може - 233 - остварити помоћу линеаризације [166]. Управљање мобилним роботом на бази повратних информација од калибрисане камере је остварено путем повратне спреге на основу положаја епипола на слици. Уз усвајање познатих путања епипола, полазни проблем је сведен на праћење позиције епипола на слици и кориговање акција мобилног робота на основу разлике између жељене позиције и тренутне позиције епипола. Грешка управљања на бази епиполарне геометрије се дефинише као 1 2 d d e cx cx cx e fd d tx tx tx v e e e v e e e v K      −    = = −     −        (7.7) Матрица 0 0 c f t k k K    =    је појачање, а њени елементи 0ck > и 0tk > . Промена позиције епипола одређена је познатим једнакостима, на основу линеаризације као 2 2 sin( ) cos ( ) cos ( ) u u cx f k f k e v d µ ψ ω µ ψ µ ψ − =− + − −  2 sin( ) cos ( ) u tx f k e v d µ ψ ψ − =− (7.8) где cxe и txe представљају тренутне и жељене вредности, а остали непознати параметри одређују се на основу усвојених претпоставки приликом увођења епиполарне геометрије ( ,v ω ), транслаторна и угаона брзина кретања робота. Током експлоатације мобилног робота оцењивање положаја се извршава применом неуронског линеаризованог Калмановог филтра чије су математичке основе и експериментална примена представљене у претходном поглављу. - 234 - 7.3.3. Критичка анализа стања у области и мотивација за истраживање Уобичајени приступ навигацији АВР у технолошком окружењу знатно се разликује од хибридног управљачког алгоритма који је предложен у овом поглављу и углавном се базира на примени вештачких маркера који служе као референтни објекти за оцењивање положаја [155]. Током експлоатације, мобилни робот на основу информације добијене од ласерског сензора препознаје карактеристичне објекте, након чега је могуће одредити и положај самог робота применом неког од алгоритама оцењивања положаја (нпр. триангулација или Калманов филтар). Напредак технологије је условио и нове видове оваквог приступа који користе бежичну технологију, али са истим крајњим циљем [115]. Наведени приступи не успевају у потпуности да смање зависност од транспортне инфраструктуре. За примену ових концепата није потребно инсталирање посебних жица или вођица, али захтевају постављање вештачких маркера који морају да буду померени на другу локацију у току промене распореда машина алатки и међускладишта. Примена система препознавања на бази камере омогућила би постизање жељеног нивоа флексибилности у погледу зависности од транспортне инфраструктуре. Примена система препознавања на бази камере код АВР није нова идеја и први резултати су представљени током 1990-тих година. Један од првих покушаја заснива се на интеграцији камере са типичним виљушкаром [59,60] за потребе унутрашњег транспорта. Неки истраживачи су отишли и корак даље и тестирали перформансе развијеног система у оквиру спољашњег складишта индустријског постројења [152]. Камера је коришћена за оцењивање и одређивање линија на подлози које обележавају реон у коме се виљушкар може кретати (на неки начин представљају транспортну инфраструктуру). Током 1990-тих је показано и - 235 - да три камере могу значајно унапредити функционисање система у виду раздвајања проблема избегавања препрека и оцењивања путање робота [131]. Наведени приступи нису могли у потпуности да искористе све предности система препознавања на бази камере због недовољног познавања проблема у физичко-математичком смислу, као и због недовољне развијености хардверских компоненти. Међутим, ова решења и остварени резултати истраживања су инспирисала истраживаче да наставе у истом смеру. И даље активно поље истраживања у виду примене камере код АВР односи се на препознавање стандардних палета и прилазак палетама ради манипулације. Овај вид примене камере може се посматрати и као покушај развоја управљања на бази повратне информације од камере али и интеграције камере са додатним сензором. У литератури се могу наћи приступи засновани на интеграцији ласера и камере [140], камере за оцену раздаљине и камере [13], али и приступ на бази „стандардне” камере без додатних сензора [161]. Напредак оваквог вида употребе камере довео је до примене овог система препознавања код АВР која обављају унутрашњи транспорт у окружењима штетним по оператера [149]. На овај начин је ефектно демонстрирана применљивост камере у индустријским постројењима током експлоатације АВР. Један од значајнијих резтултата интеграције камере и типичног виљушкара дат је у [2,93] где је наглашена важност примене система препознавања на бази камере код АВР, као и да поменута интеграција представља начин остваривања жељеног нивоа интелигенције чиме би се смањила зависност од транспортне инфраструктуре. Важно је нагласити да се до резултата у [93] дошло дугогодишњим истраживањима [91,92] исте истраживачке групе. Веома занимљив приступ који користи више од једне камере, али и представља концепт оцењивања положаја и навођења према палети, - 236 - представљен је у [180]. Сви наведени резултати показују ефективност и поузданост система препознавања базираних на камери. На крају овог дела важно је поменути и приступ који је представљен у [95]. Поменути резултат је сличан хибридном управљачком алгоритму представљеном у оквиру овог потпоглавља, али постоји и неколико значајних разлика. Као прво, аутори не разматрају АВР већ су фокусирани на аутономна површинска пловила и активно развијају систем за чишћење нафтних мрља са површине воде. Као друго, оцењивање положаја возила се обавља помоћу глобалног система сателита (ГСС) уз примену основне формулације линеарног Калмановог филтра. У овој дисертацији, оцењивање положаја се вишеструко разликује од поменутог приступа пошто се обавља применом концепта симултаног оцењивања положаја мобилног робота и карактеристичних објеката помоћу камере без ГСС сигнала, с обзиром на то да се разматрају АВР у индустријским постројењима (затворени простор). На крају, систем управљања возилом на основу повратне информације од камере заснива се на алгоритму управљања у коме се не примењује епиполарна геометрија. Предложени хибридни управљачки алгоритам се разликује по три основа од поменутих приступа [129]:  Раздвајањем почетног транспортног проблема на два независна проблема успешно је решен проблем видног поља5.  ХИА изискује четири параметра, од којих се два дефинишу на самом почетку (циљни положај и циљна слика) док су друга два променљива и очитавају се у сваком тренутку током кретања (тренутни положај и тренутна слика). Циљни положај робота се једноставно дефинише у спољашњем координатном систему, док се циљна слика одређује постављањем робота у жељени положај 5 Проблем у области управљања на бази повратне информације од камере који дефинише случај у коме карактеристични објекти нису у видном пољу камере (енг. Field of View). - 237 - непосредно испред машине алатке или међускладишта. На овај начин је елиминисана потреба за додатном транспортном инфраструктуром или вештачким карактеристичним објектима.  Оцењивање положаја се обавља применом ЛКФ-а [119,120] или специјално развијеним методама [149,152,161,180]. Ни у једном од радова није примењен НЛКФ. Поред ове разлике потребно је поменути и да они радови који користе ЛКФ третирају искључиво проблем локализације, док је у овој дисертацији примењен НЛКФ за симултану локализацију и изградњу мапе окружења. Уколико дође до промене распореда машина алатки и међускладишта, предложени приступ омогућава већу флексибилност пошто почива на мањој количини почетних информација о технолошком окружењу. 7.3.4. Експериментални резултати примене развијеног хибридног управљачког алгоритма Нови хибридни управљачки алгоритам примењен је помоћу софтверског кода сопственог развоја у MATLAB® програмском окружењу [207]. Десктоп рачунар (2,20 GHz; 1 GB RAM) је коришћен као централна управљачка јединица. Комуникација између рачунара и робота се извршава путем RS232 кабла, док је USB кабл коришћен за комуникацију између рачунара и камере. Мобилни робот Khepera II, WEB камера и роботска рука Khepera Gripper Turret – хватач KheGrip (техничке карактеристике су дате у табели 7.5) су приказани на слици 7.18. Усвојене су следеће нумеричке вредности инкременталног кретања за УОП петљу: за транслацију 0,003 [m], а за ротацију 3 [°]. Ове вредности су константне за УОП петљу, док су за УОИК петљу различите и променљиве пошто зависе од управљачких команди. Резолуција слике је 320 х 240 пиксела. - 238 - Табела 7.5: Техничке карактеристике – хватач Khepera Gripper Turret (KheGrip) Назив Опис Процесор Motorola 68HC11 РАМ меморија 256 bytes РОМ меморија 2 Kbytes Погон 2 DC серво мотора са апсолутним енкодерима за мерење угла ротације Сензори Тактилни сензори Димензије роботске руке 65 x 90 x 10 [mm] Носивот 50 [g] Слика 7.18 Мобилни робот са хватачем и камером у лабораторијском моделу технолошког окружења. У сваком тренутку НЛКФ оцењује позицију ~50 карактеристичних објеката. Укупан број успешно пронађених карактеристичних објеката који су предвиђени НЛКФ-ом варира и превасходно зависи од промене интензитета осветљења. Контрола броја димензија вектора стања се одвија применом следећег интуитивног приступа: ако робот предвиди карактеристични објекат n пута, а применом камере га „види” n/2 пута, посматрани карактеристични објекат и све његове корелације са осталим елементима вектора стања се бришу из меморије филтра. На овај начин - 239 - број параметара које НЛКФ оцењује је ~300 (урачунати и параметри вишеслојног перцептрона). Усвојене нумеричке вредности параметара НЛКФ су дате у табели 7.6. Табела 7.6: Усвојене вредности параметара. Почетна вредност тежинских коефицијената Промена тежинских коефицијената wQ Почетна матрица коваријанси робота vvP Почетна матрица коваријанси тежинских коефицијената wP Улаз Излаз Улаз Излаз 16 16 10(10 ,10 ,10 )diag − − − 810− 1610− 1610− 810− 610− У просеку је потребно око 250-270 итерација да би робот извршио постављени задатак. Укупан број итерација зависи од усвојених времена која једнозначно дефинишу путању робота током извршавања УОИК петље. УОИК користи другачији алгоритам детектовања карактеристичних објеката на слици од НЛКФ-а. Поређење позиција карактеристичних објеката на циљној и тренутној слици подразумева одређивање основне (фундаменталне) матрице F . Да би увели робусност у погледу промене осветљења, основна матрица се одређује применом алгоритма случајног консензуса6 [54]. Једна итерација УОИК се одвија на 0,125 [Hz]. Међутим, иако је УОИК петља спорија од УОП петље експериментални резултати показују примењљивост предложеног алгоритма. Мања фреквенција УОИК петље у односу на УОП петљу не утиче на перформансе ХИА у смислу тачности већ искључиво у смислу времена трајања експеримента. Раздаљина између циљне и тренутне слике није позната па је усвојена као константа (представља појачање за брзину ev ). 6 Random Sample Consensus (RANSAC). - 240 - Експеримент реализован у лабораторијском моделу технолошког окружења Мобилни робот се налази у произвољном познатом почетном положају. Усвојено је да почетни положај мобилног робота једнозначно дефинише и спољашњи координатни систем у односу на кога се одређује сваки наредни положај робота приликом кретања. Транспортни задатак се састоји од следећих захтева: почевши од почетног положаја, мобилни робот треба да приђе првој машини алатки, ухвати радни предмет, приђе другој машини алатки и постави радни предмет на жељену позицију. Анализом постављеног транспортног задатка види се да га сачињавају следећи елементарни задаци (у заградама је наведена петља ХИА која има контролу над роботом током обављања елементарног транспортног задатка):  кретање од почетног положаја до првог циљног положаја (УОП петља);  кретање од првог циљног положаја до прве машине алатке и преузимање радног предмета (УОИК петља);  кретање од прве машине алатке до другог циљног положаја (УОП петља);  кретање од другог циљног положаја до друге машине алатке и постављање радног предмета на жељену позицију (УОИК петља). Дакле, робот треба два пута да изведе глобално кретање на основу УОП петље и два пута локално кретање на основу информација добијених УОИК петљом. Пре почетка кретања неопходно је дефинисати два циљна положаја (за УОП петљу) и две циљне слике (за УОИК петљу). Два циљна положаја се једноставно дефинишу у спољашњем координатном систему, док се циљне слике одређују аквизицијом информације од камере након што је робот постављен испред машине алатке ради приступања радном - 241 - предмету. Важно је нагласити да, услед конструктивних разлога, радни предмет ни у једном тренутку не може да се нађе у видном пољу камере, па се стога не анализира манипулација радним предметом. Ова чињеница је искоришћена као мерило успешности експеримента. Уколико робот не може да приступи радном предмету у одговарајућем положају који је дефинисан циљном сликом, то значи да је дошло до појаве грешке приликом кретања. Такође, важно је и поменути да ова грешка настаје услед различитих фактора који се не могу контролисати у потпуности. Током спровођења експерименталног процеса уочено је да промена интензитета осветљења у просторији у току самог експеримента утиче на УОИК петљу и детекцију карактеристичних објеката на циљној и тренутној слици, као и да крутост USB кабла камере често резултира проклизавањем точкова мобилног робота. Иако значајно мењају ток експеримента, ови фактори нису важни за општу оцену примењљивости развијеног концепта хибридног управљања, тако да нису ни узети у обзир приликом развијања хибридног управљачког алгоритма. Прва циљна слика, као и регион где се она налази, приказани су на слици 7.19. У почетном положају прва циљна слика се не налази у видном пољу камере, тако да робот започиње кретање према првом циљном положају који је дефинисан УОП петљом (слика 7.15). - 242 - Слика 7.19 a) Прва циљна слика; б) и в) На почетку кретања робот не види прву циљну слику те започиње кретање сходно УОП петљи. Након ивршених корекција, робот долази у први циљни положај и започиње кретање према машини алатки користећи управљачке команде генерисане сходно УОИК петљи и разлици између тренутне слике и прве циљне слике. Део слике означен испрекиданим правоугаоником показује где се налази прва циљна слика. Приказ комплетног експеримента је дат на слици 7.20. - 243 - Слика 7.20 а) – б) Први део кретања робота (УОП); б) – в) Кретање на основу УОИК петље према положају који је дефинисан првом циљном сликом. Робот прилази радном предмету; г) – д) Робот је пришао радном предмету. Обратити пажњу да је хватач отворен на г) и затворен на д); ђ) – ж) Након приступања радном предмету и успешног хватања, робот наставља кретање ка другом циљном положају према управљачким командама УОП петље; з) – к) Други део кретања на основу УОИК петље. Робот прилази машини алатки и позиционира радни предмет. Обратити пажњу да је хватач на ј) затворен, а на к) отворен. Крај експеримента. - 244 - На сликама 7.21 и 7.22 је приказана промена вредности епипола током УОИК за прву циљну слику и за другу циљну слику, респективно. Анализом дијаграма могу се уочити следеће карактеристике:  постоји разлика у интензитету вредности за циљну и тренутну слику. Ова чињеница је последица детектованих позиција карактеристичних објеката на сликама.  уочљива је разлика између узастопних вредности у интензитету. Ова разлика је директан резултат кратког растојања између циљног „фрејма” и тренутног „фрејма”. Овај проблем се углавном решава помоћу хомографије која је примењена на самом крају кретања [112] или увођењем додатне циљне слике у последњој итерацији УОИК петље [113]. Корекција овог проблема није покушана за сада, пошто експериментални резултати показују да и поред појаве овог проблема УОИК петља може да „доведе” робот до жељеног положаја дефинисаног циљном сликом. Један од разлога зашто ова дегенерација не утиче на извршење постављеног транспортног задатка је због кратке путање коју робот прелази током УОИК петље пошто и највећи део управљања се извршава сходно УОП петљи алгоритма. Слика 7.21 Промена вредности епипола током првог извршења УОИК петље. а) Вредности за тренутну слику; б) Вредности за циљну слику. - 245 - Слика 7.22 Промена вредности епипола током другог извршења УОИК петље. Вредности за тренутну слику а) и вредности за циљну слику б). На слици 7.23 је приказан основни разлог примене робустног алгоритма случајног консензуса за оцену основне матрице. На слици 7.23 а) се види поређења детектованих карактеристичних објеката на тренутној слици (а) са леве стране) и циљној слици (а) са десне стране). Примећује се да велики број препознатих карактеристичних објеката није адекватно повезан. Ова грешка у идентификацији објеката се преноси на оцену основне матрице, а тиме и на генерисање управљачких команди. Након примене робустног алгоритма случајног консензуса за оцену основне матрице (слика 7.23 б)) уочава се већи број правилно идентификованих карактеристичних објеката. Слика 7.23 Тренутна слика – циљна слика. Пре примене робустног алгоритма случајног консензуса a) и после б). Успешно идентификовано ~11 карактеристичних објеката. Слике 7.24 и 7.25 приказају почетну, циљну и завршну слику за први и други сегмент путање током УОИК петље (респективно). Може се приметити значајна разлика између почетних слика и циљних, као и да су - 246 - завршне слике сличне циљним. Сличност циљних и завршних слика за оба сегмента путање указују на то да је робот остварио жељени завршни положај. Слика 7.24 Почетна слика, циљна слика и завршна слика (респективно) након првог сегмента УОИК петље. Слика 7.25 Почетна слика, циљна слика и завршна слика (респективно) након другог сегмента УОИК петље. Обратити пажњу на разлику између слика. Следећи део експерименталних резултата је везан за НЛКФ оцену положаја мобилног робота (слика 7.26). Слична слика је већ представљена у оквиру експерименталних резултата насталих приликом увођења НЛКФ алгоритма оцењивања. - 247 - Слика 7.26 Изабрани фрејмови на основу НЛКФ оцењивања у реалном времену. Успешно идентификовани карактеристични објекти који се већ налазе на мапи окружења су дати на левој страни, док је НЛКФ оцена положаја мобилног робота дата на десној страни (а) – ђ)): а) робот започиње кретање и иницијализује ~10 карактеристичних објеката; б) фрејм #75 – током првог кретања на основу УОИК петље. обратити пажњу на повећан број карактеристичних објеката; в) фрејм #101 – завршено кретање уназад (УОП петља након преузимања радног предмета); г) фрејм #143 – током промене оријентације; д) фрејм #191 – достигнута циљна позиција (следи ротација за остваривање оријентације); ђ) у току друге (завршне) УОИК петље. - 248 - а) б) Слика 7.27 НЛКФ оцене: путање мобилног робота а) и промене оријентације б). Укупна дужина путање је приближно 0,4 [m] и зависи од генерисаних управљачких команди. Оцене путање су дате на слици 7.27. У табели 7.7 је дат упоредни приказ грешке оцене за НЛКФ, ЛКФ и одометрију. Свака врста (обележена римским бројевима I и II) представља остварену грешку након доласка у крајњи положај, дефинисан циљним сликама. Грешка је одређена након директног мерења жељеног положаја ( realx , realy и realθ ) и упоређивањем са оценом одговарајућег алгоритма оцењивања. Табела 7.7: Грешка оцене положаја мобилног робота за три примењена алгоритма. Индекс „stv” означава стварни завршни положај. Циљни положај / циљна слика stvx x− [m] stvy y− [m] stvθ θ− [°] I 0,0028 0,0021 1,59 НЛКФ II 0,0029 0,0041 5,52 I 0,0028 0,0022 1,61 ЛКФ II -0,0096 0,0147 6,12 I 0,0028 0,0028 1,65 Одометрија II 0,0316 0,0156 7,65 На основу експерименталних резултата приказаних у табели 7.7 се види да НЛКФ има мању грешку него ЛКФ и одометрија. Сва три алгоритма - 249 - показују да грешка оцене расте током кретања (што је очекивано), а уочава се и то да НЛКФ и ЛКФ имају бољу оцену остварених положаја мобилног робота него одометрија. У наредном делу овог потпоглавља анализираће се генерисана оцена грешке математичког модела кретања мобилног робота применом вештачке неуронске мреже у виду неуронског ЛКФ алгоритма оцењивања. Слика 7.28 Промена излазних вредности вештачке неуронске мреже током експеримента: a) Излазне вредности током трајања целог експеримента ; б) Промена излазних вредности од почетка до 150-те итерације; в) Промена излаза од 150-те итерације до краја експеримента. На слици 7.28 је приказана промена излазних вредности вештачке неуронске мреже, а самим тим и оцена грешке модела кретања. Може се приметити да у самом почетку кретања вештачка неуронска мрежа има константу излазну вредност која тежи нули. Прва значајна промена - 250 - настаје око 170-те итерације за време обављања УОП петље. Од 170-те итерације до 225-те итерације (слици 7.28 в)) вредност излаза је већа од нуле за у координату робота и мања од нуле за х координату робота. Претходно речено наводи на закључак да вештачка неуронска мрежа „предлаже” да се оцена позиције у х правцу смањи док је за у правац треба повећати. Око 225-те итерације обе оцене грешке у позицији робота мењају знак. Може се приметити и да су ова два дијаграма скоро симетрична. Такође, требало би нагласити и прву значајнију промену узастопних вредности (слици 7.28 б)). За разлику од оцене грешке у позицији робота, оцена грешке у оријентацији нема нагле промене. Ако се изузме скок око 210-те итерације промена ове оцене током кретања је континуална. Да би потпуно анализирали излазне вредности вештачке неуронске мреже потребно је анализирати и промену тежинских односа улазног и излазног слоја током кретања робота. Слика 7.29 Промена вредности тежинских односа вештачке неуронске мреже за улазни слој a) и излазни слој б). Тежински коефицијенти у улазном слоју вештачке неуронске мреже за управљања ( 41iw и 51iw ) су значајно већи од тежинских коефицијената за позицију ( 11iw и 21iw ) и оријентацију ( 31iw ), што се види на слици 7.29. - 251 - Посматрани тежински коефицијенти вештачке неуронске мреже скалирају управљања. Занимљиво је да значајна промена интензитета тежинских коефицијената улазног и излазног слоја настаје око 170-те итерације што одговара промени излазних вредности вештачке неуронске мреже (слика 7.29). Ранија промена вредности тежинских коефицијената може се остварити усвајањем веће вредности матрице wQ која једнозначно дефинише „дужину корака” током обављања процеса оцењивања. Уколико усвојимо мање вредности, то значи да ће НЛКФ алгоритам током процеса оцењивања мање модификовати тежинске коефицијенте; на овај начин ми, као пројектанти филтра, „кажемо” филтру да прави мање кораке током оцењивања. Наравно, и супротан случај је валидан. Током извођења експерименталног процеса у лабораторијском моделу технолошког окружења констатовано је да нагле промене на самом почетку процеса оцењивања резултирају дивергенцијом филтра која настаје када су излазне вредности вештачке неуронске мреже значајно веће од ЛКФ оцене. Ово представља основни разлог зашто је усвојена мања вредност корака приликом оцењивања (тј. матрице wQ ). Међутим, важно је нагласити да је могуће применити и следећу хеуриситку: након спровођења неколико експеримената могуће је утврдити ред величине грешке модела кретања, па је тиме одређена и излазна вредност вештачке неуронске мреже као и корак оцењивања. Овакав приступ је познат у теорији оцењивања [17,100,101,141,175,176]. Спровођење великог броја експеримената са различитим почетним вредностима представља основно правило за иницијално усвајање параметара НЛКФ алгоритма. - 252 - 7.4. Дискусија У овом потпоглављу дисертације предложена је употреба камере као сензора код АВР у циљу флексибилнијег и ефикаснијег обављања транспортног задатка у посматраном технолошком окружењу. У том смислу, камера је примењена за навођење према жељеном положају који је дефинисан циљном сликом ради преузимања радног предмета, као и за оцењивање положаја АВР на основу неуронског линеаризованог Калмановог филтра. Експериментални резултати потврђују да развијени нови хибридни управљачки алгоритам омогућава обављање транспортног задатка, који се састоји од навигације између међускладишта/машина алатки и преузимања/постављања радног предмета [129]. Нови хибридни управљачки алгоритам сачињавају две основне управљачке петље: управљање на основу положаја и управљање на основу информација од камере. Примена развијеног алгоритма подразумева следеће почетне параметре: циљни положај за глобалну навигацију (налази се непосредно испред машине алатке/међускладишта) и циљну слику за локалну навигацију (одређена аквизицијом сензорских информација од камере након постављања робота у жељени положај који омоугћава преузимање радног предмета). Овакав приступ раздваја почетни транспортни задатак на два дела: кретање од почетног положаја до циљног положаја (глобално) и кретање од циљног положаја до машине алатке/међускладишта (локално). На овај начин је елиминисана потреба за информацијом о распореду објеката у технолошком окружењу. Поред ове предности, треба нагласити да за примену развијеног хибридног управљачког алгоритма нису потребни вештачки постављени карактеристични објекти у технолошком окружењу ради навигације АВР. Развијени хибридни алгоритам се може секвенцијално применити на више транспортних задатака. - 253 - У сваком тренутку током обављања транспортног задатка мобилни робот оцењује свој положај и позицију карактеристичних објеката у виду алгоритма неуронског линеаризованог Калмановог филтра уз примену камере као сензора. Вештачка неуронска мрежа (једнослојни перецптрон) је спрегнута са линеаризованим Калмановим филтром у циљу моделирања непознатих стохастичких променљивих које нису предвиђене усвојеним моделом кретања мобилног робота. НЛКФ оцењује положај и тежинске односе вештачке неуронске мреже у реалном времену. Завршне слике (слике 7.24 и 7.25) указују на малу разлику између жељене слике и остварене слике што говори у прилог примене развијеног хибридног управљачког алгоритма. Робот је дошао до првог циљног положаја, започео нови сегмент кретањем ка машини алатки, преузео радни предмет, наставио кретање ка другом циљном положају, спровео завршно кретање сходно другој циљној слици и позиционирао радни предмет (слика 7.20). Наставак развоја и примене камере за навигацију и навођење мобилног робота могу бити спроведени у следећим истраживачким правцима:  Развијени алгоритам хибридног управљања може бити побољшан применом концепта учења ојачавањем (енг. Reinforcement Learning), које би обезбедило елиминисање времена, као променљиве, из УОИК петље. На основу претходно стеченог знања овај вид учења може да одреди оптималну путању. Досадашњи приступ би и даље био активан током обављања транспорта али би информације додатног модула биле узете у обзир приликом одређивања управљачких команди (нпр. погледати [203]).  Структура НЛКФ алгоритма обезбеђује примену других Гаусовских филтра (АСАМ или ЛИФ). АСАМ је бољи естиматор од ЛКФ с обзиром на то да је у стању да одреди коваријансу до величина другог реда, па је занимљиво видети да ли би примена вештачке - 254 - неуронске мреже допринела још бољим резултатима оцене положаја. Такође, обезбеђивање промене архитектуре вештачке неуронске мреже у реалном времену је занимљив концепт и требало би проверити да ли би се на тај начин смањила комплексност у погледу неопходног броја рачунских операција. Као и вишеслојни перцептрон вештачка неуронска мрежа са радијалним активационим функцијама задовољава услове теореме Стоун- Вајерштраса [100,101] па би развијени симулациони код (пето поглавље) требало применити у експерименталним условима и оценити перформансе у реалном времену.  У оквиру развијеног хибридног управљачког алгоритма није разматрано избегавање препрека. Радно окружење је статичко, а једини објекат који се креће је мобилни робот. Избегавање препрека се може омогућити уколико се у основни ХИА уведе додатна петља која би преузела контролу над актуаторима робота када сензори (пре свих камера) препознају препреку непосредно испред. Може се приметити да захваљујући основној идеји ХИА, увођење нове петље не захтева модификације на постојећим петљама. Након изведеног кретања ради избегавања препреке УОП или УОИК петља би опет преузеле управљање.  Имплементација развијеног хибридног управљачког алгоритма је извршена у MATLAB® програмском окружењу на десктоп рачунару, са напоменом да је за остваривање фреквенције од 30 [Hz] неопходан додатни хардвер. - 255 - 8. ЗАКЉУЧАК Унутрашњи транспорт применом аутоматски вођених робоколица у технолошком окружењу представља један од сегмената технолошких система који могу бити унапређени на бази иновација у области мобилне роботике и вештачке интелигенције. Модерно схватање овог вида унутрашњег транспорта је засновано на идеји да се поједини истраживачки резултати и концепти, остварени у области развоја мобилних робота, могу применити и за потребе унутрашњег транспорта применом аутоматски вођених робоколица у технолошком окружењу. Основни истраживачки резултати и концепти чија се примена очекује у наредном периоду развоја овог вида унутрашњег транспорта су способности самосталне навигације, самосталног доношења одлука о будућим акцијама, самостално спровођење генерисаних планова и стална двосмерна комуникација са оператерима, машинама алаткама у погону и осталим мобилним роботима. Иако је познато да су мобилни роботи достигли висок ниво развоја у поређењу са доминантним концептима присутним крајем прошлог века, даљи развој треба да обезбеди постизање свих основних особина које интелигентни агент треба да поседује. Развој мобилних робота, без даљег развоја у домену проширења математичке основе и директног развоја софтверских компонената, не би имао употребну вредност. Познато је да интелигентни агент подразумева примену и сталан развој нових концепата у домену вештачке интелигенције, чиме се обезбеђује интелигентно понашање посматраног агента у одговарајућем радном окружењу. У том смислу, спроведена истраживања базирана су на увођењу концепта машинског учења у виду вештачких неуронских мрежа у различитим применама мобилних робота. - 256 - У овој дисертацији су развијена три нова алгоритма модификације параметара у виду надгледаног машинског учења вештачких неуронских мрежа са радијалним активационим функцијама Гаусовог типа. Сва три алгоритма су базирана на линеаризованом Калмановом филтру. Први алгоритам директно примењује линеаризовани Калманов филтар као алгоритам машинског учења, други алгоритам користи дуал линеаризованом Калмановом филтру познатији као линеаризовани информациони филтар, док трећи алгоритам на посебан начин апроксимира први и други момент параметара Гаусове расподеле и назива се алгоритам специфичне апроксимације момената. Развијени алгоритми су секвенцијалног типа (у свакој итерацији алгоритам модификује параметре вештачке неуронске мреже на основу једног и само једног примера из полазног скупа парова). За сва три алгоритма развијен је одговарајући математички модел вештачке неуронске мреже са радијалним активационим функцијама Гаусовог типа. Развијени алгоритми су тестирани у MATLAB® програмском окружењу развојем одговарајућег софтверског кода и применом тест скупова података. Резултати указују на то да у директном поређењу са другим развијеним алгоритмима машинског учења остварују већу тачност. Иако сви изабрани тест скупови података представљају реалне проблеме, развијени алгоритми су тестирани и на реалном инжењерском проблему моделирања изгледа сегмента обрађене површине применом вештачке неуронске мреже са радијалним активационим функцијама Гаусовог типа. Сва три алгоритма су приликом моделирања овог проблема показала висок степен тачности. Развијени алгоритми машинског учења почивају на теоријским основама теорије оцењивања па стога сваки параметар који се користи приликом модификације има физичко тумачење. Ово је посебна предност у погледу примене ових алгоритама у односу на друге приступе, где је уобичајени - 257 - поступак избора оптималних параметара машинског учења заснован на искуству корисника и не почива у потпуности на математичко-физичкој интерпретацији. Да би остварили интелигентни унутрашњи транспорт применом мобилних робота неопходно је да мобилни робот у сваком тренутку „зна” свој положај и положај карактеристичних објеката у радном окружењу у односу на произвољни непокретни спољашњи координатни систем. С обзиром на неодређености у управљачком систему и сензорском систему мобилног робота, не може се очекивати успешна директна примена једначина детерминистичке природе које ће у сваком тренутку дати тачну и прецизну оцену положаја. Услед постојања неодређености доћи ће до појаве грешака, што ће резултирати „уверењем” мобилног робота да се налази у неком положају иако се тај положај значајно разликује од стварног положаја. Да би се омогућило континуирано решавање овог проблема током експлоатације у технолошком окружењу, уведен је концепт симултаног оцењивања положаја мобилног робота и карактеристичних објеката у окружењу. Основни алгоритам оцењивања је развијен на основама линеаризованог Калмановог филтра. Међутим, током развоја и примене алгоритма на мобилном роботу Khepera II у лабораторијском моделу технолошког окружења, уочено је да постоји могућност побољшања полазног концепта увођењем вештачке неуронске мреже за моделирање грешке усвојеног модела кретања мобилног робота. У том смислу, основни алгоритам линеаризованог Калмановог филтра је модификован увођењем вештачке неуронске мреже чиме је развијен неуронски линеаризовани Калманов филтар. Посебно је важно нагласити могућност коју вештачка неуронска мрежа пружа у погледу учења непознате функционалне зависности у реалном времену. Поменута чињеница је искоришћена за примену вештачке неуронске мреже за моделирање непознатих утицаја који се појављују - 258 - током кретања мобилног робота. Обучавање вештачке неуронске мреже се спроводи током кретања мобилног робота, што значи да се процес модификације параметара вештачке неуронске мреже одвија у реалном времену, као и да се сам процес никада не прекида. Ова чињеница представља посебну предност с обзиром на то да се карактеристике радног окружења стално мењају: нпр. подлога по којој се мобилни робот креће се може променити (прелазак са једне врсте подлоге не другу) што утиче и на промену контактне силе и коефицијента трења између точкова мобилног робота и подлоге по којој се креће. Уколико се овај утицај не узме у обзир приликом анализе, појавиће се грешка у оцењивању положаја мобилног робота, што може да резултира катастрофалним последицама (уверење мобилног робота да се налази у једном положају, а да се у стварности он налази у потуно другом положају). Поменута могућност представља само пример неадекватног моделирања кретања мобилног робота применом неког од уобичајених математичких модела. Примена вештачке неуронске мреже као естиматора грешке између стварног кретања мобилног робота и кретања предвиђеног моделом, омогућује прецизније предвиђање положаја мобилног робота. Развијен је математички модел кретања мобилног робота базиран на „стандардном” моделу кретања уз примену вештачких неуронских мрежа за on line оцену грешке модела. Употребна вредност ове хипотезе је тестирана на два начина: 1) Развијен је посебан симулациони модел у MATLAB® програмском окружењу да би се оценио утицај основних параметара на оцену положаја мобилног робота; 2) Неуронски линеаризовани Калманов филтар је тестиран током експерименталног поступка коришћењем Khepera II мобилног робота и WEB камере у лабораторијском моделу технолошког окружења. Неуронски линеаризовани Калманов филтар - 259 - примењен је у MATLAB® програмском окружењу развојем посебног кода. Експериментални резултати недвосмислено указују да се вештачке неуронске мреже могу применити у on line режиму за моделирање грешке кретања. Предности ове интеграције су: 1) Резултати спроведених Монте Карло симулација недвосмислено показују да неуронски линеаризовани Калманов филтар боље оцењује грешку оцене. Резултати симулације после 50 понављања потврђују да се, увођењем вештачке неуронске мреже, директно утиче на конзистентност филтра, односно да се смањује оптимистичност филтра (потцењивање грешке), чиме се побољшава и његова оптималност. Овај резултат је од изразитог значаја, с обзиром на то да оптималност филтра директно зависи од оцене матрице коваријанси вектора стања; 2) Експериментални резултати, остварени коришћењем мобилног робота Khepera II и система препознавања на бази калибрисане камере за аквизицију сензорске информације о стању и изгледу окружења, указују да неуронски линеаризовани Калманов филтар генерише оцене положаја мобилног робота више тачности од линеаризованог Калмановог филтра за исте почетне услове. Спроведена истраживања у домену симултаног оцењивања положаја мобилног робота и карактеристичних објеката у окружењу и остварени експериментални резултати представљају основу на којој је начињен следећи корак у циљу развоја система интелигентног унутрашњег транспорта. Примена система препознавања на бази калибрисане камере у оквиру развоја интелигентног сиситема унутрашњег транспорта није често примењени поступак јер постоји неколико фактора који су спречавали ову - 260 - примену. У истраживањима спроведеним у оквиру ове дисертације уочено је да се у релевантним истраживачким изворима научних резултата, који анализирају унутрашњи транспорт, камера ретко користи као примарни сензор за аквизицију. У том смислу, у седмом поглављу је приказано како се визуелна информација може искористити за оцењивање положаја мобилног робота и за управљање на бази повратне информације од камере. Развијен је посебни хибридни управљачки алгоритам [129,195] који омогућује: 1) Раздвајање полазног сложенијег проблема на два (релативно) једноставнија проблема – глобално управљање (од стартног положаја до циљног положаја) и локално управљање (од циљног положаја до крајњег положаја који је једнозначно одређен циљном сликом). Дакле, овакав приступ раздваја почетни транспортни задатак на два дела: кретање од почетног положаја до циљног положаја (глобално) и кретање од циљног положаја до машине алатке/ међускладишта (локално). На овај начин је елиминисана потреба за потпуном информацијом о распореду објеката у технолошком окружењу; 2) Раздвајањем почетног транспортног проблема на два проблема успешно је решен проблем видног поља, тј. проблем у области управљања на бази повратне информације од камере који дефинише случај у коме карактеристични објекти нису у видном пољу камере (енг. Field of View). Почетне информације које су потребне за несметано функционисање развијеног хибридног управљачког алгоритма су жељени (циљни) положај и жељена (циљна) слика. Развијени хибридни управљачки алгоритам је тестиран у лабораторијском моделу технолошког окружења коришћењем мобилног робота Khepera II, WEB камере и хватача KheGrip. Експериментални резултати потврђују да је применом две петље - 261 - (управљање на основу положаја и управљање на основу информације од камере) могуће остварити симултано оцењивање положаја и управљање на основу жељеног положаја или жељене слике. Распрезање полазног проблема је од посебне важности за обављање унутрашњег транспорта у технолошком окружењу, с обзиром на то да развијени хибридни управљачки алгоритам не изискује додатну транспортну инфраструктуру или вештачке карактеристичне објекте (маркере) постављење у радном окружењу [129,195]. У истраживањима је разматран и развој хибридне управљачке архитектуре за навигацију мобилних робота у технолошком окружењу [12,192]. Интелигентни унутрашњи транспорт подразумева обједињавање свих особина интелигентног агента. Развијена архитектура омогућава мобилном роботу да самостално дефинише путању кретања, одреди свој положај и прати одређену путању са задатом тачношћу. Архитектура је хибридног карактера и обухвата способност планирања будућих акција и брзог реаговања на стимуланс. Архитектура је тестирана коришћењем LEGO Mindstorms NXT мобилног робота у лабораторијском моделу технолошког окружења. Остварени експериментални резултати указују да полазни концепт управљачке архитектуре може да буде примењен у on line режиму. Међутим, даљи развој роботске управљачке архитектуре оваквог типа подразумева увођење додатних сензора, а тиме и нових математичких модела за процесирање сензорске информације. Резултати који су приказани у осталим поглављима уз примену мобилног робота Khepera II, а везани су за проблем симултаног оцењивања положаја мобилног робота и карактеристичних објеката, могу значајно да подигну употребну вредност хибридној управљачкој архитектури током даљег развоја. Спроведена истраживања треба посматрати и из шире перспективе. Развијени алгоритми машинског учења вештачких неуронских мрежа са - 262 - радијалним активационим функцијама Гаусовог типа могу се применити на обе основне класе задатака: регресија и класификација. Развој ових алгоритама машинског учења је анализиран и спроведен узимајући у обзир и општи карактер примене вештачке неуронске мреже за шири спектар проблема. Другим речима, произвољни проблеми из инжењерског домена се могу моделирати уз примену вештачке неуронске мреже чији су параметри модификовани коришћењем неког од три развијена алгоритма. Експериментални резултати показују да вештачка неуронска мрежа која је обучена применом ових алгоритама генерише боље резултате (боље у смислу изабране тест статистике) од сличних алгоритама. Примена неуронског линеаризованог Калмановог филтра није ограничена искључиво на проблем који је разматран у оквиру спроведеног истраживања. Теорија оцењивања стохастичких величина је општа теорија, па самим тим Калманов филтар није специјалан алгоритам који се примењује на једну и само једну класу проблема. У том смислу, неуронски линеаризовани Калманов филтар може бити примењен као алгоритам оцењивања у on line режиму за шири спектар инжењерских проблема. Неуронски линеаризовани Калманов филтар се може применити на све врсте инжењерских проблема у којима пројектанти немају довољно информација о понашању система приликом преласка из једног стања у друго. Као један од примера могуће примене може се навести оцењивање положаја врха индустријског робота, серијске или паралелне структуре, уз примену система препознавања на бази камере. Сензорска информација би била уведена у неуронски линеаризовани Калманов филтар који би у реалном времену оцењивао положај. Међутим, увођење камере за потребе оцењивања положаја робота намеће и следећу идеју. Основна идеја хибридног управљачког алгоритма, развијеног у оквиру овог истраживања, може да буде примењена и за индустријске роботе са циљем навођења ка жељеној слици или положају. На овај начин - 263 - би се омогућило симултано оцењивање положаја врха робота и управљање на основу повратне информације од камере, што би допринело подизању нивоа интелигентног понашања. Неки од првих корака у том смеру су већ предузети [132]. Развој система интелигентног унутрашњег транспорта не би био комплетан без анализирања и увођења информација о технолошком процесу у процес одлучивања мобилног робота. У првом кораку развоја хибридне управљачке архитектуре [12,192,193] наглашено је да се планирање путање обавља узимајући у обзир листу технолошких задатака. Међутим, у оквиру спроведеног истраживања скуп технолошких задатака је посматран само као информација о жељеном положају мобилног робота, без анализирања како је овај положај одређен. Овај проблем превазилази оквире истраживања спроведених у оквиру ове дисертације и постављене хипотезе, а први кораци у виду анализе и дефинисања његовог значења дати су у [143,144,145,146]. Наставак истраживања у овом правцу, треба да резултира интелигентним системом унутрашњег транспорта који без директног надзора од стране оператера генерише транспортне технолошке задатке у складу са технолошким процесом [144,145]. Овако дефинисани транспортни задаци прослеђују се мобилном роботу који их на основу представљених резултата аутономно извршава. - 264 - 9. ЛИТЕРАТУРА [1] Afentakis, P., A loop layout design problem for flexible manufacturing systems. International Journal of Flexible Manufacturing Systems, Vol. 1, No. 2, pp. 175–196, 1989. [2] Alenya, G., Escoda, J., Martinez, B., Torras, C., Using laser and vision to locate a robot in an industrial environment: A practical experience. Proceedings of the 2005 IEEE International Conference on Robotics and Automation, Barcelona, Spain. pp. 3528-3533, 2005. [3] Alexandridis, A., Sarimveis, H., Bafas, G., A new algorithm for online structure and parameter adaptation of RBF networks. Neural Networks, Vol. 16, No. 7, pp. 1003–1017, 2003. [4] Angeloudis, P., Bell, M., An uncertainty-aware AGV assignment algorithm for automated container terminals. Transportation Research Part E.Vol.46,No.3, pp.354–366, 2010. [5] Arkin, R., Behavior-Based Robotics, MIT Press, Cambridge, Massachusetts, 1998. [6] Arkin, R., Murphy, R., Autonomous navigation in a manufacturing environment. IEEE Transactions on Robotics and Automation, Vol. 6, No. 4, pp. 445-454, 1990. [7] Babić, B., FLEXY – Inteligentni ekspertni sistem za projektovanje fts, Inteligentni tehnološki sistemi - Serija monografskih radova, Knjiga 5, Mašinski fakultet, Beograd, 1994. [8] Babić, B., Miljković Z., Bojović B., Vuković N., Snimanje rada i odgovarajućih tehnoloških vremena linija za proizvodnju limenki u kompaniji AD FMP – Beograd, Beograd 2008. [9] Babić, B., Miljković Z., Nešić N., Upravljanje tehnološkim informacijama u preduzeću „BUCK“ – Beograd, Beograd 2007. [10] Babić, B., Projektovanje tehnoloških procesa, Mašinski fakultet, Beograd, 2004. - 265 - [11] Babic, B., Axiomatic design of flexible manufacturing systems. International Journal of Production Research, Vol. 37, No. 5, pp. 1159 – 1173, 1999. [12] Babić,B., Miljković,Z., Vuković,N., Antić,V., Towards Implementation and Autonomous Navigation of an Intelligent Automated Guided Vehicle in Material Handling Systems, Iranian Journal of Science and Technology (IJST) – Transactions of Mechanical Engineering (ISSN 1028- 6284), Vol. 36, No. M1, pp. 25-40, Printed in The Islamic Republic of Iran, © Shiraz University, April 2012. http://www.shirazu.ac.ir/en/index.php?page_id=2613 (Science Citation Index-Web of Science® – IF=0,375 (2011)→М23; извор KoBSON) [13] Baglivo, L., Biasi, N., Biral, F., Bellomo, N., Bertolazzi, E., Lio, M., Cecco, M., Autonomous pallet localization and picking for industrial forklifts: a robust range and look method. Meas. Sci. Technol, Vol. 22, 2011. [14] Bailey, T., Durrant-Whyte, H., Simultaneous Localisation and Mapping (SLAM): Part II State of the Art. . Robotics and Automation Magazine, September, 2006. [15] Bailey, T., Nieto, J., Guivant, J., Stevens, M., Nebot, E., Consistency of the EKF-SLAM Algorithm. . IROS, 2006. [16] Barreto, A.M.S., Barbosa, H.J.C., Ebecken, N.F.F., Growing Compact RBF Networks Using a Genetic Algorithm. In Proceedings of the 7th Brazilian Symposium on Neural Networks, Recife, Brazil, pp. 61–66. 2002. [17] Bar-Shalom, Y., Li, X.R., Kirubarajan, T., Estimation with Applications to Trackimg and Navigation-Theory, Algorithms and Software, John Wiley & Sons, 2001. [18] Bay, H, Ess A, Tuytelaars T, Van Gool L SURF: Speeded Up Robust Features. Comput Vis Image Und. Vol.110, No. 3, pp.346—359, 2008. [19] Beamon, B.M., Performance, reliability, and performability of material handling systems. International Journal of Production Research, Vol. 36, No. 2, pp. 337–393, 2011. - 266 - [20] Bergasa, L.M., Alcantarilla, P.F., and Schleicher D. Non-Linearity Analysis of Depth and Angular Indexes for Optimal Stereo SLAM. Sensors 2010, 10 (I4), 4159 - 4179. [21] Berman, S., Edan, Y., Decentralized autonomous AGV system for material handling. International Journal of Production Research. Vol. 40, No. 15, pp. 3995–4006, 2002. [22] Berman, S., Edan, Y., Jamshidi, M., Decentralized autonomous automatic guided vehicles in material handling. IEEE Transactions on Robotics and Automation. Vol.19, No.4,pp. 743–749, 2003. [23] Berman, S., Schechtman, E., Edan, Y., Evaluation of automatic guided vehicle systems. Robotics and Computer-Integrated Manufacturing. Vol. 25, No. 3, pp. 522–528, 2009. [24] Betke, M. & Gurvits, L., (1997). Mobile Robot Localization Using Landmarks. IEEE Transactions on Robotics and Automation, Vol.13,No.2, pp. 251-263. [25] Bishop, C., Pattern Recognition and Machine Learning, Springer-Verlag, 2007. [26] Borenstein, J., Everett, H.R., Feng, L., Where am I? Sensors and Methods for Mobile Robot Positioning, Ann Arbor, University of Michigan, 1996, http://www-personal.engin.unimch.edu/~johannb/position.htm. [27] Bortman, M., Aladjem M., A Growing and Pruning Method for Radial Basis Function Networks, IEEE Transactions on Neural Networks, Vol. 20, No. 6, pp. 1039-1045, 2009. [28] Bouguet, J.Y., Camera Calibration Toolkit for MATLAB. Available from: http://www.vision.caltech.edu/bouguetj/calib_doc/ [29] Bozer, Y.A., Srinivasan, M.M., Tandem configurations for AGV systems offer simplicity and flexibility. Industrial Engineering. Vol. 21, No. 2, pp. 23–27, 1989. - 267 - [30] Bozer, Y.A., Srinivasan, M.M., Tandem configurations for automated guided vehicle systems and the analysis of single vehicle loops. IIE Transactions. Vol. 23, No. 1, pp. 72–82, 1991. [31] Bozer, Y.A., Srinivasan, M.M., Tandem AGV systems: A partitioning algorithm and performance comparison with conventional AGV systems. European Journal of Operational Research. Vol. 63, No.2, pp. 173–191, 1992. [32] Cadena, C., Neira, J., SLAM in O(log n) with the Combined Kalman - Information Filter, Robotics and Autonomous Systems, Vol. 58, No. 11, pp. 1207-1219, 2010. [33] Castellanos, J.A., Martinez-Cantin, R., Tardos, J.D., Neira, J., Robocentric map joining: Improving the consistency of EKF-SLAM. Robotics and Autonomous Systems, Vol. 55, No. 1, pp. 21–29, 2007. [34] Cetto, J.A., Sanfeliu A., Environment Learning for Indoor Mobile robots- A Stochastic State Estimation Approach to Simultaneous Localization and Map Building, Springer Tracts in Advanced Robotics, Vol.23., Springer-Verlag Berlin Heidelberg, 2006. [35] Choi, M., Sakthivel, R., Chung, W. K., Neural Network-Aided Extended Kalman Filter for SLAM Problem. In Proceedings of the IEEE International Conference on Robotics and Automation, Roma, Italy, 10- 14 April 2007, IEEE, paper 1-4244-0602-1/07, pp. 1686-1690. [36] Choset, H., Lynch, K.M., Hutchinson, S., Kantor, G., Burgard, W., Kavraki, L.E., Thrun, S., Principles of Robot Motion-Theory, Algorithms and Implementations, MIT Press, Cambridge, Massachusetts, 2005. [37] Civera, J., Davison, A.J., Montiel, J.M.M., Inverse Depth Parametrization for Monocular SLAM. IEEE Transactions on Robotics, Vol. 24, No. 5, pp.932 – 945, 2008. [38] Civera, J., Grasa, O.G., Davison, A.J., 1-Point RANSAC for EKF Filtering. Application to Real-Time Structure from Motion and Visual Odometry. - 268 - Journal of Field Robotics - Visual Mapping and Navigation Outdoors. Vol. 27,No. 5, pp. 609–631, 2010. [39] Cohen, S., Intrator, N., On different model selection criteria in a forward and backward regression hybrid network, International Journal of Pattern Recognition and Artificial Intelligence,Vol. 18, No. 5, pp. 847-865, 2004. [40] Comport, A.I., Malis, E., Rives, P., Accurate Quadrifocal Tracking for Robust 3D Visual Odometry. IEEE International Conference on Robotics and Automation, Roma, Italy, IEEE, paper 1-4244-0602-1/07, pp. 40-45, 2007. [41] Corréa, A. I., Langevin, A., Rousseau, L-Martin, Scheduling and routing of automated guided vehicles: A hybrid approach. Computers & Operations Research, Vol. 34, No. 6, pp.1688–1707, 2007. [42] Craig, J.J., Introduction to Robotics, Mechanics and Control, Addison- Wesley Publishing Company, 1989. [43] Csorba, M., Simultaneous Localisation and Map Building, Robotics Research Group Department of Engineering Science, University of Oxford, 1997. [44] Davidson, A, Reid, I., Molton N, Stasse, O., MonoSLAM: Real-Time Single Camera SLAM. IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 29, No. 6, pp. 1052-1067, 2007. [45] De Castro, L.N., von Zuben, F.J., An Immunological Approach to Initialize Centers of Radial Basis Function Neural Networks. In Proceedings of Brazilian Conference on Neural Networks, Rio de Janeiro, Brazil, pp. 79–84. 2001. [46] Diebel, J., Representing Attitude: Euler Angles, Unit Quaternions, and Rotation Vectors, Stanford University, Techical Report ,2006. [47] Dissanayake, M.W.M.G., Newman P., Clark S., Durrant-Whyte H.F., Csorba M., A Solution to the Simultaneous Localization and Map - 269 - Building (SLAM) Problem, IEEE Transactions on Robotics and Automation, Vol.17, No.3, pp. 229-241, 2001. [48] Dreyfus, G., Neural Networks – Methodology and Applications, Dreyfus G. (Ed.), Springer-Verlag Berlin Heidelberg, 2005. [49] Durrant-Whyte, H.F., Uncertain geometry in robotics. IEEE Trans. Robotics and Automation, Vol. 4, No. 1, pp. 23–31, 1988. [50] Durrant-Whyte, H.F., Bailey, T., Simultaneous Localisation and Mapping (SLAM): Part I The Essential Algorithms. . Robotics and Automation Magazine, June, 2006. [51] Durrant-Whyte, H.F., An autonomous guided vehicle for cargo handling applications. International Journal of Robotics Research, Vol. 15, No.5, pp. 407–440, 1996. [52] Durrant-Whyte, H.F., Pagac, D., Rogers, B., Stevens, M., Nelmes, G., An autonomous straddle carrier for movement of shipping containers. IEEE Robotics and Automation Magazine, Vol.14, No. 3, pp. 14–24, 2007. [53] Egbelu, P.J., Tanchoco, J.M.A., Potentials for bi-directional guide-path for automated guided vehicle based systems. International Journal of Production Research. Vol. 24, No. 5, pp. 1075–1097, 1986. [54] Fischler, M.A., Bolles, R.C., Random Sample Consensus: A Paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography. Commun ACM. Vol. 24, No. 6, pp. 381–395, 1981. [55] Fisher, R., The Use of Multiple Measurements in Taxonomic Problems, Annals of Eugenics, Vol. 7, pp.179–188, 1936. [56] Frese, U., Interview: Is SLAM Solved? Künstliche Intelligenz, Vol. 24, No. 3, pp. 255-257, 2010. [57] Friedman, J. H., Multivariate Adaptive Regression Splines, The Annals of Statistics, Vol. 19, No. 1, pp. 1-67, 1991. [58] Fukuda, T., Arakawa, T., Intelligent Systems: Robotics versus Mechatronics. Annual Reviews in Control,Vol. 22, pp.13-22, 1998. - 270 - [59] Garibotto, G., Masciangelo, S., Bassino, P., Coelho, C., Pavan, A., Marson, M., Elsag, Bailey, G., Industrial exploitation of computer vision in logistic automation: autonomous control of an intelligent forklift truck. In Proceedings of the IEEE International Conference on Robotics and Automation, Leuven, Belgium. 2: 1459–1464, 1998. [60] Garibotto, G., Masciangelo, S., Ilic, M., Basino, P., Robolift: a vision guided autonomous fork-lift for pallet handling. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, Osaka, Japan. pp. 656-663, 1996. [61] Grisetti, G., Stachniss, C., Burgard, W., Improved Techniques for Grid Mapping with Rao-Blackwellized Particle Filters. Transactions on Robotics, Vol. 23, No. 1, pp. 34–46, 2007. [62] Groover, M. P., Weiss M., Nagel R. N., Odrey N. G., Industrial Robotics: Technology, Programming, and Applicatios, McGraw-Hill, 1987. [63] Groover, M.P., Automation, Production Systems, and Computer- Integrated Manufacturing, 2nd Edition, Prentice Hall, 2001. [64] Grzonka, S., Plagemann, C., Grisetti, G., Burgard, W., Look-ahead Proposals for Robust Grid-based SLAM with Rao-Blackwellized Particle Filters, International Journal of Robotics Research, Vol. 28, No. 2, pp. 191–200, 2009. [65] Han, H.G., Chen, Q.L., Qiao, J.F., An efficient self-organizing RBF neural network for water quality prediction. Neural Networks, Vol. 24, No. 7, pp. 717-725, 2011. [66] Hartley, R.I., Zisserman, A., Multiple View Geometry in Computer Vision, second ed., Cambridge University Press, 2004. [67] Haykin, S., Neural Networks: A Comprehensive Foundation (2nd edition), Prentice Hall, 1998. [68] Hoseinnezhad, R., Moshiri, B., and Asharif, M.R. Improved Pose Estimation for Mobile Robots by Fusion of Odometry Data and - 271 - Environment Map. Journal of Intelligent and Robotic Systems, Vol. 36, No. 1, pp. 89–108. 2003. [69] http://archive.ics.uci.edu/ml/ [70] http://www.cs.toronto.edu/~delve/ [71] http://www.liaad.up.pt/~ltorgo/Regression/DataSets.html [72] http://mindstorms.lego.com [73] http://www.mindstorms.rwth-aachen.de/ [74] Hu, H., Brady, M., Towards Advanced Mobile Robots for Manufacturing, in Artificial Intelligence and Mobile Robots, Case Studies of Successful Robot Systems, D. Kortenkamp et al. (Eds.), pp. 297-321, MIT Press, Cambridge, MA, 1998. [75] Hu, H., Gu, D., Landmark–based Navigation of Industrial Mobile Robots. Industrial Robot. An International Journal, Vol. 27, pp. 458 – 467, 2000. [76] Hu, H., Gu D., Landmark–based Navigation of Mobile Robots in Manufacturing, in Proceedings of the IEEE International Conference Emerging Technologies & Factory Automation, Barcelona 1999,pp. 114 – 121 [77] Huang, G. P., Mourikis, A. I., Roumeliotis, S. I., Observability-based rules for designing consistent EKF SLAM estimators. International Journal of Robotics Research, Vol. 29, No. 5, pp. 502-528, 2010. [78] Huang, G.B., Saratchandran, P., Sundararajan, N., An Efficient Sequential Learning Algorithm for Growing and Pruning RBF (GAP-RBF) Networks, IEEE Transactions on Systems, Man, and Cybernetics-Part B: Cybernetics, Vol. 34, No. 6, pp. 2284–2292, 2004. [79] Huang, S., Dissanayake, G., Convergence and Consistency Analysis for Extended Kalman Filter based SLAM, IEEE Transactions on Robotics, Vol. 23. No. 5, pp. 1036 – 1049, 2007. [80] Huang, G. B., Saratchandran, P., Sundararajan, N., A generalized growing and pruning RBF (GGAP-RBF) neural network for function - 272 - approximation. IEEE Transactions on Neural Networks, Vol. 16, No. 1, pp. 57–67, 2005. [81] Huang, G., Trawny, N., Mourikis, A., Roumeliotis, S., Observability- based consistent EKF estimators for multi-robot cooperative localization. Autonomous Robots, Vol. 30, No. 1, pp. 99-122, 2011. [82] Jawahar, N. , Aravindan, P., Ponnambalam, S.G. & Suresh, P.K., AGV schedule integrated with production in flexible manufacturing systems. International Journal of Advanced Manufacturing Technology, Vol. 14, No. 6, pp. 428–440, 1998. [83] Jazwinski, A., Stochastic Processes and Filtering Theory, Dover Publications, 2007 [84] Julier, S. J. , Uhlmann J. K., A New Extension of the Kalman Filter to Nonlinear Systems. In Proc. of AeroSense: The 11th Int. Symp. on Aerospace/Defence Sensing, Simulation and Controls., 1997. [85] Julier, S.J., Uhlmann, J.K., Unscented filtering and nonlinear estimation, Proceedings of the IEEE Vol. 92, No. 3 , pp. 401 – 422, 2004. [86] Kalajdžić, M., Tehnologija mašinogradnje, Univerzitet u Beogradu– Mašinski fakultet, XI izdanje, Beograd 2008. [87] Kalman, R.E., A New Approach to Linear Filtering and Prediction Problems, Transactions of the ASME-Journal of Basic Engineering 82 (Series D), pp. 35-45., 1960. [88] Kang, J.G., An, S.Y., Oh, S.Y. Modified Neural Network Aided EKF based SLAM for Improving an accuracy of the Feature Map. In International Joint Conference on Neural Networks (IJCNN), Barcelona, Spain, 18-23 July 2010, IEEE, paper 978-1-4244-6916-1, pp. 1-7. [89] Kang, J.G., Choi, W.S., An, S.Y., and Oh, S.Y. Augmented EKF based SLAM method for Improving the Accuracy of the Feature Map. In IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Taipei International Convention Center (TICC), Taipei, 18-22 October 2010, IEEE/RSJ, paper 978-1-4244-6674-0, pp. 3725 - 3731. - 273 - [90] Karayiannis, N.B., Reformulated Radial Basis Neural Networks Trained by Gradient Descent, IEEE Transactions on Neural Networks, Vol. 10 No.3, pp. 657–671, 1999. [91] Kelly, A., Nagy, B., Reactive nonholonomic trajectory generation via parametric optimal control. International Journal of Robotics Research, Vol. 22, No. 7–8, pp. 583–601, 2003. [92] Kelly, A., Mobile robot localization from large scale appearance mosaics. International Journal of Robotics Research. Vol.19, No. 11, pp. 1104–1125, 2000. [93] Kelly, A., Nagy, B., Stager, D., Unnikrishnan, R., An infrastructure-free automated guided vehicle based on computer vision. IEEE Robotics and Automation Magazine, Vol.14, No. 3, pp.24–34, 2007. [94] Kim C., R. Sakthivel, W. Chung. Unscented fastslam: a robust and efficient solution to the slam problem. IEEE Trans. Robotics, 24(4):808– 820, 2009 [95] Kim, Y.H., Lee, S.W., Yang, H., Shell, D., Toward autonomous robotic containment booms: visual servoing for robust inter-vehicle docking of surface vehicles. Intel Serv Robotics, doi:10.1007/s11370-011-0100-0, 2011 [96] Kim, C.W., Tanchoco, J.M.A., Operational control of a bidirectional automated guided vehicle system. International Journal of Production Research. Vol. 31, No. 9, pp. 2123–2138, 1993. [97] Konolige, K., Agrawal, M., Solà, J. Large Scale Visual Odometry for Rough Terrain. In Proceedings of the International Symposium on Research in Robotics (ISRR), Hiroshima, Japan, 26–29 November 2007. [98] Kopacek, P., From Industrial to Ubiqitous Robots in: Computer Aided Systems Theory - EUROCAST 2009, ed. Moreno-Díaz, Roberto and Pichler, Franz and Quesada-Arencibia, Alexis, Lecture Notes in Computer Science, Springer Berlin / Heidelberg, ISBN 978-3-642-04771- 8, pp.374-382, Vol 5717, 2009 - 274 - [99] Kopacek, P., Intelligent Manufacturing:Present State and Future Trends Journal of Intelligent & Robotic Systems, 1999, Volume 26, Numbers 3-4, Pages 217-229 [100] Kramer, K.A., Stubberud S.C., Tracking of multiple target types with a single neural extended kalman filter. International Journal of Intelligent Systems, Vol. 25, pp. 440-459, 2010. [101] Kramer, K.A., Stubberud, S.C., Analysis and implementation of a neural extended Kalman filter for target tracking. International Journal of Neural Systems, Vol. 16, No.1, pp. 1–13, 2006. [102] Kyung-Sik C., Suk-Gyu L., Enhanced SLAM for a Mobile Robot using Extended Kalman Filter and Neural Networks International Journal Of Precision Engineering And Manufacturing, Vol. 11, No. 2, pp. 255- 264, 2010. [103] Lacomme, P., Larabi, M., Tchernev, N., Job-shop based framework for simultaneous scheduling of machines and automated guided vehicles. International Journal of Production Economics, doi:10.1016/j.ijpe.2010.07.012, 2010. [104] Larsen, T., Bak, M., Andersen, N., Ravn, O. Location estimation for autonomously guided vehicle using an augmented Kalman filter to autocalibrate the odometry. In FUSION98 Spie Conference, Las Vegas, USA, July 1998. [105] LaValle, S. M., Planning Algorithms, Cambridge University Press, 2006. [106] Lazaro, M., Santamari I., Pantaleo C., A new EM-based training algorithm for RBF networks, Neural Networks, Vol. 16, pp. 69-77, 2003. [107] Le-Anh, T., De Koster, M.B.M., A review of design and control of automated guided vehicle systems. European Journal of Operational Research, Vol. 171, No.1, pp.1–23, 2006. [108] Leonard, J.J., DurrantWhyte, H. F., Cox. I. J. Dynamic map building for an autonomous mobile robot, IEEE International Workshop on Intelligent Robots and Systems IROS '90, pp. 89 -96, 1990. - 275 - [109] Li, Y. W., Sundararajan, N., Saratchandran, P., Performance valuation of a sequential minimal radial basis function (RBF) neural network learning algorithm. IEEE Transactions on Neural Networks, Vol. 9, No. 2, pp. 308– 318, 1998. [110] Lian G. Y., Huang K. L., Chen J. H., Gao F. Q., Training algorithm for radial basis function neural network based on quantum-behaved particle swarm optimization, International Journal of Computer Mathematics, Vol. 87, No. 3, pp. 629 - 641, 2008. [111] Liu, Y., Zheng, Q., Shi, Z., Chen, J., Training radial basis function networks with particle swarms. Lecture Notes in Computer Science, 3173, pp. 317–322, 2004. [112] López-Nicolás, G., Guerrero, J.J., Sagüés, C., Visual control of vehicles using two-view geometry. Mechatronics, Vol. 20, No. 2, pp. 315-325, 2010. [113] López-Nicolás, G., Sagüés, C., Guerrero. J.J., Kragic, D., Jensfelt, P. Switching visual control based on epipoles for mobile robots. Robotics and Autonomous Systems, Vol. 56, No. 7, pp. 592-603, 2008 [114] Lowe, D.G., Object recognition from local scale-invariant features. Proceedings of the International Conference on Computer Vision. 2. pp. 1150–1157, 1999. [115] Lozoya, C., Marti, P., Velasco, M., Fuertes, J.M., Martin, E.X., Simulation study of a remote wireless path tracking control with delay estimation for an autonomous guided vehicle. International Journal of Advenced Manufacturing Technology, Vol. 52, No. 5-8, pp. 751-761, 2011 [116] Lu Y., Sundararajan N., Saratchandran P., A Sequential Learning Scheme for Function Approximation using Minimal Radial Basis Function Neural Networks, Neural Computation, Vol. 9, pp. 461-478, 1997. [117] Mariottini, G.L., Oriolo. G., Prattichizzo, D., Image-based visual servoing for nonholonomic mobile robots using epipolar geometry. IEEE Transactions on Robotics, Vol. 23, No. 1, pp. 87-100, 2007. - 276 - [118] Martinelli, A., Tomatis, N., Siegwart, R., Simultaneous localization and odometry self calibration for mobile robot, Autonomous Robots, Vol. 22, No. 1, pp. 75-85, 2007. [119] Martinez-Barbera, H., Herrero-Perez, D., Autonomous navigation of an automated guided vehicle in industrial environments. Robotics and Computer-Integrated Manufacturing, Vol. 26, pp. 296–311, 2010. [120] Martinez-Barbera, H., Herrero-Perez, D., Development of a flexible AGV for flexible manufacturing systems. Industrial Robot: An International Journal, Vol.37, No.5, pp. 459–468, 2010. [121] Merkle, M., Verovatnoća i statistika za inženjere i studente tehnike, Akademska misao, Beograd, 2002. [122] Miljković, Z., Aleksendrić, D., Veštačke neuronske mreže - zbirka rešenih zadataka sa izvodima iz teorije, Univerzitet u Beogradu- Mašinski fakultet, Beograd 2009. [123] Miljković, Z., Milanović D, Nešić N., Stošić D., Milanović S., Projektovanje proizvodnih procesa u preduzeću „Montprojekt”, Beograd 2004. [124] Miljković, Z., Sistemi veštačkih neuronskih mreža u proizvodnim tehnologijama, Univerzitet u Beogradu- Mašinski fakultet, Beograd 2003. [125] Miljković,Z., Babić,B., Vuković,N., Bojović,B., Terminiranje proizvodnje i utvrđivanje vremenskih normativa u strukturi projektovanog tehnološkog procesa korišćenjem metode snimanja (nova metoda: sistemsko rešenje terminiranja proizvodnje u okviru integrisanog digitalnog poslovanja; metoda razvijana u tehnološkim projektima za preduzeća „Montprojekt“ - Beograd, „Buck“ - Beograd i „FMP d.o.o.“ - Beograd, kao i kroz aktivnosti projekta tehnološkog razvoja TR-14031 MNTR Vlade Republike Srbije). [126] Miljković, Z., Razvoj upravljačkih algoritama za autonomne industrijske robote na bazi sistema prepoznavanja i učenja, doktorska disertacija , Univerzitet u Beogradu – Mašinski fakultet, 2000. - 277 - [127] Miljković,Z., Vuković,N., Babić,B., Bojović,B. Čović,N., Inteligentni tehnološki sistemi u domenu proizvodnje delova od lima, 32. Savetovanje proizvodnog mašinstva Srbije, Zbornik radova, str. 563-566, Novi Sad, 18-20. septembar, 2008. [128] Miljković,Z., Vuković,N., Babić,B., Mobile Robot Localization in a Manufacturing Environment, Proceedings of the 3rd International Conference on Manufacturing Engineering (ICMEN 2008) and EUREKA Brokerage Event, pp. 485-494, Kallithea of Chalkidiki, Greece, 1-3 October, 2008. [129] Miljković,Z., Vuković,N., Mitić,M., Babić,B., New Hybrid Vision-Based Control Approach for Automated Guided Vehicles, The International Journal of Advanced Manufacturing Technology (ISSN 0268-3768 Print), Article in press_DOI: 10.1007/s00170-012-4321-y (ISSN 1433-3015 Online) (Online First™ Articles - 6 July 2012), Springer-Verlag London Ltd., (Science Citation Index-Web of Science® – IF = 1,103 (2011) → М22; извор KoBSON) [130] Milutinović, D., Sistemi prepoznavanja kod robota za fleksibilne tehnološke sisteme i montažu, doktorska disertacija, Univerzitet u Beogradu – Mašinski fakultet, 1987. [131] Ming, X., Trinocular vision for agv guidance: path localization and obstacle detection. Computers and Electrical Engineering,, Vol. 21, No. 6, pp. 441-452, 1995. [132] Mitić, M., Miljković, Z., Vuković, N., Babić, B., Lazarević, I., Novi hibridni empirijski upravljački sistem inteligentnog robota vertikalne zglobne konfiguracije baziran na informacijama od kamere (nova metoda: obuhvata integraciju inteligentnog sistema baziranog na empirijski prikupljenim informacijama od kamere i klasičnog upravljačkog sistema robota na bazi greške koja je u korelaciji sa parametrima slike, a razvijana je u projektu TR-35004 MPiN Vlade Republike Srbije). - 278 - [133] Mouragnon, E., Lhuillier, M., Dhome, M., Dekeyser F., and Sayd P. Generic and real-time structure from motion using local bundle adjustment. Image and Vision Computing, Vol. 27, No. 8, pp. 1178-1193, 2009. [134] Murphy, R.R., Introduction to AI Robotics, MIT Press, Cambridge, Massachusetts, 2000. [135] Neal, R., Hinton, G., A view of the EM algorithm that justifies incremental, sparse, and other variants, In: Learning in Graphical Models, JORDAN M. (Ed.), Kluwer Academic Press, 1998. [136] Nemra, A. Aouf, N. Experimental airborne NH∞ vision-based simultaneous localization and mapping in unknown environments. Proc. IMechE, Part G: Journal of Aerospace Engineering, Vol. 223, No. 8, 1253- 1270, 2010. [137] Newman, P.M., On the Structure and Solution of the Simultaneous Localisation and Map Building Problem, PhD Thesis, Australian Center for Field Robotics, The University of Sydney, 1999. [138] Nishi, T., Hiranaka, Y., Grossmann, I. E., A bilevel decomposition algorithm for simultaneous production scheduling and conflict-free routing for automated guided vehicles. Computers & Operations Research. Vol. 38, No. 5, pp. 876–888, 2011. [139] Nister, D., Naroditsky, O., Bergen, J. Visual odometry. In Proceedings of the IEEE International Conference on Computer Vision and Pattern Recognition 2004, pp. 652-659. [140] Nygards, J., Hogstrom, T., Wernersson, A., Docking to pallets with feedback from a sheet-of-light range camera. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, Takamatsu, Japan. 3: 1853–1859., 2000. [141] Papoullis, A., Probability, Random Variables, and Stochastic Processes, McGraw-Hill, 1965, 9th edition. - 279 - [142] Paz, L.M., Pinies, P., Tardos, J.D., Neira, J., Large Scale 6DOF SLAM with Stereo-in-hand. IEEE Transactions on Robotics, Vol. 24, No. 5, pp. 946– 957, 2008. [143] Petrović, M., Miljković, Z., Babić, B., Čović, N., Veštačke neuronske mreže i aksiomatska teorija projektovanja u koncepcijskom projektovanju robotizovanog unutrašnjeg transporta materijala, 37. JUPITER Konferencija, 33. simpozijum „NU-ROBOTI-FTS“, Zbornik radova - CD, str. 3.72-3.79, Beograd, 10-11. maj 2011. [144] Petrović, M., Miljković, Z., Babić, B., Vuković, N., Čović, N.,Towards a Conceptual Design of Intelligent Material Transport Using Artificial Intelligence, Strojarstvo, Accepted paper, 2012. [145] Petrović, M., Prilog razvoju inteligentnog tehnološkog sistema u domenu unutrašnjeg transporta baziran na mašinskom učenju, diplomski (MSc) rad, Univerzitet u Beogradu – Mašinski fakultet, 2010. [146] Petrović,M., Lukić,N., Vuković,N., Miljković,Z., Mobilni robot u unutrašnjem transportu materijala inteligentnog tehnološkog sistema– edukacija i razvoj, 36. JUPITER Konferencija, 32. simpozijum „NU- ROBOTI-FTS“, Zbornik radova - CD, str. 3.85-3.90, Beograd, 11-12. maj 2010. [147] Petrović,M., Miljković,Z., Babić,B., Vuković,N., Čović,N., Towards a Conceptual Design of an Intelligent Material Transport Based on Machine Learning and Axiomatic Design Theory, Proceedings of the 34th International Conference on Production Engineering, pp.389- 392, Niš,Serbia, 2011. [148] Platt, J., A resource allocating network for function interpolation, Neural Computation, Vol.3,pp.213-225, 1991. [149] Pradalier, C., Tews, A., Roberts, J., Vision-based operations of a large industrial vehicle - autonomous hot metal carrier. Journal of Field Robotics, Vol. 25, No. 4-5, pp. 243–267, 2008. - 280 - [150] Qiu, L., Hsu, W., Huang, S., Wang, H., Scheduling and routing algorithms for AGVs: a survey. International Journal of Production Research.Vol.40,No.3, pp.745–760, 2002. [151] Rajotia, S., Shanker, K. & Batra, J.L., An heuristic for configuring a mixed uni/bidirectional flow path for an AGV system. International Journal of Production Research. Vol.36, No.7, pp. 1779–1799, 1998. [152] Rodriguez, F.J., Mazo, M., Sotelo, M.A., Automation of an industrial fork lift truck, guided by artificial vision in open environments. Autonomous Robot, Vol. 5, pp. 215–231, 1998. [153] Rodriguez-Losada, D., Matia, F., Pedraza, L., Jimenez A., Galan, R., Consistency of SLAM-EKF Algorithms for Indoor Environments, Journal of Intelligent and Robotic Systems, Vol. 50, No. 375–397,DOI 10.1007/s10846-007-9171-8, 2007. [154] Ronghui, Z., Wan, J., Neural Network-Aided Adaptive Unscented Kalman Filter for Nonlinear State Estimation IEEE Signal processing letters, Vol. 13, No. 7, 2006. [155] Ronzoni, D., Olmi, R., Secchi, C., Fantuzzi, C., AGV global localization using indistinguishable artificial landmarks. In Proceedings of IEEE International Conference on Robotics and Automation, Shanghai, China. pp.287-292, 2011. [156] Rosten, E., Porter, R., Drummond, T., FASTER and better: A machine learning approach to corner detection. IEEE Transactions on Pattern Analysis. Vol. 32 , No. 1, pp. 105-119., 2010. [157] Rosten, E. Source code for feature detection with FAST algorithm. Available from: http://www.edwardrosten.com/work/fast.html [158] Roy, N., Thrun, S. Online Self-Calibration For Mobile Robots, In IEEE International Conference on Robotics and Automation (ICRA), Detroit, MI, USA, 10 - 15 May 1999, IEEE, paper 0-7803-5180-0, pp. 2292 - 2297. [159] Scaramuzza, D., Fraundorfer, F. & Pollefeys, M., Closing the loop in appearance-guided omnidirectional visual odometry by using - 281 - vocabulary trees. Robotics and Autonomous Systems, Vol.58, No. 6, pp. 820-827, 2010. [160] Schwenker, F., Kestler, H.A., Palm, G., Three learning phases for radial- basis-function networks. Neural Networks, Vol. 14, No. 4-5, pp. 439-58, 2001. [161] Seelinger, M., Yoder, J.D., Automatic visual guidance of a forklift engaging a pallet. Robotics and Autonomous Systems, Vol, 54, pp. 1026– 1038, 2006. [162] Shi, J., Tomasi, C., Good Features to Track, 9th IEEE Conference on Computer Vision and Pattern Recognition, (June 1994). Springer. [163] Siegwart, R., Nourbakhsh, I.R.: Introduction to Autonomous Mobile Robots, MIT Press, Cambridge, Massachusetts, 2004. [164] Simon, D, Training Radial Basis Function Neural Networks with the Extended Kalman Filter, Neurocomputing, Vol. 48, pp. 455-475, 2001. [165] Simon, D., Optimal State Estimation: Kalman, H∞ and Nonlinear Approaches, John Wiley & Sons, 2006. [166] Slotine, J.J.E., Li, W., Applied nonlinear control. Englewood Cliffs NJ: Prentice Hall, 1991. [167] Smith, R., Cheeseman, P. On the representation and estimation of spatial uncertainty. Intrantional Journal of Robotic Research, Vol. 5, No. 4, pp. 56–68, 1986. [168] Sola, J., Monin, A., Devy, M., Undelayed landmarks initialization for monocular SLAM, LAAS 2008. [169] Sola, J., Towards Visual Localization, Mapping and Moving Objects Tracking by a Mobile Robot: a Geometric and Probabilistic Approach, PhD thesis, LAAS 2007 [170] Song,S.M, Waldron,K.J., Machines That Walk: The Adaptive Suspension Vehicle, MIT Press, Cambridge, Massachusetts, 1989 [171] Spong, M.W., Hutchinson S., Vidyasagar M., Robot Modeling and Control, Wiley, 2005. - 282 - [172] Stanić, J., Metod inženjerskih merenja, osnove matematičke teorije eksperimenata, Univerzitet u Beogradu-Mašinski fakultet,Beograd 1986. [173] Stentz, A., The focused D* algorithm for real-time replanning. In: International joint conference on artificial intelligence, Taiwan, pp. 1652– 9, 1995 [174] Stentz, A., Map-based strategies for Robot navigation in unknown environments. AAAI spring symposium on planning with incomplete information robot problems. Menlo Park, CA: AAAI Press; pp. 110–16, 1996. [175] Stubberud, A.R., A Validation of the Neural Extended Kalman Filter. Proceedings of the Eighteenth International Conference on Systems Engineering, Coventry University, London, 5-7 September 2006, pp. 3-8. [176] Stubberud, S.C., and Kramer, K.A. Analysis of System Identification Using the Neural Extended Kalman Filter. 19th International Conference on Systems Engineering, Las Vegas, Nevada, 19-21 August 2008, IEEE, paper 978-0-7695-3331-5/08, pp. 153-158. [177] Sunderhauf, N., Lange, S., and Protzel, P. Using the Unscented Kalman Filter in Mono-SLAM with Inverse Depth Parametrization for Autonomous Airship Control. In IEEE International Workshop on Safety Security and Rescue Robotics, Rome, Italy, 27-29 September 2007, IEEE, paper 978-1-4244-1569-4, pp. 1-6. [178] Szeliski, R. Computer Vision: Algorithms and Applications. Springer; 2011. [179] Takahashi, M., Suzuki, T., Shitamoto, H., Moriguchi, T., Yoshida, K., Developing a mobile robot for transport applications in the hospital domain. Robotics and Autonomous Systems, Vol. 58, No. 7, pp. 889-899, 2010. [180] Tamba, T.A., Hong, H., Hong, K.S., A Path Following Control of an Unmanned Autonomous Forklift. Int J Control Autom, Vol. 7, No. 1, pp. 113-122, 2009. - 283 - [181] Tanchoco, J.M.A., Sinriech, D., OSL—optimal singleloop guide paths for AGVS. International Journal of Production Research. Vol. 30, No. 3, pp. 665–681, 1992. [182] Tardós, J.D., Neira, J., Newman, P., Leonard, J., Robust Mapping and Localization in Indoor Environments using Sonar Data. International Journal of Robotics Research, Vol. 21, No. 4, pp 311 –330, 2002. [183] Teller, S., Walter, M., Antone, M., Correa, A., Davis, R., Fletcher, L., et al, A Voice-Commandable Robotic Forklift Working Alongside Humans in Minimally-Prepared Outdoor Environments, Proceedings of the IEEE Conference on Robotics and Automation (ICRA), Anchorage, 2009. [184] Thrun, S., Robotic mapping: A survey. In G. Lakemeyer and B. Nebel, editors, Exploring Artificial Intelligence in the New Millenium, Morgan Kaufmann, 2002. [185] Thrun, S., Burgard, W., Fox, D., Probabilistic Robotics, MIT Press, Cambridge, Massachusetts, 2005. [186] Thrun, S., Montemerlo, M., The FastSLAM Algortihm for Simultaneous Localization and Mapping. Springer Tracts in Advanced Robotics, 2006. [187] Thrun, S., Montemerlo, M., The GraphSLAM algorithm with applications to large-scale mapping of urban structures. International Journal of Robotics Research. Vol. 25, No. 5/6, pp. 403-430, 2005. [188] Thrun, S., Learning occupancy grids with forward sensor models, Autonomous Robots, vol. 15, pp. 111–127, 2003. [189] Thrun, S., Y. Liu, D. Koller, A.Y. Ng, Z. Ghahramani, H. DurrantWhyte, Simultaneous localization and mapping with sparse extended information filters, International Journal of Robotics Research, vol.23, pp. 693–716, 2004 [190] Todorovic, B., Stankovic, M.S., Moraga, C., Extended Kalman Filter Trained Recurrent Radial Basis Function Network in Nonlinear System Identification. In ICANN(2002), pp. 819-824, 2002. - 284 - [191] Vis, I. F. A., Survey of research in the design and control of automated guided vehicle systems. European Journal of Operational Research, Vol.170, No.3, pp. 677–709, 2006. [192] Vuković, N., Miljković, Z., New hybrid control architecture for intelligent mobile robot navigation in a manufacturing environment. FME Transactions, Vol. 37, No. 1, pp. 9-18, 2009. [193] Vuković, N., Miljković, Z., Babić, B., Čović, N., Towards implementation of intelligent mobile robots in a manufacturing environment, Proceedings of the 4th International Conference on Manufacturing Engineering (ICMEN 2011), Thessaloniki, October 2011, Greece, pp 367- 376, 2011. [194] Vuković,N., Koruga,Đ., Lazarević,M., Miljković,Z., Trajectory Generation for Bipedal Walking, Proceedings of the First Serbian (26th YU) Congress on Theoretical and Applied Mechanics, pp. 939-948, Kopaonik, Serbia, 10-13 April, 2007. [195] Vuković,N., Miljković, Z., Mitić, M., Babić, B., Petrović, M., Hibridni upravljački algoritam za upravljanje i estimaciju položaja inteligentnog mobilnog robota baziranog na kalibrisanoj kameri (nova metoda razvijana u projektu TR-35004 MPiN Vlade Republike Srbije). [196] Vuković,N., Miljković,Z., Babić,B., Bojović,B., Training of Radial Basis Function Networks with H∞ Filter-Initial Simulation Results,Proceedings of the 6th International Working Conference ”Total Quality Management – Advanced and Intelligent Approaches”, pp. 163-168,Belgrade, Serbia, 2011. [197] Vuković,N., Miljković,Z., Babić,B., Čović,N., Industrijski mobilni roboti u inteligentnim tehnološkim sistemima, Časopis TEHNIKA-Mašinstvo (ISSN 0040-2176), LXIII, Vol. 57 br.4, str. 11-18, 2008. [198] Vuković,N., Miljković,Z., Extended Kalman Filter in Autonomous Mobile Robot Localization and Mapping, Scientific paper printed in Bulletin of the Transilvania University of Brasov (Paper presented at the - 285 - 4th International Conference on Robotics – ROBOTICS ’08, 13-14 November, 2008), Vol. 15 (50) – Series A (ISSN 1223-9631), Published by Transilvania University Press – Special Issue No.1 Vol. II (ISBN 978-973- 598-387-1), pp. 435-444, Brasov, Romania, November 2008. [199] Vuković,N., Miljković,Z., Lazarević,M., Simulacija hoda insekt robota po ravnom terenu, 33. JUPITER Konferencija, Zbornik radova - CD, str. 3.55- 3.64, Zlatibor, 2007. [200] Vuković,N., Miljković,Z., Simulation of the Insect Robot Walking Over Level Terrain, Proceedings of the 11th International Research/Expert Conference ”Trends in the Development of Machinery and Associated Technology” TMT 2007, pp.603-606, Hammamet, Tunisia, 2007 [201] Walter, M. R., Eustice, R. M.; Leonard, J. J., Exactly Sparse Extended Information Filters for Feature-Based SLAM. International Journal of Robotics Research, Vol. 26, No. 4, pp. 335-359, 2007. [202] Wan, E., van der Merwe, R., The unscented Kalman Filter, in Kalman Filtering and Neural Networks (Haykin S. Ed.), John Wiley & Sons, 2001. [203] Wang, Y., Lang, H., de Silva, C.W., A hybrid visual servo controller for robust grasping by wheeled mobile robots. IEEE-ASME Transactions on Mechatronics. Vol. 15, No. 5, pp. 757-769, 2010. [204] Wang, Z., Lauria, S., Liu, X. Mobile robot localization using robust extended H∞ filtering. Proc. IMechE, Part I: J. Systems and Control Engineering, Vol. 223, No. 8, pp. 1067-1080, 2009. [205] Wang, Z.D., Nakano, E., Takahashi, T., Solving function distribution and behavior design problem for cooperative object handling by multiple mobile robots. IEEE Transactions on Systems, Man and Cybernetics, Part A: Systems and Humans. Vol. 33, No.5, pp. 537 – 549, 2003. [206] Williams, B., Klein, G., Reid, I. Automatic Relocalisation and Loop Closing for Real-Time Monocular SLAM. IEEE Transactions on Pattern Analysis and Machine Intelligence 2011 (accepted paper DOI: 10.1109/TPAMI.2011.41), 33, pp. 2158-2167, 2011. - 286 - [207] www.mathworks.com [208] Yahyaei, M., Jam, J.E., Hosnavi, R., Controlling the navigation of automatic guided vehicle (AGV) using integrated fuzzy logic controller with programmable logic controller (IFLPLC)—stage 1. International Journal of Advanced Manufacturing Technology, Vol. 47, No. 5-8, pp. 795–807, 2010. [209] Yu, B., He, X., Training Radial Basis Function Networks with Differential Evolution. In Proceedings of IEEE International Conference on Granular Computing, Atlanta, GA, USA, pp. 369–372, 2006. [210] Yu, W. Egbelu, P.J., Design of a variable path tandem layout for automated guided vehicle systems. Journal of Manufacturing Systems. Vol. 20, No.5, pp. 305–319, 2001. [211] Zhang R., Huang G.B., Sundararajan N., Saratchandran P., Improved GAP-RBF network for classification problems, Neurocomputing, Vol. 70, No. 16-18, pp. 3011-3018, 2007. Б и о г р а ф и ј а Име и презиме: Најдан Вуковић Датум рођења: 23. новембар 1980. Место рођења: Београд, Србија Породично стање: неoжењен Школовање: 1987.-1995. Основна школа „Лазар Саватић” у Земуну 1995.-1999. XIII београдска гимназија 1999.-2005. Студије на Машинском факултету у Београду 2005.- Докторске студије на Машинском факултету у Београду Кретање у послу: 2.2.2008.-16.12.2010. стручни сарадник, Иновациони центар Машинског факултета у Београду 16.12.2010.- истраживач сарадник, Иновациони центар Машинског факултета у Београду Научна активност: Објавио 16 научних радова (једно поглавље М14 у монографији међународног значаја категорије М12, један рад у истакнутом међународном часопису класе М22, један рад у међународном часопису класе М23, два рада у часописима националног значаја, шест радова на скуповима међународног значаја и пет радова на скуповима националног значаја). Учествовао у пројектним активностима два пројекта Министарства за просвету и науку Владе Републике Србије, два пројекта Министарства за Национални инвестициони план и једном пројекту у сарадњи са привредном. Аутор и коаутор седам техничких решења. Наставна активност: Учествује у наставном процесу (аудиторне вежбе, лабораторијске вежбе, преглед пројектних задатака) Катедре за производно машинство Машинског факлтета у Београду на Основним академским студијама (Компјутерска симулација и вештачка интелигенција), Мастер академским студијама (Интелигентни технолошки системи, Методе одлучивања, Аксиоматске методе) и једном предмету на Докторским студијама на енглеском језику (Introduction to Machine Learning and Artificial Intelligence).