Магістр ДонНТУ Бровкіна Даниелла Юріївна

Даніелла Бровкіна

Факультет комп'ютерних наук та технологій

Кафедра компьютерної інженерії

Спеціальність "Системне програмування"

Синтез керованого мобільного робота з елементами штучного інтелекту

Науковий керівник:
к.т.н., доц. Приходько Тетяна Олександрівна

Ви що, з глузду з'їхали? Увімкнить JavaScript!

Реферат з теми випускної роботи

Зміст

  1. Вступ
  2. Мета та завдання
  3. Актуальність роботи
  4. Можлива наукова новизна
  5. Огляд досліджень і розробок за темою
  6. Проведені дослідження та заплановані практичні результати
  7. Висновки
  8. Список використаної літератури

Вступ



Історія робототехніки сягає корінням у глибоку давнину, коли вперше виникли ідеї створення пристроїв для виконання важкої механічної роботи, яку зазвичай виконувала людина. Подібні пристрої і механізми згадувалися як в роботах Гомера і Аристотеля, так і в творах Гете. Однак все це були лише ідеї, іноді навіть просто вигадки, які було неможливо реалізувати. Тому свій інтенсивний розвиток робототехніка почала лише в ХХ столітті, коли для багатьох ідей з'явилася можливість апаратної реалізації [6].

У наш час можна знайти таке визначення поняття робототехніка: Робототехніка (від робот і техніка; англ. Robotics) - це прикладна наука, що займається розробкою автоматизованих технічних систем і є найважливішою технічною основою інтенсифікації виробництва, робототехніка спирається на такі дисципліни, як електроніка, механіка, інформатика [15]. Подібні системи і прийнято називати роботами.

Робот - це автомат для здійснення механічних дій, подібних тим, які робить людина, яка виконує фізичну роботу [18]. Незмінним зразком для розробки роботів з самого початку розвитку робототехніки і по сьогоднішній день є людина. При створенні роботів найчастіше основним завданням є заміна розроблюваним механізмом людини, чим не тільки можна полегшити завдання людям, а й домогтися максимальної якості результату роботи, виключивши людський фактор [1]. Зовнішній вигляд і конструкція сучасних роботів можуть бути досить різноманітними.

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

Робот повинен не тільки "відчувати" своє оточення, а й обробляти інформацію про нього і змінювати свою поведінку на основі сприйняття. Саме тому роботи повинні бути забезпечені певними датчиками "відчуттів".

При створенні робота представляє інтерес аналіз сенсорних систем людини як еталонів [19]. Людині навіть за найскромнішими оцінками не менше 80% інформації надходить тільки через органи зору і близько 15% припадає на слух. Таким чином, можна зробити висновок, що аналіз звукової та візуальної інформації повинен бути ключовою складовою в системі взаємодії робота з навколишнім середовищем.


Мета та завдання



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

Для досягнення поставлених цілей необхідно вирішити ряд завдань:

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

Актуальність роботи



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


Можлива наукова новизна



Можлива наукова новизна даної роботи полягає в розробці алгоритму автономного функціонування на основі нейронних мереж і системи зв'язку з користувачем мобільного робота на базі плат Arduino і Raspberry Pi. При розробці системи функціонування робота з зовнішнім середовищем передбачається застосовувати методи комп'ютерного зору.


Огляд досліджень і розробок за темою




Популярна історія робототехніки веде свою розповідь від міфу про залізних слугах Гефеста, "Франкенштейна" Мері Келлі, через дивовижні годинникові механізми у вигляді співаючих бронзових фазанів і цілих рухомих міст до роботів на Марсі і гуманоїдного робота Asimo корпорації Honda. Тобто показує розвиток мрії про роботів [17]

В Україні розробками в сфері штучного інтелекту почали займатися ще з середини 60-х років ХХ століття. Тоді ж були створені перші програми та пристрої, які розпізнавали кілька десятків окремо вимовлених слів. Згодом сформувалися окремі школи, які займалися теоретичним вивченням і впровадженням розробок в дію: інститут кібернетики (під керівництвом Т.К. Вінцюка), Львівський університет (П. Деркача), Харківський національний інститут радіоелектроніки (М.Ф. Бондаренко), Дніпропетровський університет (О.М. Карпова), Одеський університет (Т.А. Бровченко і Є.О. Нушикян).

Провідними галузями в Україні, які вимагають постійної модернізації обладнання, є важка промисловість і машинобудування. Стрімкого розвитку досягла заміна статичних роботів на мобільні. Специфіка розробок у даній області залежить від поділу роботів на три базових типи: маніпулятори, мобільні роботи та гібридні (об'єднує рухливу платформу з маніпулятором). Гібридні роботи поки що здатні переміщатися в приміщеннях по горизонтальній поверхні, автономно виконуючи завдання, поставлені користувачем. Підтримка людино-машинної взаємодії здійснюється в напрямку спеціаліст - інтелектуальний робот-маніпулятор [16]. Тому зараз робототехніка в Україні має в першу чергу промислове значення і всі розробки спрямовані в основному саме в цю галузь, хоча розвиваються й інші напрямки. Наприклад, актуальним напрямком розвитку робототехніки в Україні є застосування штучного інтелекту в медицині, що пов'язано, насамперед, з діагностикою хвороб, призначенням лікування, проведенням операцій інтелектуальними машинами, як з системою управління, так і автоматизованими.

Ідеї штучного інтелекту стрімко поширюються по світу, захоплюючи увагу тисяч людей. У різних куточках світу "живуть" роботи-хірурги (Росія), роботи-офіціанти, вчителі та швейцари (Японія). Серед безлічі цікавих роботів - безпілотний автомобіль Stenly (Стенфордський університет, США), який самостійно проїхав більше, ніж 210 км по пустелі Мохаве, ставши переможцем конкурсу "Міцний горішок". Компанія iRobot випускає роботів-міношукачів Packbot EOD і роботи-пилососи Roomba [16]. У США один тільки Массачусетський технологічний інститут і його відома лабораторія Лінкольна (лабораторія інформатики і штучного інтелекту) щорічно вносить величезний внесок у розвиток штучного інтелекту і робототехніки.

Серед інтелектуальних мобільних роботів потрібно згадати такі проекти, як iCub (рис.1) [24], E-puck (рис. 2) [25] та Spykee (рис. 3) [26].

iCub - гуманоїдний робот, що розробляється консорціумом The RobotCub Project. В якості основних наукових цілей були обрані дослідження когнітивної маніпуляції (жестикуляція, імітація рухів, взаємодія за допомогою системи жестів), сприйняття навколишнього середовища, пересування, асоціативне сприйняття людської мови. В якості головної інженерної мети було висунуто створення гуманоїдної платформи, загальновживаної для всього наукового співтовариства.

Робот iCub

Рисунок 1 – Робот iCub

E-puck - це невеликий мобільний робот з відкритим апаратним забезпеченням, розроблений для мікро-інженерних досліджень Майклом Бонамі і Франческо Мондада в лабораторії ASL професора Роланда Сігварта у Федеральній політехнічній школі Лозанни (Швейцарія).

Робот E-puck

Рисунок 2 – Робот E-puck

Spykee, мобільний робот компанії Meccano, представляє собою Wifi-робот, який може керуватися віддалено по мережі Internet, має безліч функцій, в тому числі фото-і відеозйомку, mp3-плеєр і ін.

Робот Spykee

Рисунок 3 – Робот Spykee

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

Алгоритми, призначені для обходу роботом перешкод у тривимірному просторі, можна розділити на кілька класів: гіпотеза-тест; штрафна функція; метод скелетування; нечітка логіка [14], нейронні мережі, генетичні алгоритми.

Метод гіпотези і тесту, складається з трьох основних кроків: 1) пропонується гіпотеза щодо шляху-кандидата між початковою і кінцевою конфігураціями мобільного робота при русі; 2) набір конфігурацій уздовж цього шляху тестується на можливість зіткнень; 3) якщо зіткнення виявляється можливим, з метою визначення шляху обходу досліджується перешкода, яка може викликати це зіткнення. Весь процес повторюється.

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

Алгоритми скелетування зводять вільний простір робота до одновимірного уявлення, для якого завдання планування шляху стає простішим. Таке уявлення з меншою кількістю вимірів називається скелетом простору конфігурацій.

Нечіткий алгоритм визначається впорядкованою кількістю нечітких інструкцій (нечітких висловлювань), що містять поняття, які формалізуються нечіткими множинами.

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

Розглянемо випадок керування мобільним роботом, завданням якого є об'їзд перешкод. Введемо дві лінгвістичні змінні: ДИСТАНЦІЯ (відстань від робота до перешкоди) і НАПРЯМОК (кут між поздовжньою віссю робота і напрямком до перешкоди).

Розглянемо лінгвістичну змінну ДИСТАНЦІЯ. Її значення можна визначити термами ДАЛЕКО, СЕРЕДНЬО, БЛИЗЬКО і ДУЖЕ БЛИЗЬКО. Для фізичної реалізації лінгвістичної змінної необхідно визначити точні фізичні значення термів цієї змінної. Нехай змінна ДИСТАНЦІЯ може приймати будь-які значення з діапазону від нуля до нескінченності. Відповідно до теорії нечітких множин, в такому випадку кожному значенню відстані з зазначеного діапазону може бути поставлено у відповідність деяке число від нуля до одиниці, що визначає ступінь приналежність даної фізичної відстані (припустимо 40 см) до того чи іншого терма лінгвістичної змінної ДИСТАНЦІЯ. Ступінь приналежності визначаємо функцією приналежності М (d), де d - відстань до перешкоди. У нашому випадку відстань 40 см. Можна задати ступінь приналежності до терма ДУЖЕ БЛИЗЬКО рівне 0,7, а до терма БЛИЗЬКО - 0,3. Конкретне визначення ступеня приналежності проходить тільки при роботі з експертами.

Змінній напрямків, яка приймає значення в діапазоні від 0 до 360 градусів, задамо терми ЛІВИЙ, ПРЯМИЙ і ПРАВИЙ.

Тепер необхідно задати вихідні змінні. У даному прикладі достатньо однієї, яку назвемо РУЛЬОВИЙ КУТ. Вона може містити терми: РІЗКО ЛІВОРУЧ, ЛІВОРУЧ, ПРЯМО, ПРАВОРУЧ, РІЗКО ПРАВОРУЧ. Зв'язок між входом і виходом зберігається в таблиці нечітких правил.

Таблиця 1. – Таблиця нечітких правил

Напрямок\Дистанція дуже близько близько середнє далеко
ліво резко праворуч резко праворуч праворуч прямо
прямо резко ліворуч ліворуч ліворуч прямо
право резко ліворуч резко ліворуч ліворуч прямо

Кожен запис в цій таблиці відповідає своєму нечіткому правилу, наприклад "Якщо дистанція близько і напрямок правий, тоді рульовий кут різко вліво".

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

Основна ідея човникового алгоритму обходу наступна: робот намагається обійти фігуру, здійснюючи горизонтальні човникові рухи від кордону до кордону. Робот, зустрівши перешкоду, змінює рядок або переходить вгору або вниз залежно від стану реєстрової пам'яті. У процесі такого обходу фігура може бути обдійдена не в повному обсязі, якщо на шляху робота зустрілася інша фігура. І ця фігура буде перешкоджати горизонтально-човниковому руху. Робот "перемкне свою увагу" на перешкоду, вже намагаючись його обійти, дотримуючись тієї ж стратегії обходу. За допомогою встановлення прапорів робот контролює, чи була обійдена фігура повністю чи ні. Також робот використовує прапор при поверненні до обійденої в повному обсязі фігури [21].

Для реалізації алгоритму за допомогою нейронних мереж використовується нейронна мережа з двох шарів: 6 нейронів першого шару - по одному на область і 3 вихідних нейрона - по одному на вибір руху. Схематичне представлення цієї мережі відображено на рисунку 4.

Схематичне відображення нейронної мережі

Рисунок 4 – Схематичне відображення нейронної мережі

Головна особливість нейронної мережі - це її здатність до навчання. У нашому випадку, навчання спрямоване на те, щоб робот не врізався в перешкоди. Якщо зіткнення сталося, це означає, що розподіл ваг мережі неправильно, значення ваг перераховуються. Для навчання системи керування робота використовується навчання без вчителя, засноване на методі Хебба, яке здійснюється на основі наступної формули:

де yi (n-1) - вихідне значення нейрона i шару (n-1), yj (n) - вихідне значення нейрона j шару n; wij (t) і wij (t-1) - ваговий коефіцієнт синапсу, що з'єднує ці нейрони , на ітераціях t і t 1 відповідно; a - коефіцієнт швидкості навчання ([0; 0.3]). Тут і далі, для спільності, під n мається на увазі довільний шар мережі. При навчанні згідно з даним методом посилюються зв'язки між збудженими нейронами. НС робота запам'ятовує останній образ. Це необхідно в тому випадку, коли робот правильно реагує на перешкоду (не врізатися) і від'їжджає від перешкоди, якщо після цього спробувати навчити мережу, то нічого не вийде, тому що відгуки нейронів будуть нульові, оскільки і на вхідних нейронах будуть нульові сигнали [22].

Дуже цікавим алгоритмом здійснення руху мобільного робота є алгоритм, заснований на поведінці мексиканських стрибаючих бобів. Цей алгоритм був розроблений дослідниками з Технологічного інституту Джорджії (США). Унікальність так званих стрибаючих бобів в тому, що у них майже немає обчислювальних потужностей або сенсорів. Усередині бобу мексиканського чагарнику невелика моль заселяє личинку, яка підвішує себе на мережі шовкових ниток до внутрішньої оболонки бобу. Якщо Сонце нагріває боб, личинка може стати збезводненою і загинути. Тому при нагріванні боби "стрибають" або "котяться", фактично стаючи транспортними засобами личинок. У першому випадку личинка утримується на внутрішній поверхні одним кінцем свого тіла і вдаряє по цій же поверхні іншим кінцем. Щоб котитися, вона надходить як хом'як в колесі, тільки не у спортивних, а в транспортних цілях: швидко перебирає ложноножкамі, стоячи на місці всередині бобу, і змушує округлу оболонку перекочуватися. Чим вище температура, тим вище стрибучість, що дозволяє рухатися швидше перекочування: при 45 градусах боб підстрибує 40 разів на хвилину, перекочуючись (завдяки округлій формі) після стрибка. Алгоритм грунтується на наступному: щоб вибрати найхолодніше місце, робиться стрибок № 1. Якщо температура знизилася, починаються стрибки на меншу дистанцію або перекочування. Якщо навпаки - знову слід зробити стрибок на велику дистанцію. Якщо після стрибка № 2 температура виявиться вище, ніж після стрибка № 1, починається рух назад, але не стрибком, а перекочуванням, з меншою швидкістю і т.д. [23].


Проведені дослідження та заплановані практичні результати





Для початкового тестування апаратної платформи був розроблений простий алгоритм обходу перешкод з урахуванням апаратних особливостей. Апарат, для якого розробляється алгоритм у цій роботі, являє собою платформу на 4 колесах, оснащену п'ятьма ультразвуковими датчиками для вимірювання відстані, платами Arduino і Raspberry Pi.

В данный момент существует огромное количество литературы, посвященной проектированию и созданию своего недорогого мобильного робота [11], в том числе и на основе Arduino и Raspberry Pi, которые как недорогие платформы наиболее часто используют в подобных целях.

Платформа, на якій і будуть проводитися всі подальші дослідження та експерименти, включає в себе апаратну обчислювальну платформу Arduino [2]. Ця платформа являє собою плату, що складається з мікроконтролера Atmel AVR (ATmega328 та ATmega168 в нових версіях і ATmega8 в старих), а також включає безліч роз'ємів для інтеграції з іншими схемами. Існує безліч її модифікацій. У даній роботі використовується плата Arduino Mega 2560 (рис. 5).

Аппаратна платформа Arduino Mega 2560

Рисунок 5 - Аппаратна платформа Arduino Mega 2560

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

Через відносно слабкі функціональні можливості Arduino для керування всією конструкцією та віддаленого керування було вирішено в якості плати керування використовувати одноплатний комп'ютер Raspberry Pi (рис. 6) [20].

Плата Raspberry Pi

Рисунок 6 - Плата Raspberry Pi

Сама конструкція, на яку кріпляться плати та двигуни являє собою невеликий металевий блок з чотирма колесами (рис. 7).

Конструкція платформи

Рисунок 7 - Конструкція платформи

З різноманітних сенсорів, які можна підключити до Arduino, в даній розробці використовується тільки ультразвукової далекомір HC-SR04 (рис. 8), за допомогою якого можна отримувати інформацію про відстань до найближчих перешкод на шляху робота [7]. Іншу візуальну інформацію робот буде отримувати за допомогою камери, підключеної до Raspberry Pi.

Ультразвуковий далекомір

Рисунок 8 - Ультразвуковий далекомір

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

Також платформа оснащена wifi-адаптером і пристроєм для розпізнавання мови, що зберігає і розпізнає до 16 голосових команд. Саме за допомогою цих пристроїв і реалізується просте керування платформою. Всі основні способи отримання інформації із зовнішнього середовища проілюстровані на рисунку 9.

Сенсори та аппаратні засоби для зв'язку з користувачем апаратної платформи

Рисунок 9 - Сенсори та аппаратні засоби для зв'язку з користувачем апаратної платформи
(анімація: 12 кадрів; 5 циклів; 78Кб)

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

Даний алгоритм виконує обробку голосової команди "вперед", за якою робот повинен рухатися вперед і при досягненні перешкоди намагатися її обійти і при можливості відновити первинний напрям руху. Блок-схема алгоритму наведена на рисунку 10.

Блок-схема алгоритму

Рисунок 10 – Блок-схема алгоритму

Як вже говорилося вище, вершини "рух вперед", "поворот ліворуч" і "поворот праворуч" означають запуск двигунів на одну секунду. У блок-схемі прийняті такі скорочення: Д0, Д45л, Д45п, Д90л, Д90п - свідчення з відповідних датчиків, БР, БР45 - безпечні відстані з відповідних боків), Cnt - лічильник для повернення до початкового напрямку, він нарощується при повороті праворуч і зменшується при повороті ліворуч, при цьому після кожного руху перевіряється можливість відновлення первісного напрямку перевіркою цього лічильника на 0. Після кожного руху алгоритм намагається наблизити значення лічильника до 0, тобто відновити первісний напрямок. Основними критеріями для обходу перешкод є показники з датчиків під кутами 0, +45 і -45 градусів. Якщо показання головного "нульового" датчика наблизилося до значення його безпечної відстані, то обов'язково потрібно реалізувати поворот. Для цього перевіряються значення "45-градусних" датчиків. Якщо їх значення приблизно рівні (що, наприклад, може відбутися при наближенні до стіни під кутом 90 градусів), то напрямок повороту обирається відповідно з показниками датчиків, розташованих під кутами 90 градусів: де показник більше, тобто більше простору, туди і здійснюється поворот. Якщо ж значення "45-градусних" датчиків відрізняються більше, ніж на 5 см, то здійснюється поворот у бік більшого значення.

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

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

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


Висновки



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


Список використаної літератури



  1. Юревич Е.И. "Основы робототехники". - 2-е изд., перераб. и доп. - Спб.: БХВ-Петербург, 2005. - 416 с.: ил.
  2. Аппаратная платформа Arduino. Электронний ресурс. Режим доступу: http://arduino.ru
  3. Конструирование роботов: Пер. с франц./ Андре П., Кофман Ж.-М., Лот Ф., Тайар Ж.-П – М.: Мир, 1986. – 360 с., ил.
  4. Michael McRoberts "Beginning Arduino". – 2010. – 459 с., ил.
  5. Motor Shield - Arduino motor. Электронний ресурс. Режим доступу: http://www.ladyada.net/make/mshield/index.html
  6. Юревич Е.И. "Управление роботами и роботехническими системами". - 2-е изд., перераб. и доп. - Спб.: БХВ-Петербург, 2005. - 416 с.: ил.
  7. Куафе Ф. "Взаимодействие робота с внешней средой: Пер. с франц". – М.: Мир, 1985. – 285с.
  8. Шахинпур М. "Курс робототехники: Пер. с англ." - М.: Мир, 1990. – 527с.
  9. Хорн Б.К.П. "Зрение роботов: Пер. с англ." - М.: Мир, 1989. – 487с.
  10. Майк Предко "Устройства управления роботами: схемотехника и программирование".– М.: ДМК-Пресс, 2004. – 403с.
  11. Бишоп О. "Настольная книга разработчика роботов. – К.: "МК-Пресс", СПб.: "КОРОНА-ВЕК", 2010. – 400с.
  12. Хайкин С. Нейронные сети: полный курс, 2-е изд., испр. : Пер. с англ. – М.: ООО "И.Д.Вильямс", 2006. – 1104 с.: ил.
  13. Головко В.А. Нейронные сети: обучение, организация и применение. Кн.4: Учеб. пособие для вузов // Общая ред. А.И.Галушкина. – М.: ИПРЖР, 2001. – 256с.: ил.
  14. Круглов В.В., Борисов В.В. Искусственные нейронные сети. Теория и практика. 2-е изд. – М.: Горячая линия – Телеком, 2002. – 382 с.: ил.
  15. Стаття Вікіпедії "Робототехника". Электронний ресурс. Режим доступу: http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B1%D0%BE%D1%82%D0%BE%D1%82%D0%B5%D1%85%D0%BD%D0%B8%D0%BA%D0%B0
  16. Соснина А., стаття "Сучасний стан та перспективи розвитку робототехніки в Україні", 2013.
  17. Баженов С., стаття "Прошлое и будущее робототехники", 2012. Электронний ресурс. Режим доступу: http://www.cleverence.ru/site.aspx?page=Robotics#_Toc177756979
  18. Стаття Вікіпедії "Робот". Электронний ресурс. Режим доступу: http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B1%D0%BE%D1%82
  19. Янг Дж.Ф. "Робототехника: Пер.с англ." - Л.: Машиностроение. Ленингр.отд-ние, 1979. – 300с.
  20. Raspberry Pi. Электронний ресурс. Режим доступу: http://www.raspberrypi.org/
  21. Килибарда Г., Кудрявцев В.Б., Ушчюмлич Ш. Независимые системы автоматов в лабиринте // Дискретная математика Т. 15. ? В. 3 ? 2003.
  22. Нейронная сеть для обхода препятствий. Электронний ресурс. Режим доступу: http://stswoon.blogspot.com/2010/05/blog-post.html
  23. Передвижение мексиканских прыгающих бобов. Электронний ресурс. Режим доступу: http://www-old.me.gatech.edu/hu/Publications/Hu12-beans.pdf
  24. Робот iCube. Электронний ресурс. Режим доступу: http://www.icub.org/
  25. Робот E-puck. Электронний ресурс. Режим доступу: http://www.e-puck.org/
  26. Робот SpyKee. Электронний ресурс. Режим доступу: http://www.spykeeworld.com/