Программирование со «смайлами»

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

Время чтения: 5 минут
Программирование со «смайлами»

Исследователи лаборатории медиа при Массачусетском технологическом институте — MIT Media Laboratory — разработали систему, которая позволяет детям создавать программы для интерактивного робота, нанося наклейки на ламинированные листы бумаги. Этот способ не только учит детей принципам программирования, но и может быть использован для исследования, которое покажет, какие вычислительные понятия и в каком возрасте дети способны осознанно использовать.

В начале марта 2015 года на международной конференции, посвящённой взаимодействию людей и роботов (10th ACM/IEEE International Conference on Human-Robot Interaction), исследователи представили результаты использования новой системы программирования для детей в возрасте от четырёх до восьми лет. Мишель Гордон, специалист медиа-искусства и наук, ведущий автор новой разработки, так определяет её особенности:

Мы хотим, чтобы наша разработка существовала скорее не в контексте цифрового мира, а в контексте мира материального. Это песочница для изучения вычислительных концепций, но прежде всего — это песочница, которая находится в мире детства.

В своей работе исследователи использовали робота под названием Dragonbot, созданного специалистами отделения MIT Media Lab — Personal Robot Group — под руководством профессора медиа-искусств и наук Синтией Бризил.

Dragonbot — робот на основе облачного программирования, созданный для того, чтобы исследовать длительные взаимодействия между человеком и роботом. Он управляется с помощью мобильного телефона на системе Android, дисплей которого превращается в «лицо» программируемой игрушки. С помощью телефона это электронное создание подключается к сети для обмена данными с своими «собратьями». Чем больше ребёнок общается с Драгонботом, тем «умнее» становится последний. «Личность» робота сохраняется в облачном хранилище, поэтому ребёнок может взаимодействовать с ним и как с виртуальным персонажем.

Dragobot первого поколения. Источник: Vimeo

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

Программирование в данном случае связано с определённым социальным и эмоциональным взаимодействием. Создавая программу, дети изучают на самом деле отношения между людьми. Мы не ошибёмся, если скажем, что эта система применяет вычислительные принциповы в отношении социального мира,

— объясняет Эдит Акерман, психолог, приглашённый в группу разработчиков под началом Синтии Бризил.

Уроки на стикерах

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

Исследователи разрабатывают систему компьютерного зрения, которая позволила бы детям программировать робота, просто «показывая» ему бумагу с наклейками. Но пока для надёжности один из исследователей должен вводить вручную то, что придумали дети, с помощью планшета.

Чтобы дать системе новую отдельную команду, нужно представить роботу лист с наклейкой-ответом. Робот сразу готов исполнить её. Когда нужно ввести новую цепочку действий, роботу «показывают» лист с этой цепочкой, и он будет готов выполнить её при соответствующем стимуле.

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

Смена парадигмы

Программирование с помощью наклеек придумано для того, чтобы поощрять новый способ мышления в создании программ, такой, который больше соответствует реальности XXI века.

Системы, которые мы программируем сегодня, отличаются от тех, которые были 20 или 30 лет назад. Они могут иметь множество входов и выходов, сложную структуру контента. Мобильный телефон, например, может принимать данные по Wi-Fi и сотовой связи, проигрывать видео и передавать звук по Bluetooth, при этом у него может быть включен таймер, чтобы вы не пропустили время, когда приготовится ваш обед.

Мишель Гордон объясняет, что, будучи аспирантом кафедры компьютерных наук в институте Вейцмана в Израиле, она работала со своим руководителем Девидом Харелем над новой парадигмой программирования, которая называется «программирование на основе сценария»:

Идея состоит в том, чтобы писать код в виде маленьких сценариев, которые соединялись бы вместе одним двигателем. Вы можете думать об этом как о правилах с триггерами и действиями.

Эдит Аккерман и Мишель Гордон с роботом, который активно участвует в их исследованиях

Новая система, которую создают Гордон и ей коллеги в MIT Media Lab, может использоваться, чтобы объяснить детям традиционные, последовательные способы программирования. Но при этом она приспособлена и для программирования на основе сценариев.

Обычно мы думаем, как писать программу, только когда создаём конкретный продукт. В данном случае я подумала: а почему бы не подумать об этом раньше?

— говорит Мишель Гордон.

И, пока дети с удовольствием играют в своей «песочнице», придумывая задания для смешного робота, специалисты из MIT Media Lab ищут ответы на вопросы, которыми большинство ещё не успело задаться.

Источник: newsoffice.mit.edu

Статьи о том, как и где научиться программировать роботов: iRobot учит программированию, ИТМО: курсы по робототехнике.    
Нашли опечатку? Выделите фрагмент и нажмите Ctrl+Enter.
20 марта 2015, 19:00

Оставайтесь в курсе


У вас есть интересная новость или материал из сферы образования или популярной науки?
Расскажите нам!
Присылайте материалы на hello@newtonew.com
--