Управление роботом мыслями с Emotiv Insight

    image

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

    Если задуматься, то компьютер и телефон – ужасно неэффективные интерфейсы для получения нужной информации. Вы точно осознаете, что хотите узнать: например, текущий курс рубля к доллару. Нажимаете пальцами на определенные области экрана телефона с буквами, целясь каждый раз в нужные точки, после чего смотрите ответ.

    Гораздо прекраснее было бы мысленно произнести «Привет, Игорь!», сформулировать мысленно вопрос и получить ответ ухом/глазом/другим способом. Или таким же быстрым способом отправить сообщение другу. В общем, подключить интернет к мозгам.

    Раз это можно попробовать на практике уже сейчас, стоит поуправлять чем-то, посмотреть, насколько это удобно, и сделать выводы. Видео с результатами – в конце статьи.

    1. Входная идея
    2. Что нужно
    3. Собираем вместе
    4. Пробуем раз
    5. Пробуем два
    6. Три
    7. Выходные мысли


    Идея


    План вышел нехитрый:

    Шаг 1. Берем ЭЭГ-устройство, считывающее активность головного мозга.
    Шаг 2. Тренируем какой-то алгоритм, позволяющий с достаточной точностью определять мысленные команды. Пробуем несколько типов мысленных команд (об этом позже).
    Шаг 3. Подключаем к какой-либо движущейся штуке.
    Шаг 4. Пытаемся выполнить простое задание, например, проехать из точки А в точку Б.
    Шаг 5. Делаем из всего этого выводы, если пора. Если нет, то повторяем шаги 2 и 4.

    Да, подобные эксперименты и ранее проводились рядом специалистов: есть много тестов подхода по P300, позволяющего набирать текст мыслями (выходит очень точно, но долго), управлению различными протезами и другими устройствами. Ничего нового с научной точки зрения в текущем эксперименте не происходит, цель – попробовать мозговое управление лично и сделать из ощущений и размышлений вокруг BCI (brain-computer interface) некие выводы.


    Что нужно


    В качестве ЭЭГ девайса берем Emotiv Insight. Далеко не самый точный прибор с невысоким разрешением выстаиваемой электромагнитной карты, но достаточный для наших целей. Стоит $299, на эту модель почти всегда есть скидки, но проблема с доставкой в Россию: ее нет. Объясняется это не столько логистическими, сколько законодательными проблемами: ЭЭГ устройства являются медицинскими приборами с точки зрения таможенных правил РФ (с соответствующими последствиями).

    Прийти и забрать где-то по миру тоже нельзя, поэтому остается только заказывать в те близкие к России страны, в которые есть опция доставки: Польша, Израиль или что-то в этом роде. Ходят слухи, что продается и в Москве из-под полы, но с соответствующими наценками.

    image

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

    В качестве робота берем платформу Hicat.Livera. Построена на базе Arduino. По сути, это оно и есть, только с камерой, колесиками, лазером и небольшими доработками софта. Стоит порядка $100-$150, удобнее, наверное, заказывать через AliExpress, но мы заказали напрямую через сайт, хотя без проблем с доставкой не обошлось.

    image


    Собираем вместе


    По пунктам процесс соединения всего в тестовый стенд выглядел так:

    1. Устанавливаем нужный софт для Emotiv отсюда. Из всего набора нам нужен коннектор и Emotiv BCI.

    2. Подключаем Insight к компьютеру и тестируем соединение.

    3. Устанавливаем Node-RED. Это такая прекрасная штука, позволяющая удобно обрабатывать данные и сигналы. С помощью имеющегося огромного количества модулей вы можете за пару минут собрать какую-то утилиту: отправлять себе в телеграм оповещение о предстоящем дожде, обработать кучу сырых данных и всякое такое.

    4. Добавляем в Node-RED Emotiv Toolbox в качестве модуля. Вот тут описано, что это такое. Ставится за пару кликов.

    5. Собираем Hicat.Livera. Собирается он так себе: если все делать по инструкции, то аккумулятор будет постоянно отваливаться, один из саморезов блокирует повороты камеры и так далее. Тут нужно немного креативчика.

    6. Подключаем робота к компьютеру. Для этого не нужно никакого дополнительного софта, управляется он через WebSocket, достаточно быть в одной Wi-Fi сети. Правда, тут тоже не все так просто: оказалось, что не все файлы записаны на карту памяти производителем, поэтому пришлось разбираться, скачивать из репозитория и перезаписывать. В общем, классические блеск и нищета проектов кикстартера.

    7. Мастерим Flow в Node-RED. Берем сигналы от натренированных команд в Emotiv BCI, очищаем их от шума по порогу и отправляем полученное значение мощности роботу. Через треть секунды после каждого сигнала сбрасываем напряжение на моторах. Получилось вот так:

    image

    Саму карту для Node-RED можно скачать вот отсюда и импортировать в свой Flow.

    Далее остается только потренироваться и пробовать.


    Пробуем раз


    Робот может ехать вперед/назад, отдельно вращать каждое колесо, поднимать/опускать камеру и включать/отключать лазер. Тренироваться одновременно на 6-8 действиях сложно, поэтому первая попытка подразумевала три действия: ехать вперед, повернуть налево и повернуть направо.

    Качество подключения Церебры можно видеть на удобном мониторе. В случае с Insight важно, чтобы основной заушный датчик прилегал к скальпу очень плотно: если в нем будут помехи, то от других шести сенсоров сигнала не будет.

    image

    Далее – тренировка. Сначала самое сложное – записать спокойное и нормальное состояние сознания, без внешних раздражителей и мыслей. Кто владеет медитативными практиками – еще куда ни шло, но вот так сходу ни о чем совсем не думать совсем непросто. Алгоритм будет принимать эту запись за фоновую и искать отличия командных состояний от дефолтного.

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

    Каждый последующий сеанс обучения уточняет состояние модели, отслеживающей команды. По карте этой модели можно посмотреть, насколько сильно отличаются команды между собой: если сходство слишком велико (точки на радаре находятся рядом), то алгоритм с трудом будет понимать что вы имели в виду в каждом конкретном случае.

    image

    Основной вопрос при тренировке – что, собственно, думать? Осознанно мозгом мы можем делать две вещи: управлять мышцами и думать. Дело в том, что моторная кора, отвечающая за движения мышц, дает очень сильные помехи с точки зрения ЭЭГ. То есть если в качестве команды пытаться двигать конечностями, напрягать их или представлять, что они функционируют, то это сгенерирует сплошной неразборный шум на такой общей точности, как у Insight модели.

    Остается думать. Тут большое раздолье: проговаривать мысленно слова, думать о каком-то ощущении, представлять себя где-то, воображать движение робота в нужном направлении и т.д.

    Для начала было выбрано вербальное направление: проговаривать внутренним голосом определенную фразу для каждой команды.

    Результаты этого подхода оказались неудовлетворительными: да, команды при разных настройках чувствительности определенно выполнялись, но контролировать их оказалось совершенно невозможным. Есть отчетливая грань между старанием выполнения команд и их отсутствием: в первом случае робот что-то делает, во втором практически нет, но заставить ехать его хотя бы в примерном направлении не удалось.


    Пробуем два


    Далее возникла мысль попробовать следующие направления:

    1. Думать о каком-то ярком моменте, например, лежишь на пляже и тепло греет солнце.
    2. Слушать разные звуковые сигналы/отрывки музыки.
    3. Представлять холод/тепло в определенных частях определенных конечностей.
    4. Пытаться имитировать приподнятое и плохое настроения.
    5. Слушать голосовые команды разных людей с разных сторон (для увеличения дифференциации сигналов добавлением пространственного ощущения).

    Результаты были интересными: например, голос одного человека рядом с субъектом эксперимента приводил к движению робота в одном направлении, а другого человека – в другом. При этом было неважно, что говорят эти люди.

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


    Три


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

    Результат получился следующим:


    Вот так просто доехать из точки А в точку Б не удается, но после ряда тренировок примерный результат есть.


    Выходные мысли


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

    В качестве массового интерфейса: купил, натянул на голову и используешь – это не работает. У кого-то из нас сразу получалось добиваться четкого выполнения команд, кому-то не удавалось совершенно ничего даже после длительных тренировок. Процесс слишком индивидуальный и слишком сложно объяснимый для изложения в инструкции к пользованию. Кроме того, на следующий день после успешного управления повторить тоже самое удается с трудом: состояние сознания уже чем-то отличается.

    Гораздо эффективнее, на мой взгляд, применять для «мысленного» управления устройства, считывающие внутренний голос через изменение потенциалов мышц нижней челюсти и шеи. Когда мы говорим сами с собой, на мышцы речевого аппарата подаются нервные сигналы, они совсем чуть-чуть двигаются. Если их мониторить чувствительными датчиками, то практически без обучения можно диктовать внутренним голосом текст.

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

    image

    По сути, однако, это то же речевое управление, но беззвучное. Проблема же всех речевых интерфейсов – в отсутствии понимания палитры команд. Если мы смотрим на сайт или приложение, то видим кнопочки, подписи к ним и понимаем, куда можно тыкнуть. В случае же с голосовым помощником понимания, что именно можно спросить – нет, возможные команды надо выучить наизусть или каждый раз слушать длинные перечни возможных тем диалога. Все это вместе с неидеальным распознаванием речи приводит к тому, что сейчас мы пользуемся только стандартным набором команд голосовых помощников: позвони Софоклу, поставь таймер на пятьсот лет, напомни заехать на работу.

    Так что на текущий момент имеем следующее: а) если и управлять чем-то так, чтобы это выглядело круто, но при этом и получалось, то это только считывание внутреннего голоса (надо будет сделать эксперимент и тут) и б) конкуренции графическому интерфейсу пока нет даже и близко.

    Касательно второго пункта есть технологии в области транскраниальной магнитной стимуляции. Если коротко: если сфокусировать что-то наподобие микроволновки на зрительной коре, то мы будем видеть фосфены – светящиеся точки и эффекты, которых глаз не видит. Такие устройства могут рисовать достаточно точные знаки, например, буквы в пространстве. Эти процедуры, как правило, вызывают сильные головные боли и тошноту, не очень рекомендуются для экспериментов, но в теории возможно рисовать интерфейс перед лицом как у железного человека без линз и очков. Правда можно использовать линзы и очки, но об этом, возможно, в другой раз.

    На обложке фото, снятое Road to VR к статье об экспериментах компании Valve в области BCI.

    Комментарии 10

      –3
      Считывать «внутренний голос» тоже самое как в представлениях фокусников считываются мысли при помощи специально подобранных ответов помощника. На самом деле никакого чтения мыслей здесь не происходит.
      Завязывайте Вы уже с чтением мыслей через ЭЭГ и супердатчиками.
        +3

        Спасибо, что попробовали и поделились. Теперь мне не придется покупать emotiv :-)
        Периодически появлялась идея попробовать такое, каждый раз останавливала цена и лень. И интуитивно казалось, что результаты будут похожими — мало электродов на девайсе, ну и подозрение, что у всех мозги разные, не дадут добиться вау-эффекта.

          +1

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

            0
            Как искать (по каким словам) и сколько оно там примерно стоит?
              0

              Искать можно по "eeg" или в категории brainlink toys, от 80$ цены. Еще по "tgam" можно найти модули для разработки своих устройств.

            +1

            Что касается работающего BCI, мне он видится как имплант куда-то или в моторную кору, или в речевые области, который ставится ребенку в достаточно раннем возрасте, некий классический нейроинтерфейс как в Матрице. Каким-то образом визуализируется для обратной связи, на подключенном планшете что-то рисуется например. И ребенок учится им управлять вместе с остальными мышцами, пока нейропластичность высокая. В итоге получается такая виртуальная клавиатура, в нее думаешь слова, а они печатаются, нечто похожее происходит при слепом десятипальцевом наборе.
            Куча моральных моментов, для отладки надо опыты на детях ставить, рост тканей эта штука должна учитывать, не отторгаться всю жизнь, в общем не факт что возможно.
            Ну или по Курцвейлу, наноробот к каждому нейрону и считываем/задаём возбуждение всех нейронов. Вообще фантастика, но кто знает…
            А внешних электродов маловато для полноценного разнообразного вывода управляющих сигналов, как мне кажется.

              0
              В принципе рабочий метод, проще мозг подстроить под девайс, чем девайс под разные мозги.
              Посмотрим что у меня получится с полноценным ЭЭГ и нейронками. Если будут приличные результаты, в апреле напишу статейку.
                0
                В первую очередь мешает глиоз: вокруг электродов растут глиальные клетки, из-за чего сигнал ухудшается. Второй проблемой является окисление, но с ним в теории ещё можно как-то спариваться. Из-за этих двух причин сейчас все инвазивные нейроинтерфейсы работают года два максимум и то, если повезет.
                Возраст тут не проблема. Нейропластичность и в зрелом возрасте хороша. Если тебе сейчас вживить в голову электрод, подключив его к одному единственному нейрону, и дать визуальную обратную связь, то ты научишься активностью этого нейрона управлять.
                0

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

                  0

                  Главное — не путать научение произвольно управлять любым видом исходно непроизвольной активностью организма при помощи биологической обратной связи — и "чтение мыслей". Особенно толкают на такую путаницу варианты, когда активность организма представлена электорфизиологической активностью мозга или, как в данной статье, микродвижениями артикуляционный мышц. Есть такой феномен: человек научается управлять непроизвольными процессами в своем организме, если сделать эти процессы видимыми, а тем более — поставить в зависимость от них видимые полезные процессы в технических устройствах. Т.е. управлять этим техническими устройствами. Но чтение мыслей здесь ни при чем. Путаница возникает во многом потому, что повсеместно распространяется ложная точка зрения, что мозговые процессы и мысли — это одно и то жею

                  Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                  Самое читаемое