Возьмите коннектом червя и пересадите его в виде программного обеспечения в робота Lego Mindstorms EV3 — что будет дальше?
Это глубокий и давний философский вопрос. Мы всего лишь сумма наших нейронных сетей. Конечно, если вы работаете с ИИ, вы принимаете ответ как должное, но пока кто-то не построит человеческий мозг и не включит его, у нас действительно нет конкретного примера принципа в действии.
KDS444, модифицированный Nnemo
Нематодный червь Caenorhabditis elegans (C. elegans) крошечный и имеет всего 302 нейрона. Они полностью сопоставлены, и проект OpenWorm работает над созданием полной симуляции червя в программном обеспечении. Один из основателей проекта OpenWorm, Тимоти Басбис, взял коннектом и реализовал объектно-ориентированную нейронную программу.
Модель точна в своих соединениях и использует UDP-пакеты для запуска нейронов. Если два нейрона имеют три синаптических соединения, тогда, когда первый нейрон запускает, UDP-пакет отправляется второму нейрону с полезной нагрузкой «3». Нейроны адресуются по IP-адресу и номеру порта. В системе используется алгоритм интеграции и запуска. Каждый нейрон суммирует веса и срабатывает, если он превышает пороговое значение. Аккумулятор обнуляется, если в окне 200 мс не поступает сообщение или если нейрон срабатывает. Это похоже на то, что происходит в реальной нейронной сети, но не совсем.
Программное обеспечение работает с датчиками и эффекторами, предоставленными простым роботом LEGO. Датчики опрашиваются каждые 100 мс. Например, датчик сонара на роботе подключен как нос червя. Если что-то находится в пределах 20 см от «носа», то на сенсорные нейроны сети отправляются UDP-пакеты.
Та же идея применяется к 95 двигательным нейронам, но они отображаются из двух рядов мышц слева и справа на двигатели слева и справа на роботе. Сигналы двигателя накапливаются и применяются для управления скоростью каждого двигателя. Моторные нейроны могут быть возбуждающими или тормозящими, и используются положительные и отрицательные веса.
И результат?
Утверждается, что поведение робота аналогично наблюдаемому C. elegans. Стимуляция носа остановила поступательное движение. Прикосновение к передним и задним сенсорным датчикам заставляло робота двигаться вперед и назад соответственно. Стимуляция датчика еды заставляла робота двигаться вперед.
Посмотрите видео, чтобы увидеть это в действии.
Ключевым моментом является то, что для создания поведения не требовалось никакого программирования или обучения. Коннектом червя был нанесен на карту и реализован как программная система, и его поведение проявилось.
Конэктом может состоять только из 302 нейронов, но он самостимулирует, и трудно понять, как он работает, но это так.
В настоящее время модель коннектома переносится на Raspberry Pi и строится автономный робот Pi. Предполагается, что он может найти практическое применение в качестве своего рода мобильного датчика — для изучения окружающей среды и представления результатов. Учитывая ограниченный диапазон поведения, он вряд ли будет иметь практическую ценность, но, учитывая большее количество нейронов, это может измениться.
Робот C. elegans в другом корпусе или что-то совершенно новое?
Это живая?
Это вопросы к философам, но они предполагают, что призрак в машине — это просто машина.
Нам, исследователям ИИ, все еще нужно знать, масштабируется ли принцип реализации коннектома.