Программирование путем демонстрации
В информатике . программирование путем демонстрации ( PbD ) — это метод разработки конечного пользователя , позволяющий обучать компьютер или робот новому поведению путем демонстрации задачи для передачи напрямую, а не программирования ее с помощью машинных команд
Термины «программирование на примере» (PbE) и «программирование путем демонстрации» (PbD) появились в исследованиях по разработке программного обеспечения еще в середине 1980-х годов. [1] определить способ определения последовательности операций без необходимости изучения языка программирования. Обычное различие между этими терминами в литературе состоит в том, что в PbE пользователь предоставляет прототипный продукт компьютерного выполнения, например строку желаемых результатов запроса ; в то время как в PbD пользователь выполняет последовательность действий, которые должен повторить компьютер, обобщая ее для использования в различных наборах данных.
Эти два термина сначала не различались, но затем PbE, как правило, использовался в основном исследователями-разработчиками программного обеспечения, а PbD, как правило, использовался исследователями робототехники. Сегодня PbE относится к совершенно другой концепции, поддерживаемой новыми языками программирования, похожими на симуляторы. Эту структуру можно противопоставить синтезу байесовских программ .
Программирование роботов путем демонстрации
[ редактировать ]Парадигма PbD в первую очередь привлекательна для индустрии робототехники из-за затрат, связанных с разработкой и обслуживанием программ для роботов. В этой области оператор часто имеет неявные знания о задаче, которую необходимо решить (он/она знает, как это сделать), но обычно не имеет навыков программирования (или времени), необходимых для перенастройки робота. Таким образом, демонстрация того, как выполнить задачу на примерах, позволяет освоить навык без явного программирования каждой детали.
Первые стратегии PbD, предложенные в робототехнике, были основаны на методах обучения , руководства или воспроизведения, которые заключались в следующем: в основном это перемещение робота (через специальный интерфейс или вручную) через набор соответствующих конфигураций, которые робот следует принимать последовательно (положение, ориентацию, состояние захвата). Затем этот метод постепенно совершенствовался. основное внимание уделяется дистанционному управлению и использованию различных интерфейсов, таких как зрение.
Однако в этих методах PbD по-прежнему использовалось прямое повторение, что было полезно в промышленности только при создании сборочной линии, использующей одни и те же компоненты продукта. Чтобы применить эту концепцию к продуктам с различными вариантами или применить программы к новым роботам, решающим моментом стал вопрос обобщения. Для решения этого вопроса предприняты первые попытки обобщения навыка. в основном основывались на помощи пользователя посредством вопросов о намерениях пользователя. Затем были использованы различные уровни абстракций. предложено решить проблему обобщения, в основном дихотомизированную в методах обучения на символическом уровне или на уровне траектории.
Развитие роботов-гуманоидов естественным образом вызвало растущий интерес к программированию роботов путем демонстрации. Поскольку человекоподобный робот по своей природе должен адаптироваться к новым условиям, важен не только внешний вид человека, но и алгоритмы, используемые для его управления, требуют гибкости и универсальности. Из-за постоянно меняющейся среды и огромного разнообразия задач, которые должен выполнять робот, от робота требуется способность постоянно осваивать новые навыки и адаптировать существующие навыки к новым контекстам.
Исследования в области PbD также постепенно отходили от своей первоначальной чисто инженерной точки зрения и переходили к междисциплинарному подходу, используя идеи нейробиологии и социальных наук для имитации процесса имитации у людей и животных. С ростом внимания к этому направлению работ в робототехнике понятие программирования роботов путем демонстрации (также известное как RPD или RbD) также постепенно заменялось более биологическим названием « Обучение путем имитации» .
Нейронно-импринтированные стабильные векторные поля (NiVF)
[ редактировать ]Нейронно-импринтированные стабильные векторные поля [2] (NiVF) был представлен как новая схема обучения на ESANN 2013 и показывает, как впечатывать векторные поля в нейронные сети, такие как машины экстремального обучения (ELM), гарантированно стабильным образом. Кроме того, статья получила награду за лучшую студенческую работу. Сети представляют собой движения, в которых асимптотическая устойчивость обеспечивается посредством ограничений, выведенных из теории устойчивости Ляпунова. Показано, что этот подход успешно выполняет стабильные и плавные движения «точка-точка», усвоенные на основе движений руки человека.
Также можно изучить кандидата Ляпунова, который используется для стабилизации динамической системы. [3] По этой причине необходима схема нейронного обучения, которая оценивает стабильные динамические системы на основе демонстраций, основанных на двухэтапном процессе: сначала оценивается управляемый данными кандидат на функцию Ляпунова. Во-вторых, стабильность обеспечивается посредством нового метода учета локальных ограничений в нейронном обучении. Это позволяет изучать стабильную динамику, одновременно сохраняя точность динамической системы и надежно генерируя сложные движения.
Диффеоморфные преобразования.
[ редактировать ]Диффеоморфные преобразования оказываются особенно пригодными для существенного повышения обучаемости динамических систем роботизированных движений. Стабильная оценка динамических систем (SEDS) — интересный подход к изучению инвариантных ко времени систем для управления движениями роботов. Однако это ограничивается динамическими системами только с квадратичными функциями Ляпунова. Новый подход Тау-СЭДС [4] преодолевает эти ограничения математически элегантным способом.
Параметризованные навыки
[ редактировать ]После демонстрации задачи человеком-оператором траектория сохраняется в базе данных. Облегчение доступа к необработанным данным реализуется с помощью параметризованных навыков. [5] Навык запрашивает базу данных и генерирует траекторию. Например, сначала в базу данных движений отправляется навык «открытый захват (медленный)», и в ответ предоставляется сохраненное движение робота-манипулятора. Параметры навыка позволяют изменять политику для выполнения внешних ограничений .
Навык — это интерфейс между названиями задач, заданными на естественном языке , и лежащим в их основе пространственно-временным движением в трехмерном пространстве, состоящем из точек. Отдельные навыки можно объединить в задачу для определения более длинных последовательностей движений с точки зрения высокого уровня. Для практического применения различные действия сохраняются в библиотеке навыков . Для дальнейшего повышения уровня абстракции навыки можно преобразовать в примитивы динамического движения (DMP). Они на лету генерируют траекторию движения робота, которая на момент демонстрации была неизвестна. Это помогает повысить гибкость решателя. [6]
Нероботизированное использование
[ редактировать ]Для конечных пользователей, желающих автоматизировать рабочий процесс в сложном инструменте (например, Photoshop ), наиболее простым случаем PbD является средство записи макросов .
См. также
[ редактировать ]- Программирование на примере
- Преднамеренное программирование
- Индуктивное программирование
- Устройство записи макросов
- Обучение под присмотром
Ссылки
[ редактировать ]- ^ Халберт, Дэн (ноябрь 1984 г.). «Программирование на примерах» (PDF) . Калифорнийский университет в Беркли (докторская диссертация) . Проверено 28 июля 2012 г.
{{cite journal}}
: Для цитирования журнала требуется|journal=
( помощь ) - ^ А. Лемм, К. Нойман, Р. Ф. Рейнхарт, Дж. Дж. Стейл (2013). «Нейронно-импринтированные стабильные векторные поля» (PDF) . Учеб. Европа. Симп. Об искусственных нейронных сетях : 327–332.
{{cite journal}}
: CS1 maint: несколько имен: список авторов ( ссылка ) - ^ А. Лемм, К. Нейман и Дж. Дж. Стейл (2013). «Нейронное обучение стабильных динамических систем на основе управляемых данными кандидатов Ляпунова» (PDF) . Международная конференция IEEE/RSJ по интеллектуальным роботам и системам , 2013 г. стр. 1216–1222. дои : 10.1109/IROS.2013.6696505 . ISBN 978-1-4673-6358-7 . S2CID 1612856 .
{{cite book}}
: CS1 maint: несколько имен: список авторов ( ссылка ) - ^ К. Нойманн и Джей Джей Стейл (2015). «Изучение движений роботов с помощью устойчивых динамических систем при диффеоморфных преобразованиях» (PDF) . Робототехника и автономные системы . 70 (С): 1–15. дои : 10.1016/j.robot.2015.04.006 .
- ^ Первез, Аффан и Ли, Донхей (2018). «Изучение примитивов динамического движения, параметризованных задачами, с использованием смеси GMM» (PDF) . Интеллектуальная сервисная робототехника . 11 (1). Спрингер: 61–78. дои : 10.1007/s11370-017-0235-8 . S2CID 3398752 .
{{cite journal}}
: CS1 maint: несколько имен: список авторов ( ссылка ) - ^ Ализаде, Тохид; Садуанов, Батырхан (2017). «Программирование роботов путем демонстрации выполнения нескольких задач в общей среде». Международная конференция IEEE 2017 по мультисенсорному слиянию и интеграции интеллектуальных систем (MFI) . IEEE. стр. 608–613. дои : 10.1109/mfi.2017.8170389 . ISBN 978-1-5090-6064-1 . S2CID 40697084 .
- Сайфер, Аллен (1993), Посмотрите, что я делаю: программирование путем демонстрации , Дэниел К. Халберт, MIT Press, ISBN 978-0-262-03213-1
- Либерман, Генри (2001), Ваше желание - моя команда: программирование на примере , Бен Шнейдерман, Морган Кауфманн, ISBN 978-1-55860-688-3
Внешние ссылки
[ редактировать ]Обзоры статей
[ редактировать ]- Биллард, Од (2008), «Программирование роботов путем демонстрации», Справочник Springer по робототехнике (PDF) , С. Калинон, Р. Диллманн и С. Шаал, MIT Press, стр. 1371–1394, doi : 10.1007/978-3 -540-30301-5_60 , ISBN 978-3-540-23957-4 .
- Шааль, Стефан; Эйсперт, Ауке; Биллард, Од (2003), «Вычислительные подходы к моторному обучению путем имитации», Философские труды Лондонского королевского общества. Серия B: Биологические науки , 358 (1431): 537–547, doi : 10.1098/rstb.2002.1258 , PMC 1693137 , PMID 12689379
- Роботы, имитирующие людей , Синтия Бризил и Брайан Скасселлати, Тенденции в когнитивных науках, 6:1, 2002, стр. 481–87.
- Биллард, А., «Имитация», в Арбибе, Массачусетс (редактор), Справочник по теории мозга и нейронным сетям , MIT Press, стр. 566–69 .
- Шаал, С. (1999), «Является ли имитация обучением пути к гуманоидным роботам?», Тенденции в когнитивных науках (PDF) .
Специальные выпуски в журналах
[ редактировать ]- Транзакции IEEE по системам, человеку и кибернетике , апрель 2007 г., 37:2 .
- RSJ Advanced Robotics , вып. 21, номер 13 .
- Нейронные сети , Эльзевир .
- Робототехника и автономные системы (PDF) , Elsevier, 2006 г.
Ключевые лаборатории и люди
[ редактировать ]- Методы машинного обучения для программирования роботов путем демонстрации , Лозанна, Вирджиния, Швейцария: EPFL LASA, заархивировано из оригинала 1 мая 2012 г.
- Обучение с подкреплением и изучение двигательных примитивов , Южная Каролина, США: Лаборатория USC CLMC .
- Калинон, Сильвен, Интерактивная кинестетическая демонстрация учитель-ученик (тренер/тренер-стажер/клиент) , CH .
- Бентивенья, Даррин, Обучение аэрохоккею робота-гуманоида , JP: ATR, заархивировано из оригинала 27 января 2008 г.
- Общественная деятельность по тесно связанным темам
- Технический комитет по взаимодействию и координации человека и робота , IEEE Robotics and Automation, заархивировано из оригинала 26 июля 2011 г.
- Технический комитет по обучению роботов , IEEE Robotics and Automation, заархивировано из оригинала 26 июля 2011 г.
Видео
[ редактировать ]Робот, который учится готовить омлет:
Робот, который учится откручивать бутылку с колой:
- «Открути бутылку из-под кока-колы», YouTube , DE .