Изначально понятие “обучение” применительно к роботам вызывало удивление, поскольку их просто программировали выполнять определённый набор инструкций. Простейшие модели слепо следовали ему в любой ситуации, а более сложные умели выбирать, какую из подпрограмм выполнить в текущих условиях. Однако те и другие давали сбой в ситуациях, непредусмотренных алгоритмом.

Сейчас роботов всё чаще наделяют искусственным интеллектом и делают ставку на машинное обучение. За этим термином скрывается целый класс методов, позволяющих не просто научить машину выполнять определённые задания, а сделать её поведение адаптивным. В чём же отличия между ними?

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

Сегодня на производственных линиях работают десятки разных роботов, и если ошибку допустит один, то произойдёт каскадный эффект. Ошибаться начнут все роботы после засбоившего, поскольку их программы не способны перестроиться. Например, если деталь будет лежать под другим углом (или вовсе отсутствовать), то робот попытается её взять как обычно, но не сможет. Хуже того, робот может получить повреждения или спровоцировать их у других.

Поэтому современные конвейеры постепенно переоснащают, заменяя классических промышленных роботов адаптивными. Например, такими как Baxter, созданный в компании Rethink Robotics. Он не станет тыкать вслепую манипулятором. Вместо этого он самостоятельно определит, есть ли на ленте конвейера нужная деталь. Затем он оценит её расположение и выполнит точный захват, как бы она ни лежала. Если детали нет, то Baxter просто подождёт её появления.

Ещё интереснее выглядит система его обучения. Она относится к классу имитационных, то есть подразумевает привлечение учителя. Бакстеру просто показывают, что надо делать, и он быстро учится копировать движения, делая их всё более точными. Поэтому Baxter может заменить не только промышленного робота, но и рабочего у конвейера. За пару часов он освоит профессию сборщика, упаковщика или шлифовщика, доведя действия до совершенства уже к концу смены. С ним не страшно работать бок о бок, поскольку он определяет наличие людей поблизости и прекращает любые движения, способные привести к травме.

Другой подход демонстрирует система обучения с подкреплением (reinforcement learning). Она уже не требует учителя, а позволяет роботу самому найти оптимальное решение. Для этого он перебирает множество возможных вариантов, получая положительный стимул (подкрепление) каждый раз, когда оказывается ближе к цели. Такой метод использует компания Embodied Intelligence, созданная на базе Калифорнийского университета в Беркли. Её робот Brett сам пытается решить задачу разными способами, пока не найдёт лучший. Затем он запоминает эту последовательность действий и использует её в следующий раз, столкнувшись с подобной задачей.

Здесь важно то, как роботы реагируют на нестандартные ситуации:
– классический робот не справится при малейшем отклонении от шаблона;
– Baxter простит мелкие погрешности и быстро переучится по желанию наставника;
– Brett самостоятельно отшлифует свою программу, адаптировав её к новой ситуации, но потратит на это значительное время.

Есть разные способы ускорить машинное обучение, и в следующих статьях мы разберём их подробнее.

Автор: Андрей Васильков

Изображения взяты с: MIT, UC Berkeley.

Максим Костерин

Максим Костерин

Редактор и разработчик в THE-ROBOT.RU
Интересуюсь робототехникой, программированием и бизнесом. В нашей команде я технарь.
Максим Костерин

Latest posts by Максим Костерин (see all)

Поделись ссылкой
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •