Автор: Мартин Пеньяк (MARTIN PENIAK)
Перевод: Старицын Станислав
Меня всегда в основном интересовали гуманоидные роботы и технологии в этой сфере. В детстве это доставляло кучу проблем моим родителям. Я разбирал практически все электрические приборы в нашем доме в надежде понять основополагающие принципы заставляющие их работать.
Когда я подрос, это любопытство расширилось и я начал задавать вопросы о фундаментальных законах вселенной, о природе реальности и о нашем сознании. Я закончил инженерную школу в моей родной стране Словакии, и вскоре переехал в Англию где начал изучать вычисления и астрономию.
Сейчас я пишу диссертацию доктора наук в Университете Плимута для проекта iTalk (Интеграция Поведения и Языка в Гуманоидных Роботов). Проект iTalk (www.italkproject.org), подав заявку, выиграл в конкурсе, среди еще 31 проекта, гранд на сумму 4,7 миллионов фунтов стерлингов от проекта Европейской Комиссии «Седьмая Системная Программа» (The European Comission’s Seventh Framework Programme). Этот высоко амбициозный проект, под руководством моего начальника Профессора Анджело Кангелоси, нацеленный на развитие, биологически вдохновленными, искусственными системами, которые могут постепенно развивать свои когнитивные возможности через взаимодействие с окружающей их средой.
Основываясь на знаниях из неврологии, психологии развития, робототехники, лингвистики и других наук, мы считаем, что когнитивные навыки (например: память, размышление, символическое мышление, визуальное и аудитативное восприятие и т.д.) происходят из их морфологических и материальных свойств наших организмов. Проект iTalk подчеркивает роль олицетворения, используя один из наиболее сложных гуманоидных роботов в мире. Сложная гуманоидная роботизированная платформа под названием iCub примерно 105 см в высоту, весом около 20,3 кг, разработанная компанией RobotCub Consortium (www.robotcub.com).
Впервые я услышал об архитектуре CUDA от русского друга, который планировал использовать ее для ускорения обработки Симулятора Марсохода, который я до этого разработал во время нашего сотрудничества с ESA (Европейское Космическое Агенство). Я не мог больше уделять времени исследованию ESA, так как мне нужно было продолжать работу над моей диссертацией и начинать приступать к исследованию. Впрочем, однажды я нашел статью о реализации нервной сети с помощью CUDA и я был впечатлен тем, какой прирост производительности был достигнут. Днем позже, я показал статью моему коллеге Антони Морсу и после многих дискуссий мы сошлись во мнении, что обработка с помощью графических процессоров (GPU), это точно то, что нам было нужно в нашей лаборатории, так как большинство систем, которые мы использовали, могут быть параллелизированны.
Мы рассматривали OpenCL как альтернативу, но архитектура CUDA обеспечивала намного большую поддержку и интерфейс программирования приложений (API) был также хорош. Поэтому мы решили использовать CUDA, заказали шесть серверов с несколькими Tesla C1060 и видеокартами GeForce GTX470 и создали кластер суперкомпьютера, основанный на ОС Linux, за приемлемую цену и способный производить 12 Терафлоп (Триллион операций в секунду с плавающей запятой). Чтобы начать использовать эту мощность мы приступили к разработке программного обеспечения для CUDA под названием Aquila, которая была ориентирована на гуманоидного робота iCub для исполнения различных, биологически основанных, систем.
Для моей диссертации, я использовал Aquila чтобы развивать сложные искусственные нейронные связи, взяв за основу те, что в мозгу и использую их для управления роботом iCub в реальном времени. Эти искусственные нейронные связи в основном состоят из тысячей нейронов, которые связаны с множеством других нейронов, а также нескольких условий (соматосенсорных, визуальных, лингвистических и т.д.) для робота iCub через миллионы синаптических соединений. Многомерный ввод данных из разных сенсоров чувств, направленный на внутреннее отражение смысла в систему. Это достигалось за счет использования, так называемых, самоорганизовывающихся карт, которые близко походят на характерно организованную кору головного мозга. Часто достигая размеров в несколько тысяч нейронов, эти карты отражают оригинальную визуальные данные полученные через процесс применения специальных фильтров к миллионам пикселей. Помимо этой визуальной обработке, системе нужно работать с лингвистическими и соматосенсорными потоками данных во время выполнения миллионов вычислений, нужных, чтобы активировать сеть в каждые 50-100мс.
Архитектура CUDA ускоряет контроль активной нейронной сети в среднем в несколько сотен раз,а алгоритмы, ответственные за обучение iCub, показывают прирост производительности в 50 раз. Я разработал обе версии программы – и для CPU, и для GPU, но у меня не была завершена комплексная оптимизация, что со стороны архитектуры CUDA выполнялось очень просто - благодаря простейшей параллелизации кода для CPU и помогало достигать огромного ускорения, при использовании графических адаптеров (GPU).
Квантовые вычисления до сих пор находятся в зачаточной стадии и мне кажется, что массивная параллельная обработка с помощью GPU может стать способом, чтобы продвинуться в этой области, с тех времен как архитектура CPU оказалась просто непригодна для параллельных вычислений из-за потребления огромного количества энергии, а так же CPU не очень хорошо справлялись с задачей.
Комментариев нет:
Отправить комментарий