Технические науки / 11. Робототехника

 

Палий Б.Н.

Национальный технический университет Украины «Киевский политехнический институт имени Игоря Сикорского»

Алгоритми пошуку шляху та нейронні мережі в робототехніці

 

Одним з найважливіших і найбільш значущих напрямів науково-технічного прогресу є робототехніка. В ній стикаються проблеми механіки, управління та штучного інтелекту. Так як це інтегральна дисципліна, то розробникам необхідні уміння та знання з таких галузей: електроніка, механіка, програмування, менеджмент проектів. Отже, робототехніку необхідно мати системне мислення та широкий кругозір.

З літератури [1] відомо, що робот – пристрій, який керується комп’ютером або електронною платою і який можна програмувати на виконання певних дій.

Як правило, сучасні роботи – це закріплені на певній платформі або поверхні маніпулятори («руки»), які виконують певну одноманітну роботу, наприклад, переміщення. Також роботами є пристрої для роботи в умовах, які є складними або небезпечним для людського організму, якими керують на відстані, наприклад, роботи, які працюють у космосі, в глибоководному середовищі, або призначені для розмінування, постачанння снарядами та інші.

Системи керування роботами базуються на тих же принципах та технічній базі, що й інші автоматизовані прилади. Алгоритми таких систем вивчаються в курсах теоретичної механіки, теорії автоматичного керування. Ці курси представляють собою базу, для поглибленого вивчення бажано опанування наближеної теорії гіроскопів, теорії навігаційних систем, аналогової і цифрової схемотехніки, електротехніки та інших курсів.

В нинішній час, коли значимою течією в розвитку людства є об’єднання, збіжність різних областей наук та технологій, цікаві відкриття відбуваються під час застосування вже здобутих людством знань з біології, медицини та моделі поведінки тварин.

Зазвичай методи управління роботами поділяють на інтелектуальне, адаптивне, програмне управління, напівавтоматичне та телеуправління – тобто за допомогою людини.

Робот здатен повністю слухатися команд людини, працювати за попередньо створеною програмою або працювати за певними загальними приписами за допомогою технологій штучного інтелекту. Дані пристрої можуть повністю замінити людину або хоча б допомогти їй в праці під час роботи з тяжкими речами, небезпечними речовинами під час будівництва, у виробництві та в інших складних та шкідливих обставинах для людського організму.

Зазвичай розрізняють три види робототехнічних приладів – збірні пристрої, маніпулятори та готові комерційні роботи.

В робототехніці важливою є  задача пошуку найкоротшого шляху від певної точки а до іншої точки z. Дані два завдання є узагальненнями задачі про найкоротший шлях. [2-4]

-         Для певної точки знайти найкоротші шляхи до решти точок

-         Знаходження найкоротших шляхів між всіма можливими парами точок

Практично усі способи розв’язання задачі найкоротшого шляху від точки а до точки z можуть знайти найкоротші шляхи також і до інших точок, тим самим вирішуючи перше завдання невеликою кількістю додаткових обчислень. Друге завдання можна виконати вирішивши перше завдання n разів або застосовуючи спеціально створений для цього алгоритм.

Один з ефективних алгоритмів, який знаходить довжину найкоротшого шляху від певної заданої точки до будь-якої іншої був запропонований Е. Дейкстрою в 1959 році. Даний алгоритм можна застосовувати лише якщо ваша кожної дуги (ребра) є додатньою.

Алгоритм Jump Point Search є поліпшеним алгоритмом пошуку шляху. Він прискорює пошук завдяки тому, що він «перестрибує» велику кількість місць, які треба переглянути. Також перевагою даного алгоритму є те, що нема необхідності в попередній обробці та у додаткових витратах пам'яті. Алгоритм Jump Point Search був запропонований в 2011 році і в 2012 році отримав гарні оцінки.[5]

Вивчення нейронних мереж заключається в тому, що методи обробки інформації в людському мозку радикально відрізняються від способів обробки інформації стандартними комп’ютерами. Мозок представляє собою нелінійну, паралельну, складну систему для обробки інформації (комп’ютер). Він може організовувати нейрони (структурні компоненти) таким чином, щоб вони мали здатність виконувати певні завдання значно швидше, ніж найсучасніші комп’ютери. До прикладів таких завдань належать рухові функції, обробка сигналів органів почуттів, розпізнавання зображень, звичайний зір.[6]

Також прикладом подібного завдання є сонар (локатор) кажана, який є системою активної ехолокації. Крім відстані до певного об’єкту, також можна отримати  інформацію про швидкість, розмір об’єкта, азимут і висоту його переміщення.[6] Для отримання даних знань зі звукового сигналу мозок кажана виконує складні нейронні обчислення. Ця система за своєю якістю, продуктивністю та характеристиками перевершує сучасні технічні засоби, створені людством.

З літератури [7] відомо, що нейронна мережа – це великий паралельний розподілений процесор, який є набором елементарних одиниць обробки інформації, які нагромаджують емпіричне знання і передають його для наступної обробки. Нейронні мережі подібні до мозку такими двома рисами:

-         Інформація поступає в нейронну мережу з оточуючого світу і застосовується в навчанні

-         Для акумулювання інформації використовується зв'язок між нейронами, який називають синоптичними вагами.

З літератури [8] відомо, що нейрон отримує сигнали, які мають вид електричних імпульсів, від великої кількості інших нейронів. Входи нейронів бувають двох типів: збуджуючі та гальмуючі. Сигнали, які приходять на збуджуючий вхід збільшують збудженість і при досягненні певного значення створюється імпульс на вихід. Сигнали, які приходять на гальмуючий вхід зменшують збудженість  нейрона. У кожного нейрона є свій внутрішній стан і поріг збудженості. У випадку, якщо в сумі сигнали на збуджуючих та гальмуючих входах більші за даний поріг формується сигнал на вихід, який переходить до входів на інші контактуючі нейрони і таким чином збудження розповсюджується далі по мережі нейронів. Зазвичай у нейрона може бути 103 контакта з іншими нейронами.

Варто вказати, що нейронні мережі здатні до навчання. Навчання для нейронної мережі – це повідомлення того, що від неї хочуть. Це подібно до вивчення дитиною алфавіту. Якщо дитині показують букву і отримують неправильну відповідь, то дитині кажуть і очікувану відповідь. Вона запам’ятовує це зображення і правильну відповідь, і у її пам’яті формуються певні видозміни в необхідному напрямку. [9]

Нейронну мережу можна подавати як граф. Вузли у даному графі являються нейронами, а ребра – це зв’язки між ними. У кожного зв’язка є так звана вага, яка є оцінкою відповідного збуджуючого або гальмуючого сигналу, який приходить до нейрона-приймача, коли нейрон-передавач збуджується.[10]

Литература:

1.       Прейко М., Устройства управления роботами: схемотехника и программирование – М.: Издательство ДМК, 2004, 202с.

2.       Гаврилов Г.П., Сапоженко А.А., Задачи и упражнения по курсу дискретной математики, – М.: Наука, 2007. – 408с.

3.       Гончарова Г.А., Мочалін А.А. Элементы дискретной математики: учеб. Пособие – М.: Форум: ИНФРА-М, 2007.

4.       Іванов Б.Н., Дискретная математика. Алгоритмы и программы. Расширенный курс – М: Известия, 2011. – 512 с.

5.       Алгоритм поиска пути Jump Point Search [Электронный ресурс]. – Режим доступа: http://habrahabr.ru/post/162915/

6.       Haykin S. «Neural networks expand SP's horizons», IEЕЕ Signal Processing Magazine, 1996B, vоl. 13, 622 р.

7.       Круглов В.В., Борисов В.В., Искусственные нейронные сети. Теория и практика – М.: Телеком – 2002. – 388 с.

8.       Осовський С., Нейронные сети для обработки информации – М.: Финансы и статистика, 2002. – 344 с.

9.       Поспелова Д.А., Штучний інтелект [У 3-х кн.]. – Кн. 2. Моделі и методи – М.: Радіо и св`язок, 1990. – 304 с.

10.   Спірін О.С., Початки штучного інтелекту: Навчальний посібник для студ. Фіз.-мат. спеціальностей вищих пед. навч. закладів – Житомир: – Видавництво ЖДУ, 2004, – 172 с.