В информатике , программированию пути демонстрации ( PBD ) является разработкой конечных пользователей техником для обучения компьютера или робота новых моделей поведения, демонстрируя задачу передать непосредственно вместо программирования через машинные команды.
Термины « программирование на примере» (PbE) и « программирование на демонстрации» (PbD) появились в исследованиях разработки программного обеспечения еще в середине 1980-х годов [1], чтобы определить способ определения последовательности операций без необходимости изучения языка программирования. Обычное различие в литературе между этими терминами состоит в том, что в PbE пользователь дает прототипный продукт выполнения компьютера, такой как строка в желаемых результатах запроса ; в то время как в PbD пользователь выполняет последовательность действий, которые компьютер должен повторить, обобщая ее для использования в различных наборах данных.
Сначала эти два термина были недифференцированными, но затем PbE, как правило, использовалась в основном исследователями разработки программного обеспечения, в то время как PbD, как правило, принималась исследователями робототехники. Сегодня PbE относится к совершенно другой концепции, поддерживаемой новыми языками программирования, похожими на симуляторы. Эту схему можно противопоставить байесовскому программному синтезу .
Программирование роботов путем демонстрации
Парадигма PbD в первую очередь привлекательна для индустрии робототехники из-за затрат, связанных с разработкой и обслуживанием программ роботов. В этой области оператор часто неявно знает задачу, которую необходимо решить (он / она знает, как это сделать), но обычно не имеет навыков программирования (или времени), необходимых для перенастройки робота. Таким образом, демонстрация того, как выполнить задачу на примерах, позволяет изучить навык без явного программирования каждой детали.
Первые стратегии PbD, предложенные в робототехнике, были основаны на методах обучения , наведения или воспроизведения, которые заключались в основном в перемещении робота (через специальный интерфейс или вручную) через набор соответствующих конфигураций, которые робот должен принимать последовательно (положение, ориентация, состояние захвата). Затем метод был постепенно усовершенствован за счет сосредоточения в основном на дистанционном управлении и использования различных интерфейсов, таких как зрение.
Однако в этих методах PbD по-прежнему использовалось прямое повторение, которое было полезно в промышленности только при проектировании сборочной линии с использованием точно таких же компонентов продукта. Чтобы применить эту концепцию к продуктам с различными вариантами или применить программы к новым роботам, проблема обобщения стала решающим моментом. Чтобы решить эту проблему, первые попытки обобщить навык были в основном основаны на помощи пользователя через запросы о намерениях пользователя. Затем были предложены различные уровни абстракций для решения проблемы обобщения, в основном дихотомические методы обучения на символическом уровне или на уровне траектории.
Разработка роботов-гуманоидов естественным образом вызвала растущий интерес к программированию роботов путем демонстрации. Поскольку человекоподобный робот по своей природе должен адаптироваться к новым условиям, важен не только внешний вид человека, но и алгоритмы, используемые для его управления, требуют гибкости и универсальности. Из-за постоянно меняющейся среды и огромного разнообразия задач, которые должен выполнять робот, роботу требуется способность постоянно осваивать новые навыки и адаптировать существующие навыки к новым условиям.
Исследования в области PbD также постепенно отошли от своей первоначальной чисто инженерной точки зрения, приняв междисциплинарный подход, используя идеи нейробиологии и социальных наук для имитации процесса подражания у людей и животных. С увеличением внимания к этой работе в робототехнике, понятие программирования роботов посредством демонстрации (также известное как RPD или RbD) также постепенно заменялось более биологическим ярлыком обучения посредством имитации .
Параметризованные навыки
После того, как задача была продемонстрирована человеком-оператором, траектория сохраняется в базе данных. Упрощение доступа к необработанным данным достигается с помощью параметризованных навыков. [2] Навык запрашивает базу данных и генерирует траекторию. Например, сначала в базу данных о перемещениях отправляется навык «opengripper (slow)», и в ответ предоставляется сохраненное перемещение манипулятора. Параметры навыка позволяют изменять политику для выполнения внешних ограничений .
Навык - это интерфейс между названиями задач, заданными на естественном языке, и лежащим в основе пространственно-временным движением в трехмерном пространстве, которое состоит из точек. Отдельные навыки можно объединить в задачу для определения более длительных последовательностей движений с точки зрения высокого уровня. Для практического применения различные действия хранятся в библиотеке навыков . Для дальнейшего повышения уровня абстракции навыки можно преобразовать в примитивы динамического движения (DMP). Они генерируют траекторию робота «на лету», которая была неизвестна во время демонстрации. Это помогает повысить гибкость решателя. [3]
Использование без использования роботов
Для конечных пользователей, которые могут автоматизировать рабочий процесс в сложном инструменте (например, Photoshop ), наиболее простым случаем PbD является средство записи макросов .
Смотрите также
Рекомендации
- ^ Halbert, Дэн (ноябрь 1984). «Программирование на примере» (PDF) . Калифорнийский университет в Беркли (кандидат наук) . Проверено 28 июля 2012 . Цитировать журнал требует
|journal=
( помощь ) - ^ Первез, Аффан и Ли, Dongheui (2018). «Изучение параметризованных примитивов динамического движения с использованием смеси GMM» (PDF) . Интеллектуальная сервисная робототехника . Springer. 11 (1): 61–78. DOI : 10.1007 / s11370-017-0235-8 .CS1 maint: несколько имен: список авторов ( ссылка )
- ^ Ализаде, Тохид и Садуанов, Батырхан (2017). Программирование роботов путем демонстрации нескольких задач в общей среде . Международная конференция IEEE 2017 года по слиянию и интеграции мультисенсоров для интеллектуальных систем (MFI). IEEE. С. 608–613. DOI : 10.1109 / mfi.2017.8170389 .CS1 maint: несколько имен: список авторов ( ссылка )
- Сайфер, Аллен (1993), « Смотрите, что я делаю: демонстрационное программирование» , Дэниел С. Халберт, MIT Press, ISBN 978-0-262-03213-1
- Либерман, Генри (2001), Ваше желание - моя команда: программирование на примере , Бен Шнейдерман, Морган Кауфманн, ISBN 978-1-55860-688-3
Внешние ссылки
Обзоры статей
- Биллард, Од (2008), С. Калинон, Р. Диллманн и С. Шаал, «Программирование роботов с помощью демонстрации» (PDF) , Справочник по робототехнике , MIT Press: 1371–1394, DOI : 10.1007 / 978-3-540- 30301-5_60 , ISBN 978-3-540-23957-4.
- Schaal, S (2004), Ijspeert, A; Биллард, А; Фрит, CD, Wolpert, Д. (ред . ), "Вычислительные подходы к электродвигателю обучению путем имитации" (PDF) , нейробиологии социального взаимодействия , Oxford University Press, 358 (1431): 199-218, DOI : 10,1098 / rstb .2002.1258 , PMC 1693137 , PMID 12689379 .
- Роботы, имитирующие людей , Синтия Бризил и Брайан Скасселлати, Trends in Cognitive Sciences, 6: 1, 2002, стр. 481–87
- Billard, A, «Imitation», в Арбибе, Массачусетс (ред.), Справочник по теории мозга и нейронных сетей , MIT Press, стр. 566–69..
- Schaal, S (1999), "Имитация изучает путь к роботам-гуманоидам?", Trends in Cognitive Sciences (PDF).
Спецвыпуски в журналах
- IEEE Transactions по системам, человеку и кибернетике , апрель 2007 г., 37: 2.
- RSJ Advanced Robotics , 21, номер 13.
- Нейронные сети , Elsevier.
- Робототехника и автономные системы (PDF) , Elsevier, 2006 г..
Ключевые лаборатории и люди
- Методы машинного обучения для программирования роботов, Demonstration , Lausanne, VD, CH: EPFL LASA, заархивировано из оригинала 01.05.2012..
- Обучение с подкреплением и изучение моторных примитивов , Южная Каролина, США: USC CLMC Lab.
- Калинон, Сильвен, Интерактивная кинестетическая демонстрация преподаватель-ученик (тренер / тренер-стажер / клиент) , Швейц..
- Бентивенья, Даррин, Обучение аэрохоккею робота-гуманоида , JP: ATR, архивировано из оригинала 27 января 2008 г..
- Общественная деятельность по тесно связанным темам
- Технический комитет по взаимодействию и координации между человеком и роботом , IEEE Robotics and Automation, архивировано из оригинала 26июля2011 г..
- Технический комитет по обучению роботов , IEEE Robotics and Automation, архивировано из оригинала 26июля2011 г..
Видео
Робот, который учится готовить омлет:
- "Краткая версия", YouTube , FR.
- "Длинная версия", YouTube , FR.
Робот, который учится откручивать бутылку с колой:
- "Unscrew Coke Bottle", YouTube , DE.