План на курса

Седмица 01

Въведение

  • Какъв прави робота умна?

Физически vs виртуални роботи

  • Умни роботи, умни машини, чувстващи машини и автоматизация на роботски процеси (RPA), и др.

Ролята на изкуствен интелигент (AI) в роботиката

  • Отвъд "if-then-else" и машинното обучение
  • Алгоритмите зад AI
  • Машинно обучение, компютърно зрение, обработка на естествен език (NLP), и др.
  • Когнитивна роботика

Ролята на големите данни в роботиката

  • Вземане на решения на базата на данни и модели

Облака и роботиката

  • Възможност за свързване на роботиката с IT
  • Създаване на по-функционални роботи, които имат достъп до повече информация и могат да сътрудничат

Случайно изследване: Индустриални роботи

  • Механични роботи
    • Baxter
  • Роботи в ядрени съоръжения
    • Детекция и защита от радиация
  • Роботи в ядрени реактори
    • Детекция и защита от радиация

Хардуерни компоненти на робота

  • Мотори, сензори, микроконтролъри, камери, и др.

Общи елементи на роботите

  • Машинно зрение, разпознаване на глас, синтез на глас, сензиране на близост, сензиране на налягане, и др.

Разработване на платформи за програмиране на робот

  • Отворени и комерсиални платформи
  • Robot Operating System (ROS)
    • Архитектура: работно пространство, теми, съобщения, услуги, възли, actionlibs, инструменти, и др.

Езици за програмиране на робот

  • C++ за ниво контрол
  • Python за оркестрация
  • Програмиране на възли в ROS на Python и C++
  • Други езици

Инструменти за симулиране на физически робот

  • Комерсиални и отворени 3D симулации и визуализация на софтуер

Седмица 02

Подготовка на средата за разработване

  • Инсталиране и настройка на софтуер
  • Полезни пакети и утилити

Случайно изследване: Механични роботи

  • Роботи в ядрената технология
  • Роботи в екологичните системи

Програмиране на робота

  • Програмиране на възел в Python и C++
  • Разбиране на възел в ROS
  • Съобщения и теми в ROS
  • Парадигма за публикуване/подписване
  • Проект: Бум & Го с реален робот
  • Отстраняване на проблеми
  • Симулиране на роботи с Gazebo / ROS
  • Ръмове в ROS и промени на референции
  • 2D обработка на информация от камери с OpenCV
  • Обработка на информация от лазер
  • Проект: Безопасно следене на обекти по цвят
  • Отстраняване на проблеми

Седмица 03

Програмиране на робота (Продължение...)

  • Услуги в ROS
  • 3D обработка на информация от RGB-D сензори с PCL
  • Карти и навигация с ROS
  • Проект: Търсене на обекти в средата
  • Отстраняване на проблеми

Програмиране на робота (Продължение...)

  • ActionLib
  • Разпознаване на глас и генериране на глас
  • Контрол на роботски ръце с MoveIt!
  • Контрол на роботски шия за активно зрение
  • Проект: Търсене и събиране на обекти
  • Отстраняване на проблеми

Тестиране на вашия робот

  • Единично тестиране

Седмица 04

Увеличаване на възможностите на робота с дълбоко обучение

  • Перцепция – зрение, аудио и хаптика
  • Представяне на знание
  • Разпознаване на глас чрез NLP (обработка на естествен език)
  • Компютърно зрение

Бърз курс по дълбоко обучение

  • Искуствени невронни мрежи (ANNs)
  • Искуствени невронни мрежи vs. биологични невронни мрежи
  • Предишни невронни мрежи
  • Функции на активация
  • Обучение на искусствени невронни мрежи

Бърз курс по дълбоко обучение (Продължение...)

  • Модели на дълбоко обучение
    • Конволюционни мрежи и рекурентни мрежи
  • Конволюционни невронни мрежи (CNNs или ConvNets)
    • Конволюционен слой
    • Слой за групиране
    • Архитектура на конволюционни невронни мрежи

Седмица 05

Бърз курс по дълбоко обучение (Продължение...)

  • Рекурентни невронни мрежи (RNN)
    • Обучение на RNN
    • Стабилизиране на градиентите по време на обучение
    • Дълги къси паметни мрежи
  • Платформи и софтуерни библиотеки за дълбоко обучение
    • Дълбоко обучение в ROS

Използване на големи данни в робота

  • Концепции за големи данни
  • Подходи към анализ на данни
  • Инструменти за големи данни
  • Разпознаване на модели в данните
  • Упражнение: NLP и компютърно зрение на големи набори данни

Използване на големи данни в робота (Продължение...)

  • Разпределено обработване на големи набори данни
  • Съществуването и взаимовлият на големите данни и роботиката
  • Роботът като генератор на данни
    • Сензори за измерване на разстояние, позиция, визуални, тактилни сензори и други модалности
  • Разбиране на сензорни данни (цикъл на чувстване-планиране-действие)
  • Упражнение: Захвърляне на потокови данни

Програмиране на автономен робот с дълбоко обучение

  • Компоненти на робота с дълбоко обучение
  • Настройка на симулатора на робот
  • Запускане на CUDA-ускорена невронна мрежа с Cafe
  • Отстраняване на проблеми

Седмица 06

Програмиране на автономен робот с дълбоко обучение (Продължение...)

  • Разпознаване на обекти в фотографии или видеопотокове
  • Осигуряване на компютърно зрение с OpenCV
  • Отстраняване на проблеми

Анализ на данни

  • Използване на робота за събиране и организиране на нови данни
  • Инструменти и процеси за разбиране на данните

Разработване на робот

  • Преход от симулиран робот към физически хардуер
  • Разработване на робота в физическия свят
  • Мониторинг и обслужване на роботите в полето

Осигуряване на робота

  • Предотвращане на неавторизирано манипулиране
  • Предотвращане на хакери от прочитане и крадене на чувствителни данни

Създаване на робот съвместно

  • Създаване на робот в облака
  • Присъединяване към роботската общност

Бъдещо развитие на роботите в науката и енергийния сектор

Резюме и заключение

Изисквания

  • Опит в програмиране на C или C++
  • Опит в програмиране на Python (полезно, но не задължително; може да се преподава като част от курса)
  • Опит с командния ред на Linux

Целева аудитория

  • Разработчици
  • Инженери
  • Учени
  • Техници
 120 часа

Брой участници


Цена за участник

Отзиви от потребители (1)

Предстоящи Курсове

Свързани Kатегории